Проблема в:
Первый сайт firstsite.test работает на PHP 7.4, мне нужно запустить второй сайт на PHP 8.0 и еще один фреймворк внутри его подкаталога: firstsite.test/second-site/
Итак, теперь у меня есть 2 отдельных конфига nginx для каждого сайта, и они работают отдельно.
Но я не могу сделать так, чтобы второй сайт отображался в подкаталоге первого сайта. Что я пробовал:
- Сделайте псевдоним в первой конфигурации сайта:
сервер {
слушать IP:порт;
корень /var/www/user/data/www/firstsite/current;
местоположение @php {
fastcgi_index index.php;
fastcgi_param PHP_ADMIN_VALUE "sendmail_path = /usr/sbin/sendmail -t -i -f [email protected]";
fastcgi_pass unix:/var/www/php-fpm/1.sock;
fastcgi_split_path_info ^((?U).+\.ph(?:p\d*|tml))(/?.+)$;
try_files $uri = 404;
включить fastcgi_params;
}
расположение ~ ^/второй сайт/ {
псевдоним /var/www/user/data/www/secondsite/current/public;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-Content-Type-Options "nosniff";
индекс index.php;
кодировка utf-8;
try_files $uri $uri/ /index.php?$query_string;
расположение ~ \.php$ {
fastcgi_pass unix:/var/www/php-fpm/18.sock;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
включить fastcgi_params;
}
расположение ~ /\.(?!известно).* {
отрицать все;
}
}
}
- Установить корневой путь:
сервер {
слушать IP:порт;
корень /var/www/user/data/www/firstsite/current;
местоположение @php {
fastcgi_index index.php;
fastcgi_param PHP_ADMIN_VALUE "sendmail_path = /usr/sbin/sendmail -t -i -f [email protected]";
fastcgi_pass unix:/var/www/php-fpm/1.sock;
fastcgi_split_path_info ^((?U).+\.ph(?:p\d*|tml))(/?.+)$;
try_files $uri = 404;
включить fastcgi_params;
}
расположение ~ ^/второй сайт/ {
корень /var/www/user/data/www/secondsite/current/public;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-Content-Type-Options "nosniff";
индекс index.php;
кодировка utf-8;
try_files $uri $uri/ /index.php?$query_string;
расположение ~ \.php$ {
fastcgi_pass unix:/var/www/php-fpm/18.sock;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
включить fastcgi_params;
}
расположение ~ /\.(?!известно).* {
отрицать все;
}
}
}
Ничего из этого не работает. Пожалуйста, укажите мне правильный путь.