nginx静态资源服务器配置

2017-03-30

问题起源

在配置静态资源服务器的时候发现了一个问题,比如我想访问 www.xxx.com/hello.png 图片,配置如下

server {
  listen 9090;
  server_name 192.168.2.165;
  charset utf - 8;
  location / {
    root / assets / img / ;
    autoindex on;
  }
}

这样访问 192.168.2.168/hello.png 就可以访问到目录 /assets/img/ 下的图片

但是如果访问的js或者css,要把路径分开来容易识别,所以实际应该通过路径 192.168.2.168/img/hello.png访问所需的图片

root和alias指令

root和alias指令提供了nginx访问路径的方式,root指令会把root的值和当前访问的路径连接起来,举个栗子,如果想通过 192.168.2.165/static/ 来访问static目录下的资源

location /static/ {
  root /var/www/app/static/ ;
  autoindex off;
}

当访问路径 /static/ 的时候,nginx得到的路径为 /var/www/app/static/static/

所以需要这样配置

location /static/ {
    root /var/www/app/;
    autoindex off;
}

而aliax则不会把当前访问的路径给拼接起来,实现上面的功能代码如下

location /static/ {
  alias /var/www/app/static/ ;
  autoindex off;
}

 

标签: nginx

如果本文对您有所帮助,可以扫下面二维码给我支持,您的鼓励是我前进的动力!

微信

支付宝

目录

评论

*
*

正在加载验证码......

最新评论

  • 无评论
相关推荐
nginx报错net::ERR_CONTENT_LENGTH_MISMATCH 200
最近换了M1后配置新的开发环境,在安装配置好nginx后,启动项目,打开页面空白,通过控制台查看信息,发现了这样一个错误...
nginx日志配置
在使用nginx时候,我们经常需要查看对应的请求日志记录或者错误日志记录,nginx日志分两种,分别是访问日志和错误日志...
nginx开启http2
HTTP/2 (原名HTTP/2.0)即超文本传输协议 2.0,是下一代HTTP协议。在开放互联网上HTTP 2.0将只...