كيف يمكنني إعادة توجيه الطلبات من القضبان إلى نطاق فرعي PHP؟

StackOverflow https://stackoverflow.com/questions/2100970

سؤال

لدي موقع ، على سبيل المثال ، example.com ، وهو PHP. أقوم بتحويله إلى القضبان ، ولكن هناك قضايا قيمتها ثلاث سنوات (مثل قضايا المجلات) لا أريد تحديثها. لحسن الحظ ، يبدو أنني اخترت تنسيق URL مفيدًا ، أي. تبدأ جميع المشكلات برقمين ، ثم اسم الملف في معظم الحالات

example.com/00/author-name/index.php
example.com/19/author-name.php

أرغب في إعادة التوجيه عبر 301 جميع طلبات ملفات PHP هذه

Archive.example.com

وجعل المستوى الأعلى مثالًا على سبيل المثال

النطاق الفرعي على Dreamhost ، وسيذهب المستوى الأعلى إلى Heroku. (لذلك هذا ليس جزءًا من السؤال.) شكرًا.

هل كانت مفيدة؟

المحلول 2

ActionController::Routing::Routes.draw do |map|

  map.connect '20/:name', :controller => :twenty, :action => :show
  map.resources :twenty, :as => '20', :only => [:index, :show] 

  map.connect ':url', :controller => :archive, :action => :show,
                     :requirements => { :url => /(([0-1]){1}([0-9]){1})(.*)/ }

  map.root :controller => :pages, :action => :cover  

  map.connect ':controller/:action/:id'
  map.connect ':controller/:action/:id.:format'
end

لأي طلب يأتي إلى المجال/00 إلى المجال/19 I إعادة توجيه في وحدة التحكم

redirect_to "http://archive.example.com/#{params[:url]}", :status => 301

نصائح أخرى

هذه الطريقة هي الأسهل وبمكافأة إضافية لإرسال رأس 301. هذا جيد حقًا لتحسين تصنيف كبار المسئولين الاقتصاديين !!!

<?php 
$uri = $_SERVER['REQUEST_URI']; // Gets the user's current URI
$redirect = array("/00/author-name/index.php", "/19/author-name.php"); //Define your 301 redirect uri

// Here's the meet and greet of your problem:
if (in_array($uri, $redirect)) {
    header("HTTP/1.1 301 Moved Permanently");
    header("Location: archive.example.com");
}
?>

تأكد من الحصول على هذا الرمز في بداية البرنامج النصي أو bootstrap

من خلال هذه الطريقة ، لا تقوم فقط بإعادة توجيه جمهورك وفي الوقت نفسه ، فأنت تخطر Google (أو أي محرك بحث) للتغيير. هذا سيجعل جوجل تحديث فهرسه في أي وقت من الأوقات.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top