mod_rewrite для (под) доменов и неправильных URL CakePHP - PullRequest
0 голосов
/ 13 февраля 2012

Я на хостинге, где я переписываю свои домены в их папки:

www.domain.com -> domains / domain.com / www

Я использую следующиеhtaccess в корне документа

Options +FollowSymLinks +Indexes
RewriteEngine On 

# www->non-www
RewriteCond %{HTTP_HOST} ^www\.([a-z0-9-.]+)$ [NC]
RewriteRule (.*) http://%1/$1 [R=301,QSA,L]

# www
RewriteCond %{HTTP_HOST} ^([a-z0-9-]+)\.([a-z]+)$ [NC]
RewriteCond $0 !^domains/
RewriteRule (.*) /domains/%1.%2/www/$1 [L]

#non-www
RewriteCond %{HTTP_HOST} ^([a-z0-9-]+)\.([a-z0-9-]+)\.([a-z]+)$ [NC]
RewriteCond $0 !^domains/
RewriteRule (.*) /domains/%2.%3/%1/$1 [L]

Все работает, но торт создает неправильные (некрасивые) URL.Это работает, но ...

cakephp 2.0, работающий на domain.com, содержит $ this-> Html-> link ("/ controller") ;.Он создает ссылку на /domains/domain.com/www/controller вместо /controller.

1 Ответ

0 голосов
/ 06 марта 2012

Hy,

Использовать route.php из app / config Это торт. Если вы используете htaccess и rout.php, вы дважды перепишете свою ссылку, я думаю ...

Например:

    Router::connect('/', array('controller' => 'your_controller', 'action' => 'your_actiom'));

Вы можете настроить свои маршруты как htaccess Путь для этого маршрута:

    http://your_domain.com/controller/action

Также вы можете добавлять параметры в маршрут (для редактирования или чего-то еще)

Здесь у вас есть все инструкции по эксплуатации

Если у вас есть другой вопрос, продолжайте!

...