我的服务器返回以下标题: Cache-Control:no-cache Connection:keep-alive Date:Thu, 07 Jul 2011 10:41:57 GMT Expires:Thu, 01 Jan 1970 00:00:01 GMT Last-Modified:Thu, 07 Jul 2011 08:06:32 GMT Server:nginx/0.8.46` 我希望我所服务的内容不被caching,所以我正在寻找一种方法来返回包含发起请求的date时间的Last-Modified头。 像现在()…
我正在尝试根据文件的扩展名重写请求uri,然后从uri中只提取文件名并将其存储在另一个文件夹中。 这里的问题是文件名没有预定义variables,可用的variablesuri , request_uri和request_filename会给出完整的uri。 server{ set $file_folder D:/nginx-1.0.15/imageAll/; location ~*+.(gif|jpg)$ { try_files $uri @imgstore; } location @imgstore { proxy_pass $file_folder$request_filename; proxy_store on; proxy_temp_path /nginx-1.0.15/images/; proxy_store_access user:rw group:rw all:r; } } 我能做的最好的办法是得到扩展名.jpg或.gif,当我把$1代替$request_filename这样的时候: location @imgstore { proxy_pass $file_folder$1; } 所以,我想知道: 如何从请求中获取文件名? 将图像从文件夹存储到另一个文件是否正确?
我正在configuration一个Nginx服务器,以便作为一个反向代理服务一个Django应用程序(在Gunicorn上运行)。 我的问题是,我希望我的网站使用HTTPS进行保护,所以我希望我的Django应用程序能够确定连接是否安全。 我正在使用Django 1.4,所以我有权访问SECURE_PROXY_SSL_HEADER ,我将其configuration为SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTOCOL', 'https') 。 现在,正如文档中提到的那样,我需要确保Nginx只在需要的时候添加头部,并在不需要的时候去掉头部。 因为我希望我的Nginxconfiguration尽可能干,我宁愿没有两个configuration文件(一个用于端口80和一个用于端口443)。 因此,我想知道Nginx是否有办法确定连接是否为https,并相应地添加(或剥离)标题。
我在haproxy后面运行nginx(在同一台服务器上运行)。 我已经configurationhaproxy在nginx上使用一个简单的html文件来validation服务已经启动,因为我没有/想在这个主机上有一个有效的“/”URL。 Nginx不支持OPTIONS请求types(据我所知),这是haproxy使用的默认值,所以我把它改成了GET。 由于我在nginx中打开了访问日志,因此我在访问日志中获取了所有这些正常运行时间轮询请求。 有没有办法,我可以configurationNginx忽略某些请求,并跳过日志logging? 这是haproxy的后端: backend static_http option httpchk GET /test.html option redispatch balance roundrobin #fullconn 1000 server w1_static www1:81 check port 81 inter 2000 以下是我在nginx日志中看到的内容: 127.0.0.1 – – [24/Jul/2009:19:28:22 +0000] "GET /test.html HTTP/1.0" 200 12 "-" "-" 127.0.0.1 – – [24/Jul/2009:19:28:24 +0000] "GET /test.html HTTP/1.0" 200 12 "-" "-" 127.0.0.1 – – [24/Jul/2009:19:28:26 […]
我试图复制一个特定的nginx服务器收到的stream量到两台服务器。 目标不是负载平衡,而是在所有nginx服务器上重放相同的input。 例如:Nginx收到一个HTTP POST。 我想发送这个相同的POST到其他服务器。 **更新** 情况很简单,也不复杂。 我只需要重新发送POST数据(或GET或任何请求数据)到另一个服务器IP(它也运行一个nginx实例)。 只是它。 用户 – >发布数据 – > NGINX INSTANCE —- REDIRECT —>服务器1和服务器2
我有一堆gzip的日志文件,我想用nginx来服务。 我希望他们能够被浏览器自动夸大。 我假设这意味着我需要nginx将文件作为.gz文本/平原标题。 这可以在apache中完成,例如: <FilesMatch *.gz> ForceType text/plain </FilesMatch>
我想尝试在nginx中设置工作进程,但是却抛出了这个错误: nginx:[emerg]“worker_processes”指令在/ etc / nginx / sites-enabled / default中不允许:1 nginx:configuration文件/etc/nginx/nginx.conftesting失败 这是我的代码 worker_processes 4; worker_rlimit_nofile 8192; worker_priority 0; worker_cpu_affinity 0001 0010 0100 1000; server { server_name –.–.–.—; listen 80; #root /var/www/devsites/wordpress/; root /var/www/devsites/trademob/tm-hp-v2/; 我能做些什么来解决这个问题?
我希望nginx停止听80端口。我只find有bug的人,但没有有意做的文档。 我不能禁用它,我也读: #listen 80; ## listen for ipv4; this line is default and implied 英语不是我的母语,但我明白“暗示”意味着这不需要声明,所以即使它在评论中,服务器仍然听80.我怎样才能禁用? 谢谢。
我正在尝试以下重写规则: location / { index index.php index.html; rewrite ^/test$ /test.php break; } 我也有: location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; include fastcgi_params; fastcgi_param SCRIPT_FILENAME /home/sites/default$fastcgi_script_name; fastcgi_index index.php; } 正常的PHP文件工作正常,但似乎我的redirect只是下载我redirect到的PHP文件,而不是parsing它。 我错过了什么? 我得到的文件加载,而不是下载通过把fastcgi的东西在第一个位置块,但它仍然没有parsing为PHP。
我想通过Munin监测NGinx的统计数据,但是Nginx插件没有显示数据。 是否有可能诊断为什么只有一个munin nginx插件似乎工作? nginx munin http://i46.tinypic.com/b8rbir.gif 服务器在CentOS 5.3上运行