Articles of nginx

.htaccess到nginx rewite

请帮我改变这个.htaccess到rginx rewite RewriteRule ^show.php/(.*)$ show2.php?img=$1 [L] RewriteRule ^out.php/([az]{1})(.*)$ out2.php?$1=$2&%{QUERY_STRING} [L] RewriteRule ^view.php/(.*)$ view2.php?img=$1 [L] RewriteRule ^images.php/([az]{1})(.*)$ images2.php?$1=$2&%{QUERY_STRING} [L] RewriteRule ^gallery/([0-9]+)-([^/]*)/(.*)$ gallery.php?gal=$1&img=$3 [L] RewriteRule ^view/([0-9]+)-([^/]*)/(.*)$ gallery_body.php?gal=$1&img=$3 [L]

黑名单文件/ URL与Nginx重写规则

我正在使用像这样的nginx.congf重写 location / { if (!-e $request_filename) { rewrite ^/([^?]*)(?:\?(.*))? /index.php?title=$1&$2 last; } if ($uri ~* "\.(ico|css|js|gif|jpe?g|png)(\?[0-9]+)?$") { expires max; break; } } 我需要从重写规则中排除“site.com/api.php”。 有人可以指出如何做到这一点?

阻止对网站中每个文件的访问,但阻止Nginx中的index.htm

我有一个只有一个文件的网站: index.htm其中有一些Ajax链接到PHP文件。 我想让这些php文件只能通过来自这个索引文件的ajax(post和get)访问,并且阻止访问除index.htm所有文件。 Nginx可能吗? 谢谢。

nginX热链接保护失败

我有下面的configuration来禁用在nginX上的链接。 location / { root /var/www/html; index index.html index.htm; } location ~ \.(xml|jpg|jpeg)$ { root /var/www/html; valid_referers none blocked www.domain.com dev.domain.net; if ($invalid_referer) { return 444; } } 我重新加载了nginX几次,我仍然能够访问来自Facebook的图像。 我有/ var / www / html中的几个文件夹。 我错过了什么吗?

nginx反向代理 – 在HTTPS客户端断开连接时不closures上游连接

我有一个服务器,需要知道什么时候客户端closures连接。 服务器位于nginx反向代理的后面。 一切工作正常HTTP,但只要打开SSL,Nginx似乎持有上游连接HTTPS客户端已断开后打开一整分钟。 当客户端断开连接时,如何让nginxclosures上游连接? 这是我的nginxconfiguration: ssl_session_cache off; server { listen 443; ssl on; ssl_certificate server.crt; ssl_certificate_key server.key; location /find { proxy_pass http://my_upstream; proxy_ignore_client_abort off; proxy_buffering off; } }

NGINX共享服务器variables

在NGINX设置我的不同的服务器时,我发现我有很多重复的设置。 例如,此设置将在每个单独的服务器中返回: location ~ \.php { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header Host $host; proxy_pass http://127.0.0.1:8080; } 有没有办法使这个全球性,以便它与不同的服务器共享?

如何过滤NGINX access.log“生成”

有没有办法告诉NGINX不要在访问日志中生成某些信息? 我已经安装了Cometchat并每x毫秒轮询一次,这是可以的,但是如何跳过那些被写入访问日志的调用呢? 这是一个示例: 83.57.184.215 – – [10/Mar/2011:20:51:51 +0000] "GET /images/sidebarTitle.png HTTP/1.1" 200 405 "http://www.fictioncity.net/css/fictioncity.css" "Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.9.2.15) Gecko/20110303 Firefox/3.6.15" 83.57.184.215 – – [10/Mar/2011:20:51:51 +0000] "GET /usermedia/0/3/thumb/3/15fd587c25469a8e9c285dba1711b8eeedf8c68b93bd33ba5e0b8daaff565162.jpg HTTP/1.1" 200 4369 "http://www.fictioncity.net/whatsup?l=es" "Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.9.2.15) Gecko/20110303 Firefox/3.6.15" 83.57.184.215 – – [10/Mar/2011:20:51:51 +0000] "GET /images/fc-ny/banner-FC-NY.jpg HTTP/1.1" 200 98571 […]

从litespeed迁移到nginx的问题

现在我们有了新的东西。 在Red Hat 5.5上工作。 我正试图用nginx来改变它。 问题是系统上安装了不同版本的php。 如何强制nginx使用由lsws使用的那个?

脚本(bash)自动启动/重新启动nginx(如果失败)

有人可以帮我在我的机器上安装nginx吗? 我编译它(我用它来运行使用uwsgi_rs的Django应用程序)。 它运行正常,但我必须手动启动它。 我如何设置它来自动运行? 如果它被杀死了,再次启动(自动)? 我在说nginx和uwsgi …

清理Nginxconfiguration:一个Rails应用程序,多个域,redirect到非www域

我在Nginx上托pipe一个Rails应用程序,可以通过一组定义的域访问它。 对于这些域中的每一个,我也想转发www到非www。 现在我的configuration文件看起来像这样: server { listen 80; server_name www.domain1.com; rewrite ^ http://domain1.com$uri permanent; } server { listen 80; server_name www.domain2.com; rewrite ^ http://domain2.com$uri permanent; } server { listen 80; server_name www.domain3.com; rewrite ^ http://domain3.com$uri permanent; } server { listen 80; server_name domain1.com domain2.com domain3.com; root /home/rails/apps/myapp/current/public; passenger_enabled on; } 因此,我必须重复将www转发到非www的部分,并将该域作为server_name添加到最后一个server {}指令。 现在我有大约15个这样的域configuration,还有更多的来,这意味着维护这个列表会变得越来越麻烦。 我真正喜欢的是这样的:(伪代码) %domains = […]