The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Выпуск сервера приложений NGINX Unit 1.11.0"
Отправлено Ilya Indigo, 21-Сен-19 17:16 
Благодарю Вас, Валентин, за подробный и развёрнутый ответ! :-)
Вы меня серьёзно озадачили и заставили пересмотреть некоторые мои знания, впрочем этого я и хотел. :-)

> А для чего у вас php c Apache через FastCGI работает вместо mod_php? Есть конечно кейсы в которых даже с Apache такой вариант необходим, но FastCGI имеет свои накладные расходы и тут не добавляет эффективности.

Мне казалось что mod_php это удел конфигураций всяких денверов на локалхостах, которые не могут осилить нормальную конфигурацию сервера.

В mod_php:
- можно использовать только prefork, нельзя использовать event, что мне тогда казалось снижает производительность.
- интерпритатор задействован даже когда отдаётся статика.
- на каждый запрос создаётся свой процесс что приводит к повышенному расходу ОЗУ
- Ошибка в одном PHP-скрипте может положить Apache со всеми виртуальными хостами
- нельзя использовать разные версии PHP для разных виртуальных хостов.
- не читаются .user.ini файлы https://www.php.net/manual/ru/configuration.file.per-user.php

В FastCGI этого всего нет, мне тогда он казался однозначно лучше, хотя сейчас погуглив эту тему, пишут что при высокой нагрузке mod_php показывает большую производительность.
Почему большую, мне не понято. Читая Ваш ответ про MPM event, он должен быть. как минимум, не хуже.

> Но так ли необходим .htaccess?
> Даже просто отказ от него с сохранением Apache даст заметный прирост производительности.

Вот это для меня было новостью.
Я и не предполагал что mod_rewrite так сильно влияет на производительность Apache.
Я его использую для маршрутизации, тут https://www.opennet.ru/openforum/vsluhforumID3/118512.html#59 привёл пример его использования.

Пол дня думал над тем, могу ли я от него отказаться.
Если кратко, то в DOCUMENT_ROOT у меня есть только 2 объекта к которым можно обращаться
это директория static и файл index.php
Если я откажусь от .htaccess мне нужно чтобы на стороне сервера я мог прописать нечто такое.
- Если URI начинается на /static/ (/static/img/favicon.png) то сервер отдавал статику, даже не пытаясь задействовать php (короче чтобы он не вмешивался и делала что и обычно).
- Но если запрос НЕ содержит /static/ (/ru/user/1.html) то мне нужно чтобы сервер НЕ изменяя URL (пользователь должен всегда оставаться на том URL с которого он пришёл, если я сам в PHP/JS  не решу иначе) вместо попытки обращения к директориям ru и user и поиска там файла 1.html сразу перенаправил запрос на index.php?get=/ru/user/1.html а на стороне PHP я уже сам смогу определить что делать дальше с этим URI из $_GET['get']

Такое можно прописать на Apache или nginx или nginx unit?
Ну или какие-нибудь иные соображения как можно эффективно организовать ЧПУ маршрутизацию без mod_rewrite?

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру