Сегодня я продолжаю рассказывать о разработке собственной системы отслеживания ошибок. В прошлой статье только вкратце была описана общая идея и возможности, а также показан предварительный эскиз приложения. Но прежде чем переходить к основной теме, хочу поблагодарить всех комментаторов и особенно AmdY, Big_Shark и Алексея Качаева за советы! Первоначально я планировал доделать приложение полностью, и только потом опубликовать этот цикл постов. Но так получается даже лучше. Всегда есть шанс, что читатели найдут недостатки, и мне не придется переделывать все приложение чтобы их исправить В прошлый раз с инструментами мы определились (используем PHP, фреймворк CodeIgniter, MySQL и jQuery). Сейчас нам нужно их установить и настроить. Я предполагаю, что web сервер, PHP и MySQL у вас уже настроены, поэтому нам нужно только скачать CodeIgniter и jQuery. После этого распаковываем архивы в какую-нибудь папку на сервере.
В результате должна получиться примерно следующая структура папок.
index. php .htaccess system/ js/ jquery-1.3.2.min. js css/
Файл index. php и папка system – из дистрибутива CodeIgniter. .htaccess – самый обычный. Сразу приведу его содержимое.
RewriteEngine On RewriteBase / RewriteCond %{REQUEST_URI} ^system.* RewriteRule ^(.*)$ /index. php?/$1 [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond $1 !^(index\.php|images|robots\.txt|css|js) RewriteRule ^(.*)$ index. php?/$1 [L] ErrorDocument 404 /index. php
Основное его назначение – автоматически подставлять index. php в ссылки. Т. е. ссылка вида bugtracker. local/bugtracker/page/2 будет преобразована в bugtracker. local/index. php/bugtracker/page/2 При этом преобразование происходит, только если указанного в URL файла на самом деле не существует. Т. е. если запрос будет к js или css файлу, то index. php подставляться не будет. Кстати, если вы хотите, чтобы приложение находилось в какой-нибудь папке (например, mysite. domen/bugtracker/), то нужно будет изменить параметр RewriteBase. На настройке CodeIgniter подробно останавливаться не буду. Просто перечислю файлы, в которые нужно внести изменения. Все конфигурационные файлы находятся в папке system/application/. autoload. php – загружаем библиотеку для работы с базой данных и URL хелпер