服务器使用Nginx部署PHP项目的时候如果样式没有 出来,那么很可能 location 块里出问题了。 比如
location / { root /home/wwwroot/default/PHP_project; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.PHP; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
这样配置之后访问项目,能够访问,但是样式怎么没有了?难道是代码里css, js文件没有引入成功吗?并不是。(当然不排除CSS和js引入失败的情况,如果本地测试的时候有样式,部署服务器之后没有样式了。就不是这个原因)看Nginx配置的代码发现,匹配规则是 / ,而配置文件里只有这一个location块,也就是说所有的请求都转发给了PHP处理,包括静态文件。那么肯定出不来样式。如何改Nginx的配置呢?看下面(也可以写匹配静态文件的location 块,自行选择)
location / { root /home/wwwroot/default/PHP_project; index index.html index.htm ; } #PHP 的单独写一个匹配location,这样让静态文件走location /{} location \.PHP { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.PHP; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
- 当然样式不出现可能还有其他原因,以后遇到了,再继续补充到这里。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。