mod_rewrite добавить поддомен к URL - PullRequest
0 голосов
/ 16 декабря 2011

Я хочу добавить поддомен «архивов» к URL-адресам, по которым щелкают, чтобы они могли перейти на новый сайт архивов вместо обычного сайта. Вы можете посетить сайт по номеру http://archives.thegatepost.com и почувствовать, что я хочу сделать.

  1. Пользователь заходит на сайт по адресу: # http://archives.thegatepost.com/archived06.html
  2. Пользователь нажимает на ссылку для просмотра: # http://www.thegatepost.com/news/GP_pgs1-4.pdf
  3. Переписано: # http://archives.thegatepost.com/news/GP_pgs1-4.pdf

    • Эту возможность можно выполнить в файле .htaccess

    • Не беспокойтесь о 301 или что-то подобное. Если это можно сделать SEO дружественным, тем лучше, если не без потерь.

Я пытался Apache mod_rewrite домен на поддомен? , и он не работает:

RewriteEngine On

RewriteCond %{http_host} ^thegatepost.com/archives [nc]
RewriteRule ^(.*)$ http://www.thegatepost.com/archives/$1 [R=301,NC]

RewriteCond %{HTTP_HOST} ^www\.thegatepost\archives\.com$ [NC]
RewriteRule ^archives/([a-z0-9\-_\.]+)/?(.*)$ http://$1.thegatepost.com/archives/$2 [QSA,NC,R,L]

1 Ответ

0 голосов
/ 16 декабря 2011

Попробуйте выполнить следующее в файле .htaccess в корневой папке www.thegatepost.com домена

RewriteEngine on
RewriteBase /

#if request on www.gatepost.com
RewriteCond %{HTTP_HOST} ^www\.thegatepost\.com$ [NC]
#and for a resource in the /news/ directory
RewriteCond %{REQUEST_URI} ^/news/ [NC]
#redirect them to same resource on the archives.thegatepost.com
RewriteRule (.*) http://archives.thegatepost.com/$1 [L,R=301]
...