我有一个反向代理,我想要logging请求正文当前看起来谎言 log_format my_tracking'“$ request”“$ http_soapaction”“$ http_content_type”“$ request_body”'; 这是logging一切奇妙,现在我想logging这些请求的响应正文变得更加困难。 我一直在尝试使用Lua模块(我已经编译进Nginx 1.3.14),但是我找不到如何做到这一点的任何例子,我肯定会扩展我的技术能力,所以任何帮助都会被大大的接受。 谢谢,将编辑回复引用报告
基本上我想设置与Apache的nginx,但我想nginx服务的静态内容,如JavaScript,样式表,媒体文件等,但我希望PHP传递到端口8080上的Apache监听。 使用以下我可以得到nginxredirectPHP请求到端口8080监听的Apache location ~ \.php$ { proxy_pass http:127.0.0.1:8080/; } 但我怎么能告诉nginx服务所有静态数据,如.css .js .flv。 PNG .gif .jpg等
我一直在关注这个教程: http://www.exratione.com/2012/12/websockets-over-ssl–haproxy-nodejs-nginx/ …但我一直有问题通过HAProxy通过SSL连接到Nginx。 我得到Error 107 (net::ERR_SSL_PROTOCOL_ERROR): SSL protocol error. 在Chrome之后的HTTP到HTTPSredirect和(Error code: ssl_error_rx_record_too_long)在Firefox中。 我认为这与文件串联来创build.pem文件有关。 我试过的东西: 禁用HAProxy并直接使用SSL来访问Nginx 在HAProxy上不使用SSL来访问Nginx,这也可以 按照以下步骤创build新的SSL证书: http : //wiki.nginx.org/HttpSslModule 检查SSL证书文件的权限 我的Nginxconfiguration: server { listen 8080 ssl; ## listen for ipv4; this line is default and implied root /usr/share/nginx/www; index index.html index.htm; server_name localhost; ssl_certificate /etc/ssl/certs/server.crt; ssl_certificate_key /etc/ssl/private/server.key; ssl_session_timeout 5m; ssl_protocols SSLv3 TLSv1; ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP; […]
我有.NET Web应用程序在防火墙后面的IIS上运行。 应用程序正在使用Windows身份validation(NTLM)来validation用户。 我需要使这个应用程序可以从互联网访问,所以: 当用户尝试访问应用程序时,会显示login表单,由[反向代理]生成。 用户inputlogin名和密码并提交表格。 [反向代理]将外部凭据与Windows凭据匹配,我们可以将Windows域login名和密码存储在某个数据库中。 [反向代理]使用提供的凭证提供对Web应用程序的访问。 为了清楚起见,我不希望NTLM传递给用户,反而需要[Reverse Proxy]对用户的行为讲IIS。 用户可以input不同的凭证,可以使用其他authenticationtypes(Google,FB等),[Reverse Proxy]将外部帐户与内部帐户匹配。 例如,员工将configuration他们想要用来访问Intranet门户的外部帐户。 我有什么select? 我可以使用Nginx或Squid来实现这种情况下自定义模块/插件的帮助?
我使用CURL来testing我的nginx服务器的HEAD请求。 被提供的文件是一个简单的PHP文件。 如果我使用GET : $ curl -XGET http://test.com/phpinfo.php -I HTTP/1.1 200 OK Date: Tue, 09 Apr 2013 00:35:35 GMT Content-Type: text/html Connection: keep-alive Content-Length: 72080 但是,如果我使用HEAD : $ curl -XHEAD http://test.com/phpinfo.php -I HTTP/1.1 200 OK Date: Tue, 09 Apr 2013 00:37:00 GMT Content-Type: text/html Connection: keep-alive 为什么如果请求是HEAD ,nginx会省略Content-Length头部? PHP脚本非常简单,并且不以任何特殊的方式响应HEAD 。 有没有我可以打开Nginx中的任何选项,以便它将发送HEAD的Content-Length ? 相关的nginx信息: nginx version: […]
我看到迹象表明这应该起作用,所以我希望我错过简单的东西。 我们有两个nginx“服务器”,前面有一个proxy_passcaching,后面有一个SSI服务器。 如果我在请求中直接使用If-Modified-Since标头直接访问SSI服务器,它将会返回一个304-Not Modified响应,这正是我们想要的。 但是我不能让proxy_passcaching服务器返回一个304-Not Modified的任何东西。 我应该能够得到proxy_pass返回一个304 – 没有修改? 有没有其他人有它可以共享的configuration工作? 或者你可以发现我的configuration中的问题? # this is the cache in front server { listen 8096; server_name _; proxy_buffering on; location /assets { proxy_pass http://localhost:8095; proxy_cache my-cache; proxy_cache_valid 200s; if_modified_since before; } } server { listen 8095; server_name _; root /var/www/; location / { deny all; } location /assets […]
我试图自动化我的部署过程,我有这个奇怪的问题。 我的Web应用程序的每个新版本都放置在/var/www/releases/{timestamp} 。 在执行git clone到该目录后,我build立了一个符号链接到/var/www/current 。 然后我执行service nginx reload 。 这种方法被许多部署工具所使用,并且被深思熟虑。 问题是,当我去网页浏览器查看更改并刷新多次,我可以看到两个版本(当前和以前)交替几秒/分钟。 一段时间后,它只能稳定在当前的版本。 有人知道可能是什么原因造成这个问题吗? 谢谢
上游指令是否可以指定一个HTTP代理来路由这些请求? 有些东西是: upstream external { server example.com; proxy localhost:3128; }
我正在尝试为两个IIS Web服务器build立一个基于NGINX的简单软件负载平衡器。 这里是我为负载均衡创build的NGINXconfiguration文件: http { include /etc/nginx/mime.types; default_type application/octet-stream; ##### # Definition von Load Balancing Cluster fur Share Point Farm ###### upstream SPcluster { ip_hash; server 172.22.1.134:80 weight=10 max_fails=3 fail_timeout=15; server 172.22.1.133:80 weight=10 max_fails=3 fail_timeout=15; } server { listen 172.22.9.100:80; location / { proxy_pass http://SPcluster; } } log_format main '$remote_addr – $remote_user [$time_local] "$request" ' […]
我想服务Django的pipe理静态文件,但似乎没有工作,下面是我的nginxconfiguration: upstream django { server 127.0.0.1:8000; } server { listen 4321; server_name localhost; charset utf-8; access_log /var/log/nginx/local-access.log; error_log /var/log/nginx/local-error.log; client_max_body_size 75M; include /etc/nginx/mime.types; location /static/ { alias /home/vaibhav/TRAC/bright-coupons/brightCoupons/brightCouponsApp/static/; } location / { uwsgi_pass django; include /etc/nginx/uwsgi_params; } } 我不明白我的模板工作正常,但不是Djangopipe理面板…我已经使用python manage.py collectstatic命令,现在所有的Django静态文件都在我的应用程序的静态文件夹。 Nginx的访问日志: 127.0.0.1 – – [14/May/2013:16:44:24 +0530] "GET /bcadmin/brightCouponsApp/static/admin/css/base.css HTTP/1.1" 500 5 "http://localhost:4321/bcadmin/" "Mozilla/5.0 (X11; […]