
У меня естьдва каталогана моем сервере, directory1
сдругие каталогивнутри, и directory2
сотдельный файл index.php
.
Я хочу получить доступ к моему index.php
сhttp://сервер/( /var/www/directory2/index.php
) а также иметь возможность иметь все каталоги, доступные внутри directory1
сhttp://сервер/тест( var/www/directory1/test
) например.
Я попробовал с этой конфигурацией, но не могу получить доступ к index.php
файлу:
server {
server_name server;
index index.php index.html index.htm;
access_log /var/log/nginx/server.access.log;
error_log /var/log/nginx/server.error.log;
location / {
root /var/www/directory1;
}
location ~ ^/index.php$ {
root /var/www/directory2;
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_index index.php;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param APPLICATION_ENV production;
include fastcgi_params;
}
}
Спасибо за любую помощь!
решение1
Я бы сделал это просто:
root /var/www/directory1;
location = / {
root /var/www/directory2;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root/index.php;
fastcgi_param APPLICATION_ENV production;
include fastcgi_params;
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_index index.php;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param APPLICATION_ENV production;
include fastcgi_params;
}