【发布时间】:2019-06-18 16:14:06
【问题描述】:
我已将我的 Laravel 5 项目放在 /var/www/my_project/ 中,我想通过 http://my_domain.com/my_project/ 联系它。但是,我不知道如何配置 nginx 服务器块。
我想要的是这个:
-
http://my_domain.com/此时应该为空。稍后,此处将显示另一个项目。 -
http://my_domain.com/my_project/应该是我现在要添加的项目。
请注意,Laravel 公用文件夹位于 /var/www/my_project/public。
这是我的 nginx 配置(/etc/nginx/sites-enabled/):
server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
root /var/www/my_project/public;
index index.php index.html index.htm;
server_name my_ip;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
try_files $uri /index.php =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
实现所需配置的最佳方法是什么?
【问题讨论】:
-
非常好的问题。让 laravel 应用程序与另一个应用程序在同一个虚拟主机上工作需要相当出色的工作
-
你想要的是一个别名,把你的根留为
/var/www/并添加一个位置为location /my_project { alias /var/www/my_project/public; } -
Fabio,这是我尝试过的配置之一,但它不起作用。
http://my_domain.com/my_project/返回 nginx/Ubuntu 404 页面。不过还是谢谢你的建议!
标签: php laravel nginx laravel-5