霍俊涛的博客 霍俊涛的博客

记录精彩的程序人生

目录
Nginx配置静态资源访问
/  

Nginx配置静态资源访问

在使用nginx做静态资源服务器的时候,配置完成后通过浏览器访问一直报404 Not Found错误

nginx配置信息如下

server {
        listen  80;
        server_name  localhost;
        location / { 
            root   html/light;
            index  index.html index.htm;
        }
        location /aaa/ {
	    root    /home/hjt/static/;
            #alias   /home/hjt/static/;
            autoindex on;
        }

所有文件放在 /home/hjt/static/下面

root 会在配置的目录后跟上URL,组成对应的文件路径,即访问地址为
http://huojt.top/aaa/
nginx走的文件路径为:
/home/hjt/static/aaa/
而我们需要走的是 /home/hjt/static/

Nginx提供弄个了另外一种静态路径配置:alias配置
官方root配置

Sets the root directory for requests. For example, with the following configuration
location /aaa/ {
    root /home/hjt/;
}
The /home/hjt/aaa/top.gif file will be sent in response to the “/aaa/top.gif” request

官方alias配置

Defines a replacement for the specified location. For example, with the following configuration
location /aaa/ {
    alias /home/hjt/static/;
}
on request of “/aaa/top.gif”, the file /home/hjt/static/top.gif will be sent.

root响应的路径:配置的路径+完整访问路径(完整的location配置路径+静态文件)
alias响应的路径:配置路径+静态文件(去除location中配置的路径)

最后解决方法

解决办法

location /aaa/ {  
     alias /home/hjt/static/;  
}

注意:使用alias时目录名后面一定要加 “/”;一般情况下,location /中配置 rootlocation /* 中配置 alias

在使用nginx做静态资源服务器的时候,配置完成后通过浏览器访问一直报403 错误

nginx配置文件中gg回到最顶部 修改权限 修改user nobody 为 user root

#user nobody;
user root;

标题:Nginx配置静态资源访问
作者:HJTGit
地址:https://blog.huojt.top/articles/2020/07/24/1595580756842.html