Nginx的加载失败的静态文件后,我使用的位置
问题描述:
我已经配置了Nginx的,你可以看到他们宣布:Nginx的加载失败的静态文件后,我使用的位置
server {
listen 443 ssl;
ssl on;
ssl_certificate /etc/nginx/ssl/bundle.crt;
ssl_certificate_key /etc/nginx/ssl/privateKey.key;
location /webmin/ {
proxy_pass http://127.0.0.1:10000;
}
server {
listen 80;
listen 443 ssl;
ssl_certificate /etc/nginx/ssl/bundle.crt;
ssl_certificate_key /etc/nginx/ssl/privateKey.key;
server_name localjob.it;
access_log off;
location/{
alias /webapps/sitoweb/;
}
现在,如果我去mysite.com在页面加载与CSS,但如果我添加:
location ~* \.(css|js|gif|jpe?g|png)$ {
expires 168h;
add_header Pragma public;
add_header Cache-Control "public, must-revalidate, proxy-revalidate";
}
现在,如果我去mysite.com页面无法加载CSS。 我不明白原因!
答
Nginx location
s独占,因此您的别名inslide根位置不适用于另一个location
s。这也有点误用,只需在server
区块中使用root
指令即可。
server {
listen 80;
listen 443 ssl;
ssl_certificate /etc/nginx/ssl/bundle.crt;
ssl_certificate_key /etc/nginx/ssl/privateKey.key;
server_name localjob.it;
access_log off;
root /webapps/sitoweb;
location ~* \.(css|js|gif|jpe?g|png)$ {
expires 168h;
add_header Pragma public;
add_header Cache-Control "public, must-revalidate, proxy-revalidate";
}
}
它的工作,但我有另一个问题。我已经在同一个服务器声明中添加了另外一个位置: 'location/django/{ proxy_pass http://127.0.0.1:8001; proxy_set_header X-Forwarded-Host $ server_name; proxy_set_header X-Real-IP $ remote_addr; add_header P3P'CP =“ALL DSP COR PSAa PSDa OUR NOR ONL UNI COM NAV”'; add_header'Access-Control-Allow-Origin''*'; add_header'Access-Control-Allow-Headers''Content-Type,Accept'; }' 现在,我的网站中的所有CSS都被加载,除了位于/ django中的css /像www.mysite.com/django/myfile.css – ddtnero 2014-09-05 12:48:26