Apache переписать с субдомена на www, но сохранить все постоянные ссылки - PullRequest
5 голосов
/ 26 октября 2011

Я исследовал это около 2 часов, и хотя большинство тем схожи, ни одна не объяснила, как делать то, что я хотел бы сделать.

Я беру блог, который имеет структуру blog.domain.com, и перемещаю его на www.domain.com/blog/. Мне нужно сохранить постоянную ссылку на сообщение в блоге, когда я перенаправляю, чтобы ...

blog.domain.com/here-is-a-blog-post/

должно стать:

www.domain.com/blog/here-is-a-blog-post/

Перепробовав много вещей, это последнее, что я попробовал, и в итоге ничего не изменилось. Значение blog.domain.com просто сидит на blog.domain.com/

RewriteEngine on
RewriteCond %{HTTP_HOST} ^xyz\.domain\.com$
RewriteRule ^/(.*) http://domain.com/$1 [redirect,last]

Вот запись из моего файла httpd.conf.

<VirtualHost xxx.xxx.xxx.xxx:80>
    SSLEngine off
    SuexecUserGroup apache apache
    ServerName      www.domain.com
    ServerAlias     domain.com
    ServerAlias     blog.domain.com
    ServerAdmin    webmaster@domain.wiredground.com
    DocumentRoot   /home/domain/www/domain.wiredground.com
    ScriptAlias    /cgi-bin/ "/home/domain/www/cgi-bin/"
    <Directory /home/domain/www/cgi-bin>
        AllowOverride None
        Options ExecCGI
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

Может кто-нибудь помочь?

Спасибо!

1 Ответ

4 голосов
/ 26 октября 2011

используйте это:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^blog\.domain\.com [NC]
RewriteRule (.*) http://domain.com/blog/$1 [R=301,L]
...