И вновь про config nginx php-fpm.

InstantCMS 2.X

Просьба создать шаблон для vestacp.

#16 6 апреля 2020 в 13:02

Вы там потыкайте обращениями к файлам

@IamB
Потыкал. Всякие лицензии, ридми и кредиты отдают 403.
Папки кэш, статик и аплоуд отдают 403
А вот /upload/test.php почему-то отдает 404 из папки инстанта. Хотя файл есть.
#17 6 апреля 2020 в 13:12

А вот /upload/test.php почему-то отдает 404 из папки инстанта. Хотя файл есть.

Ris
А должно 403 отдавать. Потому что должно работать
location ~* /(cache|static|upload)/.*\.(php|pl|py|jsp|asp|sh|cgi)$ {
return 403;
error_page 403 /403_error.html;
}
а оно не работает. Нужно попробовать эту конструкцию тоже в server {...} переместить.
#18 6 апреля 2020 в 13:35

переместить.

@IamB
Переместил. И сразу прочитал phpinfo() smile
Видимо это
location ~* /(cache|static|upload)/.*\.(php|pl|py|jsp|asp|sh|cgi)$
надо как-то изменить при перемещении в сервер.
--------------------------------------------------------------------
Даже вот так:
location /upload/test.php {
return 403;
}
Всё равно отдает 404.
#19 6 апреля 2020 в 16:29
Ris, кажется нашел решение. Такую конструкцию нужно разместить в server{...}, причём это должен быть самый первый location из всех.

location ~* ^/(cache|static|upload)/.+\.(php|pl|py|jsp|asp|sh|cgi)$ {
return 403;
}
#20 6 апреля 2020 в 16:53
@IamB,
Увы. test.php срабатывает.
На самом деле сравнил с поведением .htaccess на апаче.
Там этот файл просто скачивается.
Так что может быть и 404 неплохо?
#21 6 апреля 2020 в 17:07
Ris, у меня на тестовом сервере вариант с крайним регулярным выражением работает.

Так что может быть и 404 неплохо?

Ris
Возможно, в том варианте всё работает, но когда дело доходит до
error_page 403 /403_error.html;
а 403_error.html нет, то и показывается 404 инстанта.
Попробуйте тогда вернуться к этому варианту, но уберите
error_page 403 /403_error.html;

И если не трудно, положите файл с конфигурацией к себе в gist.github.com Так ловчее будет.
#22 6 апреля 2020 в 17:12
@IamB,
Точно!
Вот так отдает 403
location ~* /(cache|static|upload)/.*.(php|pl|py|jsp|asp|sh|cgi)$ {
return 403;
}
#23 6 апреля 2020 в 17:20
Ris, мои поздравления!
Но тогда
error_page 403 /error/403.html;
error_page 404 /error/404.html;
error_page 500 502 503 504 /error/50x.html;
как-то нужно проверить. Или уж отказаться от этого.
#24 6 апреля 2020 в 17:44

как-то нужно проверить.

@IamB
Повесил определение элиаса папки со страницами ошибок первой локацией:
location /error/ {
alias %home%/%user%/web/%domain%/document_errors/;
}
И запрет запуска изменил на такой:
# deny running scripts inside writable directories
location ~* /(cache|static|upload)/.*.(php|pl|py|jsp|asp|sh|cgi)$ {
return 403;
error_page 403 /error/403.html;
}
Вроде всё работает.
500-е ошибки пока не проверял.
----------------------------------------------
Проверил. 500-е ошибки движок отдает свои.
503 Service Unavailable
Please, enable debug mode in the site settings
#25 6 апреля 2020 в 18:08

Проверил. 500-е ошибки движок отдает свои.
503 Service Unavailable
Please, enable debug mode in the site settings

@IamB
Так это хорошо, потому что есть фраза о включении режима отладки.
#26 2 августа 2020 в 13:08

Если кто-нибудь сможет создать подобный шаблон для InstantCMS — я мог бы предложить включить его в следующий релиз разработчикам Весты.
Разработчики весты — вполне адекватные люди, всегда откликаются на запросы пользователей и вряд ли будут против расширения функционала своей web-панели.
И для InstantCMS наличие шаблона настроек для самой популярной web-панели будет только на пользу.

Отличная и своевременная идея. Получилось ли у вас создать самый оптимальный вариант такого шаблона?
#27 2 августа 2020 в 14:41

Получилось ли у вас создать самый оптимальный вариант такого шаблона?

@pugachev
С помощью @IamB сделали вполне работоспособный шаблон, который работает на моём сайте с апреля:
/users/files/download7685.html
Два файла (один для SSL, другой для без него) положить в папку /usr/local/vesta/data/templates/web/nginx/php-fpm/
После этого просто выбрать шаблон в настройках сайта:
#28 2 августа 2020 в 15:02

С помощью @IamB сделали вполне работоспособный шаблон, который работает на моём сайте с апреля:

Ris
Спасибо. Как раз на весту перешел и ваш шаблон очень кстати.
#29 2 августа 2020 в 17:02
@pugachev,
Сразу предупреждаю, в файле instantcms2.tpl есть переадрес на https.
rewrite ^(.*) https://$server_name$1 permanent;
Перезалил файлы. Если кому будет нужен этот редирект — раскомментируйте 10-ю строку.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.