cakephp .htaccess с несколькими доменами - PullRequest
1 голос
/ 30 сентября 2010

У меня установлены файлы Cakephp .htaccess, как в поваренная книга , и все работает нормально.

Мой веб-сайт в настоящее время имеет несколько доменов, каждый из которых указывает на один и тот же сайт (например, www.site.com, www.site.co.uk). Я хотел бы настроить правило так, чтобы запросы к www.site.co.uk/page были перенаправлены на www.site.com/page и т. Д.

У меня проблемы с получением обоих правил для совместной работы. Кто-нибудь может мне помочь?


ИЗМЕНЕНО ДЛЯ ВКЛЮЧЕНИЯ ДАЛЬНЕЙШИХ ДЕТАЛЕЙ:

Вот файл .htaccess в моем веб-корне:

<IfModule mod_rewrite.c>
    Options +FollowSymlinks
    RewriteEngine on

    # Force domain to be www.site.com
    RewriteCond %{HTTP_HOST} !^www\.site\.com$
    RewriteRule ^(.*)$ http://www.site.com/$1 [R=permanent,NC]

    # For CakePHP   
    RewriteCond %{HTTP_HOST} ^www\.site\.com$   
    RewriteRule    ^(.*)$ app/webroot/$1    [NC]
</IfModule>

У меня также есть отдельное приложение CakePHP в подкаталоге: tbgroup. Вот файл .htaccess (tbgroup / .htaccess):

<IfModule mod_rewrite.c>
   RewriteEngine on

   # For CakePHP
   RewriteRule    ^(.*)$ app/webroot/$1    [NC]
</IfModule>

Все работает нормально: www.site.co.uk перенаправляется на www.site.com, www.site.co.uk/page перенаправляется на www.site.com/page. CakePHP работает отлично. Единственная проблема заключается в том, что www.site.co.uk/tbgroup не перенаправляется на www.site.com/tbgroup - он остается как www.site.co.uk/tbgroup (и CakePHP работает нормально).

Попробуйте, если хотите, на живом сайте (www.site.com или www.site.co.uk).

1 Ответ

1 голос
/ 30 сентября 2010

Я полагаю, что вы указали ответ в ссылке на постоянное перенаправление в своем вопросе.

Это действительно не связано с cakephp. Это просто проблема переписывания модов. Вы поместили этот код в свой файл .htaccess (в / app / webroot)

rewritecond %{http_host} ^(www.)?site.co.uk [nc]
rewriterule ^(.*)$ http://site.com/$1 [r=301,nc]
...