CakePHP не работает url-переписывание на Ubuntu
все. На этот раз я пытаюсь cakephp, но у меня есть "переписывание URL-адресов неправильно настроено на вашем сервере. 1) помогите мне настроить его 2)я не / не могу использовать перезапись URL". Я мог бы знать, что это apache и .проблемы htaccess, такие как /etc/apache2/sites-avaliable/default и каждый каталог .реврайт.
моя среда разработки...
- Ubuntu12.04 на vmware сайту fusion4
- apache2 не.2.22
- mysql5.5
- рнр5.3.10
- cakephp2.1
мои процедуры...
1)/etc/apache2 / httpd.conf
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
2)включение модуля mod_rewrite
sudo a2enmod rewrite
sudo service apache2 reload
3) Редактирование /etc/apache2/sites-доступно / по умолчанию (AllOverride None для AllOverride)
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order Allow,Deny
Allow from all
</Directory>
prompt: sudo service apache2 reload
4)редактирование и проверка каждого .файл htaccess - >корень торта каталог
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ app/webroot/ [L]
RewriteRule (.*) app/webroot/ [L]
</IfModule>
->приложения корневой каталог
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ webroot/ [L]
RewriteRule (.*) webroot/ [L]
</IfModule>
- >каталог webroot
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/ [QSA,L]
</IfModule>
этот вопрос решен, спасибо.
3 ответов
У меня тоже была эта проблема. Получается .реврайт файл не копируется вместе с источником cakePHP. Это обычная проблема при использовании команды cp или отсутствии скрытых файлов, видимых в браузере файлов, если вы не копируете каталог верхнего уровня.
выполнение прямой копии файла в мою папку проекта исправило его для меня без необходимости возиться с моими настройками apache.
cp ~/git/cakePHP/.htaccess ~/project/folder/
можно missconfiguration:
проверьте, если файл http://your_domain_name/css/cake.generic.css
Это rechable из Вашего браузера. Если нет, вы получите предупреждение на главной странице по умолчанию
если у вас {HOME}/css
каталог на корневом уровне, UrlRewriting не будет перенаправлять http://your_domain_name/css/cake.generic.css
до {HOME}/app/webroot/css/cake.generic.css
.
таким образом, css-файл не будет найден, в результате чего сообщение о том, что URL-переписывание неправильно настроено. (Посмотрите на файл app / View / Pages / главная.cpt)
устранение: полностью удалить {HOME}/css
каталог на корневом уровне. Поместите css-файл в {HOME}/app/webroot/css
.
Это может быть проблема с разрешениями файлов. Попробуйте рекурсивно установить разрешения 777 для каталогов webroot и tmp. Для каталога tmp может потребоваться sudo.
sudo chmod -R 777 /path/to/app/webroot/
sudo chmod -R 777 /path/to/app/tmp/