我们正在尝试使用nginx作为代理。我们的应用程序有一个pylons框架,它使用paster来提供资源。
以下是我们对nginx的配置:
server {
listen 80;
server_name www.vvidiacom.com;
access_log /var/log/nginx/localhost.access_log main;
client_max_body_size 1500M;
root /myhome/myapp/myapp/public;
location /web {
proxy_pass http://192.168.1.124:8080;
proxy_set_header X-Real-IP $remote_addr;
proxy_redirect off;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#proxyPassReverse /web http://myserver:8080;
}
location /media {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://192.168.1.124:8080/media;
#proxyPassReverse /web http://myserver:8080;
}
#location ~*/(appearance)/ {
# root /myhome/myapp/data;
#proxy_set_header X-Forwarded-Host $host;
# proxy_set_header X-Forwarded-Server $host;
# proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#proxyPassReverse http://myserver:8080;
# break;
# }
# location ~*(/images\/media|images\/podcasts) {
# root /myhome/myapp/data;
# proxy_set_header X-Forwarded-Host $host;
# proxy_set_header X-Forwarded-Server $host;
# proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#proxyPassReverse http://myserver:8080;
# break;
# }
# location ~*/(styles|scripts|images)/ {
#root /myhome/myapp/myapp/public;
# proxy_set_header X-Forwarded-Host $host;
# proxy_set_header X-Forwarded-Server $host;
# proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#proxyPassReverse http://myserver:8080;
# expires max;
# add_header Cache-Control "public";
# break;
# }
#location /__myapp_serve__ {
# alias /myhome/myapp/myapp/data/media;
# internal;
#}
}
不知何故css文件和图像没有送达。
我们尝试了以下机制: 1.将Nginx配置为纯代理,其中所有资源都将由paster提供。 2.配置Nginx,使得nginx提供静态资源,而其余的则通过粘贴提供。 两者都不适合我们。不知怎的,静态资源(如css,images)没有得到传递。我们的场景如下:
文件路径实际上是由URL中的网址加上前缀: 因此,如果URL是/ web / data / images,那么实际路径将是$ ROOT / data / images。
我们之前使用的是选项1(如上所述,工作正常)。
我们是nginx的新手。我们真的很感激,如果你能告诉我们我们做错了什么以及上述原因是什么。
期待您的回复和帮助......