Свежайшие Пирожки от CakePHP по-русски

Полнейшее руководство CakePHP 1.2 на русском языке, горячие новости и полезные статьи

Apache и mod_rewrite

Хотя CakePHP и настроен изначально таким образом чтобы работать сразу с mod_rewrite — мы заметили что у некоторых пользователей не выходит получить красивые URL-адреса, и они ведут непримиримую борьбу с настройками. Вот несколько советов, которые помогут заставить работать все так, как вам бы того хотелось:

  • Убедитесь что на сервере разрешено переопределение директив настройки при помощи файлов .htaccess.Для этого в файле httpd.conf, в разделе, определяющем ваш каталог на сервере, директива Allow Override должна быть установлена в значение All.
  • Убедитесь, что вы редактируете httpd.conf, относящийся ко всему серверу, а не конкретному пользователя или сайту.
  • Возможно, у вас просто отсутствует .htaccess файл. Такое могло произойти при загрузке архива Cake, т.к. некоторые системы считаю файлы, начинающиеся с точки, скрытыми и не копируют их. Попробуйте заново загрузить архив, если это ваш случай.
  • Убедитесь, что происходит корректно загрузка модуля mod_rewrite. Для этого найдите строки LoadModule rewrite_module libexec/httpd/mod_rewrite.so и AddModule mod_rewrite.c в вашем httpd.conf. 
  • Если вы устанавливаете CakePHP в пользовательский каталог (вроде http://example.com/~username), то вам необходимо в вашем .htaccess файле добавить строку RewriteBase /myusername/.