【发布时间】:2017-12-13 11:56:18
【问题描述】:
我有一个 nginx 网络服务器,我想在上面运行多个 laravel 项目
第一个项目工作正常,但第二个项目只打开主页,主页地址是
example.com/secondproject/
但是当我想打开时
example.com/secondproject/foo
nginx 将跳过 /secondproject 别名并在第一个项目中查找请求的路由(nginx 配置中服务器的根目录)
这是我的配置
server {
listen 80;
server_name example.com;
rewrite_log on;
location / {
root /path/to/first-project/public;
index index.php index.html index.htm;
try_files $uri $uri/ $uri/index.php /index.php;
location ~ \.php$ {
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $request_filename;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
}
}
location /secondproject {
alias /path/to/second-project/public;
index index.php;
location /secondproject {
try_files $uri $uri/ $uri/index.php /index.php;
}
location ~ \.php$ {
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $request_filename;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
}
}
}
当我替换时
root /path/to/second-project/public;
而不是
alias /path/to/second-project/public;
nginx 显示 403!
【问题讨论】:
标签: laravel nginx routes config alias