Страница 1 из 1

Динамические поддомены (кастомный конфиг nginx)

Добавлено: 20 июл 2024, 23:29
snoopy_88
Привет!
Open Server 6. Пытаюсь создать динамические поддомены, локальный dns сервер настроил корректно. Как я понял из доков, через .osp/project.ini указав alias=*.project.local это провернуть невозможно и нужно создавать свой конфиг nginx. Где его прописывать? Пробовал различные варианты: .osp/nginx/project.local.conf а также создавал шаблон в OSPanel/config/Nginx-1.26/default/templates.
Первый вариант, как я понимаю, вообще не подходит, т.к. это дополнение конфига, а во втором OS будто бы просто не видит конфиг.
Как подключить свою полную конфигурацию для домена?

Re: Динамические поддомены (кастомный конфиг nginx)

Добавлено: 21 июл 2024, 13:23
Максим
Вы всё сделали верно, .osp/nginx/project.local.conf может быть как полным, так и частичным конфигом. Советую изучить документацию.

Re: Динамические поддомены (кастомный конфиг nginx)

Добавлено: 21 июл 2024, 15:21
snoopy_88
Максим писал(а): 21 июл 2024, 13:23 Вы всё сделали верно, .osp/nginx/project.local.conf может быть как полным, так и частичным конфигом. Советую изучить документацию.
В том и суть, что, согласно документации, при полном конфиге мы указываем server {}, однако в этом случае получаем ошибку и OS не стартует
nginx: [emerg] "server" directive is not allowed here in C:/OSPanel/home/project.local/.osp/nginx/project.local.conf:1

Re: Динамические поддомены (кастомный конфиг nginx)

Добавлено: 21 июл 2024, 15:42
Максим
snoopy_88 писал(а): 21 июл 2024, 15:21
Максим писал(а): 21 июл 2024, 13:23 Вы всё сделали верно, .osp/nginx/project.local.conf может быть как полным, так и частичным конфигом. Советую изучить документацию.
В том и суть, что, согласно документации, при полном конфиге мы указываем server {}, однако в этом случае получаем ошибку и OS не стартует
nginx: [emerg] "server" directive is not allowed here in C:/OSPanel/home/project.local/.osp/nginx/project.local.conf:1
Покажите полный конфиг, что вы сохранили в project.local.conf

Re: Динамические поддомены (кастомный конфиг nginx)

Добавлено: 21 июл 2024, 20:34
snoopy_88
Максим писал(а): 21 июл 2024, 15:42
snoopy_88 писал(а): 21 июл 2024, 15:21

В том и суть, что, согласно документации, при полном конфиге мы указываем server {}, однако в этом случае получаем ошибку и OS не стартует
nginx: [emerg] "server" directive is not allowed here in C:/OSPanel/home/project.local/.osp/nginx/project.local.conf:1
Покажите полный конфиг, что вы сохранили в project.local.conf

Ошибку с server удалось победить, но теперь не заводится php (500 Internal Server Error). Что не так с конфигом?
В логах:
 [error] 14460#8728: *1 no host in upstream ":9000"
Конфиг:
server {
	listen 127.0.0.1:80;
	server_name project.local;
	
	index index.php;
	
	location ~ \.php$ {
		fastcgi_pass $php_server:9000; 
		include fastcgi_params; 
	}
	
	root C:/OSPanel/home/project.local;
		
	location / {
         try_files $uri $uri/ /index.php?$query_string;
        }		
}

Re: Динамические поддомены (кастомный конфиг nginx)

Добавлено: 21 июл 2024, 22:05
Максим
Это ожидаемо, т.к. вы используете переменную $php_server, которая не задана, т.е. не понимаете свой же конфиг.

Советую сделать так: удалить этот конфиг, перезапустить модуль, открыть автоматически сгенерированный конфиг модуля (modules\Nginx-xx\conf\nginx.conf) и скопировать кусок, где описывается нужный хост и только потом создать файл C:\OSPanel\home\project.local\.osp\nginx\project.local.conf, добавить туда скопированный кусок готового конфига и править его под себя.