nginx在尝试缓存css/js等时给出403
当我尝试为用户缓存静态文件时,使用nginx在尝试缓存css/js等时给出403,nginx,Nginx,当我尝试为用户缓存静态文件时,使用 location ~* \.(js|css|png|jpg|jpeg|gif|ico|bmp|ttf|tof|svg|swf)$ { expires max; access_log off; error_log off; } 静态文件不会加载(访问时会禁用403),因此我的站点加载时不会加载任何这些静态文件。当我把那部分注释掉时,一切都正常工作了 有人能解释为什么会发生这种情况吗?可能是因为您没有在外部
location ~* \.(js|css|png|jpg|jpeg|gif|ico|bmp|ttf|tof|svg|swf)$ {
expires max;
access_log off;
error_log off;
}
静态文件不会加载(访问时会禁用403),因此我的站点加载时不会加载任何这些静态文件。当我把那部分注释掉时,一切都正常工作了
有人能解释为什么会发生这种情况吗?可能是因为您没有在外部上下文(例如服务器块)中指定任何根指令 如果将根指令添加到服务器块或位置块,并带有指向静态文件夹的路径,则该指令将被修复:
server{
.
.
.
root /path/to/static/folder;
location ~* \.(js|css|png|jpg|jpeg|gif|ico|bmp|ttf|tof|svg|swf)$ {
# or add a root directive here
root /path/to/static/folder;
expires max;
access_log off;
error_log off;
}
}
这可能是因为您没有在外部上下文(例如服务器块)中指定任何根指令 如果将根指令添加到服务器块或位置块,并带有指向静态文件夹的路径,则该指令将被修复:
server{
.
.
.
root /path/to/static/folder;
location ~* \.(js|css|png|jpg|jpeg|gif|ico|bmp|ttf|tof|svg|swf)$ {
# or add a root directive here
root /path/to/static/folder;
expires max;
access_log off;
error_log off;
}
}
你的问题不清楚。可能会发布一个链接到您的完整配置。另一方面,这些Nginx配置的静态文件列表在网络上已经过时了将近两年。现在发生的是,每当我通过regex将这些文件中的任何一个作为目标时,它都会给出403 Foridden错误。我将查询替换为\.css$,现在图像加载正常,只是css给出了403错误。经过更多测试,它甚至不必是regex-我为主wordpress css文件创建了一个完整的路径,这仍然是403。我把它改成了0777,并把nginx使用的集团www数据变成了所有者。你的问题不清楚。可能会发布一个链接到您的完整配置。另一方面,这些Nginx配置的静态文件列表在网络上已经过时了将近两年。现在发生的是,每当我通过regex将这些文件中的任何一个作为目标时,它都会给出403 Foridden错误。我将查询替换为\.css$,现在图像加载正常,只是css给出了403错误。经过更多测试,它甚至不必是regex-我为主wordpress css文件创建了一个完整的路径,这仍然是403。我将其修改为0777,并将nginx正在使用的组www数据输入到所有者中