2015-11-12 3 views
0

Когда я использую перенаправление ниже, оно дает xxx.yyy.com/posts/add.Изменение функции маршрутизации Cakephp

Router::url(
    array('controller' => 'posts', 'action' => 'add'), 
    true 
); 

Когда я изменяю последний параметр на false, он дает xxx.com/posts/add.

Router::url(
    array('controller' => 'posts', 'action' => 'add'), 
    false 
); 

Нижеуказанные ссылочные формы xxx.com/posts/add url.

echo $this->Html->link('Add Post', array(
    'controller' => 'posts', 
    'action' => 'new' 
)); 

Ниже перечислены формы перенаправления xxx.yyy.com/posts/add url.

$this->redirect(array('controller' => 'posts', 'action' => 'add')); 

xxx.yyy.com это базовый url. Сервер имеет несколько доменов. Я закончил проект cakephp. Я не хочу ничего менять в хостинге. Могу ли я изменить в cakephp, чтобы вести себя выше кодов, чтобы указать xxx.com/...

Возможно ли это?

ответ

1

Для этого можно использовать CakePHP base configuration.

Configure::write('App.baseUrl', 'http://example.com'); 

Было бы еще лучше использовать .htaccess перезаписи URL, если это возможно:

RewriteCond %{HTTP_HOST} !^example\.com$ 
RewriteRule ^.*$ http://example.com%{REQUEST_URI} [R=301,L] 
+0

Если я использую Configure, я должен изменить во многих местах. Я могу попробовать попробовать .htaccess – jayavel

+0

@jayavel Если вы правильно используете Configure, вам нужно только изменить его в одном месте. –