2016-06-27 3 views
0

Например, это мой http://myproject.com/ и предметной области я использовалCakePHP: получаю ошибку при использовании маршрутизатора :: подключить

Router::connect('/', array('controller' => 'public', 'action' => 'index')); 

в routes.php, чтобы получить мою домашнюю страницу проекта на основной URL http://myproject.com/ это работает, и я хочу, как это так, но в моих проектах другие ссылки не работают. Предположим, что я нажимаю на бренд ссылки, он будет генерировать ссылку вроде этого: http://myproject.com/public/displayproduct, где исходная рабочая ссылка http://myproject.com/index.php/public/displayproduct, поэтому она показывает ошибку из-за пропуска index.php. Что мне делать, чтобы пропустить index.php и запустить все мои ссылки?

+0

Его проблема .htaccess. Можете ли вы поделиться своим корнем .htaccess для cakephp? –

ответ

0

Кажется, его происходит из-за вашего .htaccess.Make уверен mod_rewrite включен и .htaccess должны размещены, как показано ниже в CakePHP 2.x:

CakePHP корень .htaccess:

<IfModule mod_rewrite.c> 
RewriteEngine on 
RewriteRule ^$ app/webroot/ [L] 
RewriteRule (.*) app/webroot/$1 [L] 
</IfModule> 

и WebRoot .htaccess

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule^index.php [L] 
</IfModule> 
0

Как уже упоминалось в installation guide:

Если вы не хотите или не можете получить mod_rewrite (или какой-либо другой совместимый модуль) и работает на сервере, вы должны будете использовать CakePHP-х встроенные URL-адреса. В конфигурации/app.php, раскомментируйте строку, которая выглядит как:

'App' => [ 
    // ... 
    // 'baseUrl' => env('SCRIPT_NAME'), 
] 

удалить Также эти файлы .htaccess:

/.htaccess 
webroot/.htaccess 

Это сделает ваши URL-адреса выглядят www.example.com/index.php/controllername/actionname/param, а не www.example.com/controllername/actionname/param.

+0

показывает «Внутренняя ошибка сервера» – Vky

+0

Я не знаю, что вы сделали или что прочитали в вашем журнале ошибок php. – AD7six