- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Тренды маркетинга в 2024 году: мобильные продажи, углубленная аналитика и ИИ
Экспертная оценка Адмитад
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Здравствуйте.
Меня давно мучает вопрос, как собрать комбинацию webserver + php + макс. безопастности + макс. производительности с разными аккаунтами.
Многое перечитал пользуясь гуглем, перепробовал и перетестировал.
Хотелось бы описать свои мысли и выводы. И может кто-то может подсказать лучшее решение.
Интересным остаётся тот факт - какую конфигурацию используют профессиональные хостеры для своих клиентов.
Берём только свежие на данный момент версии
Apache2.2.4 или
Lighttpd1.5(Betta) или
Nginx 0.5.23
+ PHP5.2.3
Вырианты: (все сровнения по отношению к первому варианту)
Apache2
1. prefork + mod_php самое поппулярное
+ очень быстрый
- запуск пхп от вебсервера(эт очень плохо, проблемы с безопастность при отключении safemode), достигаем безопастность так - (openbase_dir + disable shell functions + safemode OFF + правильная настройка прав к папкам)
- 7мб на процесс (бедный RAM)
- проблема нехватки памяти при больщом кол-ве запросов/процессов (вероятное решение - отключить KeepAlive, но теряем скорость + доп. нагрузка на CPU)
2. prefork + suphp
+ запуск пхп от владельца акаунта - хорошая безопастность, фтп и пхп работают оба от юзера
- производительность ухудшается в 5-10 раз (ужас)
3. prefork + php as fastcgi
+ процесс апача становится легче, около 1-2мб, т.к. пхп отдельный сервер принимающий запросы
- как быть с разными акаунтами, каждому запускать пхп-сервер? иначе нет безопастности, нельза указать openbase_dir :/
- вероятно время уходящее на отправление запроса к ПХП и получение ответа значимо и немного ухудшает скорость
4. prefork + php as fastcgi + suexec
Этот вариант мне неудалось настроить и понять принцип работы, возможно это та самая золотая середина..
5. prefork + mod_php + (mod_suid or mod_ruid ...)
или peruser-MPM + mod_php
Это впринцепи тот же вариан (1) за исключением того что процессы вебсервера запускаются от юзера установленного в вирт. хостах, что убирает некоторые минусы (1)-го варианта. Есть вероятность ухудшения производительности!
Эти варианты мне также неудалось толком настроить, например apache peruser вообще недоделанный модуль хоть и есть различные патчи.
lighttpd или nginx
Впринцепи это очень лёгкие и быстрые вебсервера которые используют пхп как fastcgi.
Есть варианты связки этих серверов с apache(для пхп), что даёт неплохую производительность. Но например для использования в хостинге только lighttpd необходимо каждому юзеру запускать пхп-fastcgi-сервер, тот же случай что и в пункте (3)
Вот впринцепи и всё, может кто-нибуть поделится своими (безопастными, рабочими и стабильными) реализациями? Всё же интересно как это настраивают профессиональные вебхостеры, неужели сами програмируют свои модули и патчи и не с кем не делятся ? =)
1. самое производительное, безопасность конечно мала.
4. самое оптимальное отношение производительности и безопасности.
5. самое безопасное, но производительности мала.
ну и nginx как акселератор (хотя можно и апач настроить вместо этого) и для отдачи статики
Я работал с peruser - считаю что на данный момент это оптимальный вариант.
Производительность не страдает.
я тестировал mpm-itk для апача 2.2, производительность была намного меньше чем fastcgi
1. prefork + mod_php самое поппулярное
неделю назад при нагрузке в 150к уников загнулся апач при такой конфигурации :( Причем все что требовалось от апача (backend), это только подключаться к бегуну (php) и брать объявления - но таких процессов, как вы понимаете было много, что и приводило к эффекту ддоса... Не нашел ничего лучше, чем на си переписать модуль бегуна. Зато теперь проц при любом трафе загружен не более 3% :)
p.s. пробовал и eAccelerator и xcache - ничего не помогало, apache уходил в ступор через секунду после запуска.
С 1м вариантом мне всё понятно, сам его использую .. в день 3 милиона хитов, спасает только отключенный KeepAlive, nginx неиспользую
mustafa, Что за бегун(php) который был переписан? Вероятно у вас был включен KeepAlive и поэтому апач несправлялся?
Andreyka, Имеется ввиду этот патч? http://www.telana.com/peruser.php или http://home.samfundet.no/~sesse/mpm-itk/ или свой дописанный? Наскоько я знаю на сайте апача этот модуль недоделан. Я также читал что существует доп. опасность т.к. апа работает под рутом для смены uid, разве не так?
Roxis, можно ли реализовать этот вариант для большого числа юзеров без последствий? Тот ли это случай когда пхп-фастцги-сервера для юзеров не запущенны, а если появляется активность на каком то хосте то запускается фастцги для данного юзера и последующие запросы обрабатываются с лёгкостью, а по ненадобности сново отрубаются (например после минуты покоя)??
p.s. пробовал и eAccelerator и xcache - ничего не помогало, apache уходил в ступор через секунду после запуска.
Так не дело это апачевское - надо было конструктивно подойти к решению.
4. mod_fcgid + suexec
peruser. itk несекурный.
Если сайты посещаемые - то fastcgi каждому. Если нет - mod_php
по моим тестам peruser не намного быстрей mod_fcgid
Значит плохо собран peruser или хорошо fcgid :)