Articles of nginx

nginx wordpress重写规则与stub_status模块冲突

我有一个问题,当我试图启用stub_status模块在我的WordPress的网站。 以下是我在nginx.conf中的configuration。 location /status { stub_status on; access_log off; } if (!-e $request_filename){ rewrite ^(.+)$ /index.php?q=$1 last; } 我的问题是我可以访问状态页面,如果我删除了WordPress的重写规则。 如果存在重写规则,则状态页面不起作用。 有谁知道如何解决这个问题?

python中有没有和php5-cgi等价的东西?

nginx不允许直接执行外部程序,所以为了运行CGI,你需要运行一个独立的fcgi后端并用fastcgi_pass指令连接它。 对于PHP很容易,例如使用spawn-fcgi和php5-cgi ,但我还没有发现任何类似的Python。 我知道有特定的应用程序和框架的fcgi实现,但是,有没有什么可以运行普通的Python CGI(用通用的CGI模块实现的CGI)呢?

PHP 5.3.8不加载模块xapian.so

我在Fedora 16上有web服务器nginx + php-fpm(PHP 5.3.8),全部安装了标准回购的yum。 我正在尝试使用xapian.so模块,所以我将PHP-xapian和extension = xapian.so添加到/etc/php.d中的phpconfiguration文件中。 重新启动php-fpm后,在命令行中执行php -m即时获取错误 PHP警告:PHP启动:无法加载dynamic库'/usr/lib64/php/modules/xapian.so' – /usr/lib64/php/modules/xapian.so:未定义符号:zend_error_noreturn在行0上的未知 我的第一个想法是,它是文件位置的问题,但是xapian.so是它应该在哪里/usr/lib64/php/modules/xapian.so 有没有人有与运行在PHP 5.3上的XAPI模块类似的问题? 如何使其工作? 编辑:我试图编译XAPIAN 1.2.8和从回购版本1.2.7安装都无法正常工作。 但版本1.2.5编译加载xapian模块没有问题。 那么xapian> 1.2.7和php 5.3.8有什么问题?

Tomcatpipe理器403在Nginx后面

这已经让我疯狂了好几天了。 要么我正在做一些完全错误的,真正愚蠢的,或者是它们的组合。 我在Ubuntu 11.10上。 我运行了以下命令: sudo apt-get install nginx sudo apt-get install tomcat7 tomcat7-admin 以下是我的tomcat-users.xml文件: <?xml version='1.0' encoding='utf-8'?> <tomcat-users> <role rolename="admin" /> <role rolename="manager" /> <user username="admin" password="secret" roles="admin,manager" /> </tomcat-users> 我设置了下面的nginxconfiguration: server { listen 80; server_name tomcat.example.com; location / { proxy_pass http://localhost:8080; proxy_set_header Authorization "Basic YWRtaW46c2VjcmV0"; } } 其中YWRtaW46c2VjcmV0是admin:secret在Base64 admin:secret编码。 访问http://tomcat.example.com工作正常; 然而,每当我尝试访问http://tomcat.example.com/manager/html我从Tomcat获得一个403页。 我已经尝试重新启动nginx和tomcat无济于事。 当我尝试进入Tomcatpipe理器时,下面出现在我的Nginx访问日志中: […]

Nginx:正确使用limit_req_zone和limit_req

我有2个网站在VPS上运行。 他们的目的是分享音乐文件和发布新闻。 他们两人都使用wordpress。 我正在尝试的是我想防止黑客淹没web服务器,并强调服务器,使其崩溃。 问题是, 使用 limit_req_zone和limit_req我的网站变得非常缓慢 。 浏览Wordpress控制面板需要很长时间。 我试图改变价值观,但并没有多大改善。 我猜这个问题是Wordpress,因为它是我在前端和后端使用的唯一脚本。 这是最后一个似乎比其他人更有反应的设置: limit_req_zone $binary_remote_addr zone=flood:5m rate=10r/m; location ~ \.php$ { limit_req zone=flood burst=100 nodelay; } 什么是我应该使用的最佳值(wp)? 我希望网站有正常的行为,另一方面阻止死气沉沉的人。 另一个问题,安全和足够使用limit_req只在PHP文件?

世界各地的50人打networking应用程序与50人在同一局域网? 有什么区别?

在我的办公室,我们使用一个局域网(通过Comcast连接到互联网),30-50人同时访问了一个networking应用程序(在Heroku上)。 服务器的回应就好像被5万人击中一样。 我是不是在吠叫错误的树木,或者如果一个办公室networking上的50个人同时点击一个应用程序,而全世界有50个人在使用这个程序,那么它会产生什么影响呢? 对于这样一个模糊的问题抱歉,但是这只是我想到的一种可能性。 提前致谢。

把haproxy / varinish放在nginx之后的目的是什么?

在某些设置中,我看到有人把haproxy / varinish放在nginx后面,并将请求转发到后端(例如Passenger) 例如 Nginx <—> HaProxy / Varinish <—-> Passenger / Apache 我不明白为什么不把HaProxy / Varinish直接放在边缘,有什么优势?

Nginx子域没有路由到Node.js

我有一个我想通过Nginx代理到Node.js的子域。 domain.tld目前是通过/opt/nginx/conf/nginx.conf路由的标准方式。 但是,我也想要subdomain.domain.tld路由到domain.tld:8000 。 为此,我将以下内容放在/etc/nginx/sites-available/subdomain.domain.tld.conf : http{ server { listen 0.0.0.0:80; server_name subdomain.tld.com; access_log /var/log/nginx/subdomain.domain.log; location / { proxy_pass http://127.0.0.1:8000; } } } Nginx似乎启动正常。 子域的名称服务器configuration正确。 我究竟做错了什么? 预先感谢任何帮助。 编辑:另外,我将文件从sites-available/到sites-enabled/ 。 编辑: /opt/nginx/conf/nginx.conf的确切内容: http://pastebin.com/wZJFPx7H 编辑:从nginx开始的错误消息: Starting nginx: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use) nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already […]

我可以如何设置一个参数在nginx下的参数?

在Apache下我可以很容易地设置索引。 喜欢: DirectoryIndex index.php?parameter = xyz 我怎样才能在nginx中设置? 我曾试过:index index.php?parameter = xyz但是我得到了一个403错误。

nginx位置块,当不匹配expression式时redirect

我们正在从example.com/app1的一组位置转换,我们将redirect到/ app2。 但是,我们希望保持app1的某些URI为活动状态,例如,example.com/app1/111和example.com/app1/222不应redirect。 这应该怎么做? 位置块不接受像“!〜”这样的前缀,这将使得它变得容易, location !~ /app1/(111|222) { rewrite /app1 /app2; } 在位置模式匹配方面不起作用。 我已经尝试过了(以及/ app1 /之后的所有东西),但它也不起作用: location ~ /app1/!(111|222) { rewrite /app1 /app2; } build议?