为什么在将laravel项目部署到服务器上后,nginx会出现“Primary script unknown”错误并无法正常访问?应该怎么解决这个问题?
技术性解答:
这个问题的产生是由于nginx无法找到laravel的入口文件index.php,需要在nginx配置文件中添加对应的location配置。具体做法如下:
编辑nginx配置文件,比如在Ubuntu系统中的位置是/etc/nginx/sites-available/default。
在server段(即server{}内部)添加location配置:
location / {
try_files $uri $uri/ /index.php?$query_string;
}
这个配置表示,当访问根目录或者其他不存在的文件时,nginx会尝试在该目录下查找对应的文件,如果找不到则使用index.php文件处理。
sudo systemctl reload nginx
现在,访问laravel项目应该就可以正常访问了。