- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

В 2023 году 36,9% всех DDoS-атак пришлось на сферу финансов
А 24,9% – на сегмент электронной коммерции
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Всем привет!
В nginx.conf есть такие строки
root /home/site/www;
index index.html index.php;
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /home/site/php$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
Дело в том, что у меня индексные файлы в разных каталогах:
/home/site/www/index.html
и
/home/site/php/index.php
Как мне прописать, чтобы если нет индексного файла по первому адресу /home/site/www/index.html запускался файл /home/site/php/index.php ?
Поставить обработчик 404 ошибки
Поставить обработчик 404 ошибки
Спасибо за ответ!
Скажите, а как это скажется на производительности, если я поставлю условный оператор в конфиг?
Еще вопрос:
Подскажите, в документации nginx (http://nginx.org/ru/docs/http/ngx_http_index_module.html) есть такие указания:
В конце списка может стоять файл с абсолютным путём. Пример:
index index.$geo.html index.0.html /index.html.
Я прописал у себя так:
index index.html /home/site/php/index.php;
но все равно получаю 404. В чем ошибка?
Особо никак не скажется, так как вся производительность упрется в сам php скрипт
Правильнее будет так:
index index.html;
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /home/site/php$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
nginx пытается отдать скрипт php (строка 2), но так как отдает только статику, он не выполняет php-скрипты, эту роль он отдает php-fpm, для которого индексным файлом прописан index.php.
или попробуйте так:
location / {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php index.html;
fastcgi_param SCRIPT_FILENAME /home/site/php$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}