FastCGI и CodeIgniter, мой новый сайт и секрет небольшой памяти

1 мая 2008 г. Просмотров: 7548 RSS 17
MaxSite CMS » CodeIgniter

Пост-солянка. smile

1. На новом сервере я включил PHP как FastCGI. Скорость тестового сайта несколько увеличилась (примерно в 2 раза). Это на WordPress. Теперь я решил поставить другой сайт на своей MaxSite CMS и как оказалось .htaccess при таком режиме работает как-то по другому. В частности при использовании ЧПУ, сервер выдает, что файл не найден.

Погуглив, выяснилось, что это довольно распространенная проблема. Перепробовав кучу вариантов, мне так и не удалось получить рабочий. Тогда я сообразил, что WordPress-то работает нормально, поэтому решил просто взять его .htaccess. Теперь пути заработали. Я даю свой .htaccess, но сразу заявляю, что без гарантий. Возможно, что этот вариант просто счастливо подошел под мой сервер.

Options +FollowSymLinks
Options -Indexes
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
Но это еще не всё. Посколько в этом файле в index.php не передаются никакие параметры (из URL), то в CodeIgniter в файле config.php нужно указать способ обработки адресов.

У меня получилось так:

$config['uri_protocol'] = "REQUEST_URI";

Возможно эта информация кому-то окажется полезной.

2. Я запустил свой новый сайт max-3000.com. Планы пока раскрывать не буду, просто этот сайт будет уже работать на моей CMS. Кто желает может посмотреть. Система еще не готова (версия всего 0.09), поэтому просьба сильно не пинать.

3. Помните, я говорил, что не в курсе, почему мой сайт (до переезда) показывал столь малое потребление памяти PHP? Значение, которое выдает мой плагин? Так вот, путем небольших «ковыряний», я выяснил, что снижение происходит при включении php-расширения eAccelerator. Эта штуковина выполняет кэширование уже скомпилированных php-скриптов. Таким образом, при повторном выполнении сразу отдается уже готовый результат. Соответственно увеличивается скорость (в 2-3 раза) и уменьшается потребление памяти (в 5-10 раз).

Сказать что либо по нагрузке на сервере, ничего не могу. Статистика показывает примерно те же цифры, что и до включения eAccelerator'а. Скорее всего он более эффективен при большой посещаемости.


twitter.com facebook.com vkontakte.ru odnoklassniki.ru mail.ru friendfeed.com google.com yandex.ru
Комментариев: 17
  1. На новом сервере я включил PHP как FastCGI.

    Может задаю ламерский вопрос, но всё же: а как раньше был подключен РНР у вас на сервере? Модулем? Или простым CGI? Если модулем - хотите ли вы сказать, что РНР через FastCGI работает быстрее, чем подключение через модуль?

  2. Было бы круто иметь цмску по функциональности и лёгкости управления подобную вордпрессу, но по скорости и требовательности к ресурсам его обгоняющую в разы.

    Надеюсь у тебя такое получится smile

  3. 2008-05-01 в 13:54:25 | Заброшенные объекты#3

    У меня на одном сайте так и не работает - выдает что файл не найден. Может быть дело в хостинге?

  4. Сори за возможно банальный вопрос - что означает "3000" в имени домена? smile Домен-то как эффектно звучит - Макс, да еще и ТРИ ТЫСЯЧИ :mrgreen:

  5. 2008-05-01 в 14:44:28 | Максим#5

    Насчет режимов PHP я ничего толком сказать не могу. Там слишком много особенностей. На сервере есть возможность указать разные варианты, вот я и попробовал. Получилось быстрей. По отзывам на других сайтах/форумах - вполне нормальная конфигурация.

    2Dimox: Собственно ничего не обозначает. smile У меня этот ник уже давно (тогда все писали 2000, я же решил сразу на тысячу лет вперед - получилось 3000).

  6. 2008-05-04 в 11:24:21 | Пахом#6

    а для общественного использования кагда cms выложишь?

  7. Честно сказать незнал, что так можно Пых настроить... будем знать теперь спасибо!

  8. 2008-05-04 в 17:33:13 | Охотник на зелёных#8

    Хочу задать такой вопрос, а как обстоит дело с шаблонами (темами) под твою ЦМС? Или с WP подходят? Или из WP не сложно переделать?

  9. 2008-05-04 в 17:50:31 | Максим#9

    Шаблоны от WordPress не подходят, поскольку используются другие функции. В моей системе шаблон, на мой взгляд, и проще, и гибче. Из обязательных файлов только index.php - остальное на откуп разработчика. В дефолтном шаблоне будут примеры использования «по-полной» - это с учетом всех типов данных/страниц. Но возможно сделаю и вариант «мини» - предполагаю, что он будет совсем несложный.

  10. Любопытно было бы о цмс-ке более подробно узнать.

    Какие задачи она будет выполнять?

  11. Попробуй ещё nginx в связке с апаче и fastcgi :wink:

  12. 2008-05-14 в 13:16:12 | Максим#12

    У меня такого на сервере нет. ;)

  13. Такой надо ставить самому (в убунту, дебиан точно есть). Но с ним сервер выдержит в 3 раза минимум больше посетителей и сэкономит кучу RAMа который так злостно пожирает апач.

  14. Кстати новость в до гонку "Wordpress.com" перешёл на nginx

    http://barry.wordpress.com/2008/04/28/load-balancer-update/

  15. 2008-05-18 в 11:50:50 | Дмитрий#15

    nginx+fastcgi рулят

  16. 2010-03-12 в 08:24:18 | Марат#16

    Спасибо за статью, выручил!!!

  17. RewriteRule ^(.+) index.php/$1 [QSA,L]

    так будет правильнее указывать

Оставьте комментарий!

grin LOL cheese smile wink smirk rolleyes confused surprised big surprise tongue laugh tongue rolleye tongue wink raspberry blank stare long face ohh grrr gulp oh oh downer red face sick shut eye hmmm mad angry zipper kiss shock cool smile cool smirk cool grin cool hmm cool mad cool cheese vampire snake excaim question

Используйте нормальные имена

Имя и сайт используются только при регистрации

Зарегистрируйтесь, чтобы получать уведомления о новых комментариях по email.

Авторизация Войти через loginza

(обязательно)

РЕКЛАМА Практически все интернет-ресурсы располагаются на том или ином хостинге.