суббота, 10 июля 2010 г.

Проблемы установки CakePHP под Linux

Материалов по поводу первого запуска кейка хватает, еачиная от официальной документации и заканчивая различными туториалами. Однако при первой установке на Lnux столкнулся с несколькими проблеммами. Опишу их и методы борьбы с ними.
Распаковав CakePHP и запустив стартовую страницу я увидел несколько сообщений об оишбках:

1)
Your tmp directory is NOT writable.
Ваша врменная дирректория (ее расположение можно узнать с помощью php_info(), строка TMPDIR) должна быть доступна для записи:
chmod -R 700 /root/tmp
2)
Warning (2): strtotime() [function.strtotime]:
It is not safe to rely on the system's timezone settings. You are *required*
to use the date.timezone setting or the date_default_timezone_set()
function. In case you used any of those methods and you are still getting
this warning, you most likely misspelled the timezone identifier.
We selected 'Europe/Moscow' for
'MSD/4.0/DST' instead [CORE/cake/libs/cache.php, line 570]
Нужно выбрать временную зону по умолчанию.
Либо в php.ini
date.timezone = 'Europe/Moscow'
Либо в .htaccess
date_default_timezone_set('Europe/Moscow')
3)И конечно mod rewrite. У всех начинающих web-прграммистов (в т.ч. и у меня) возникают проблемы с этим замечательным модулем. В случае с кейком отстутсвие modrewrite вы увидети сразу, т.к. не загрутиться css и это сразу будет видно на стартовой страничке.
В httpd.conf должна присутствовать строчка загрузки модуля
LoadModule rewrite_module modules/mod_rewrite.so

<Directory "/usr/local/apache2/htdocs">
...
</Directory>
Заменить "AllowOverride none" на
AllowOverride All