我有以下的负载平衡configuration: upstream upstream { ip_hash; keepalive 1000; server 10.10.10.1; server 10.10.10.2; server 10.10.10.3; } server { listen 443; server_name example.com; ssl_certificate /etc/nginx/certs/cert.crt; ssl_certificate_key /etc/nginx/certs/cert.key; ssl on; ssl_session_cache builtin:1000 shared:SSL:10m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4; ssl_prefer_server_ciphers on; location / { client_max_body_size 80m; proxy_http_version 1.1; proxy_set_header Connection ""; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For […]
2010/09/19 14:52:07 [error] 1419#0: *10220 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: […], server: […], request: "POST /[…] HTTP/1.1", upstream: "fastcgi://unix:/server/php-fpm.sock:", host: "[…]", referrer: "[…]" 这是我随机收到的错误。 95%的时间我的设置完美的工作,但有一段时间,我得到了502 3-4的后续请求。 正如你所看到的,我在服务器和PHP进程之间使用了Unix套接字,也正确设置了FastCGI params(SCRIPT_FILENAME)等。 我能做些什么来加强这些服务之间的联系? 非常感谢你提前。
我目前在我的服务器上为我的网站运行Nginx + PHP-FPM。 今天当我运行Apache“ab”工具时,我注意到可怕的响应时间,平均5595和最大17415毫秒的响应。 我的Nginxconfiguration文件: worker_processes 4; error_log /var/log/nginx/error.log info; events { worker_connections 1024; use epoll; multi_accept on; } http { server_name_in_redirect off; server_names_hash_max_size 10240; server_names_hash_bucket_size 1024; include mime.types; default_type application/octet-stream; index index.html index.htm index.php; server_tokens off; sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 15; gzip on; gzip_vary on; gzip_disable "MSIE [1-6]\."; gzip_proxied any; gzip_http_version […]
我最近从几个PHP和Django站点从Apache转换到nginx / php-fpm。 在某些时候,一些用户开始报告他们不能访问网站,并得到“服务器未find”。 他们说: 我试图打开我的电脑网站,并得到“服务器没有find”。 如果我在工作中通过其他电脑,或通过我的电话,一切都很好。 我的IP是:xxx.xxx.xxx.xxx 我在错误日志中使用了grep来查找这些IP,但什么都没有。 看来,当用户被“阻止”这种方式,他不能访问该网站了 – 它并没有被自己治愈。 另一方面,每天有超过3万人访问这些网站,没有任何问题。 这些被封锁的东西似乎没有什么特别之处 – 它们使用不同的浏览器,具有不同的子网。 它没有任何意义。 你能给出如何诊断和解决这个问题的build议吗? 我的configuration之一是: server { server_name example.net; root /var/www/example/httpdocs; index index.php; charset utf-8; error_log /var/www/example/nginx_error.log; # banned users include /var/www/example/ban.conf; # rewrite rule location / { if (!-e $request_filename) { rewrite ^(.*)$ /index.php?path=$1 last; } } location /admin { […]
我使用nginxcaching来cachingHTML和资产。 我如何validationnginx实际上是否caching资源并从caching中提供?
我曾经有一个CPanel / Plesk服务器,所以我没有通过命令行设置电子邮件等。 我不想要一个电子邮件pop3帐户或邮件服务器。 只是想转发“[email protected]”到“[email protected]” – 我可以使用nginx做到这一点? ķ
我试图在我的生产VPS上用PHP5和MySQL设置nginx。 我selectnginx的原因是因为VPS不是很高的规格。 nginx已经安装,并且正在成功地为静态页面提供服务。 现在我试图安装PHP5,并遇到麻烦。 遵循本指南: http : //www.zalas.eu/setting-up-a-php-development-environment-with-nginx-on-ubuntu-1104 它说运行这个命令来安装PHP5: sudo apt-get install php5-fpm php5-cli php5-common php5-curl php5-gd \ php5-mcrypt php5-mysql php5-pgsql php5-sqlite php5-tidy php5-xmlrpc \ php5-xsl php5-intl php5-imagick php5-xdebug php-apc php-pear 当我这样做,我得到这个输出: root@lvps92-60-122-235:/tmp# sudo apt-get install php5-fpm php5-cli php5-common php5-curl php5-gd \ > php5-mcrypt php5-mysql php5-pgsql php5-sqlite php5-tidy php5-xmlrpc \ > php5-xsl php5-intl php5-imagick php5-xdebug […]
在auth_request nginx模块返回403后是否可以返回一个403响应代码,以便向用户显示一个禁止的指令,而不是500个内部服务器错误,这是不是很有用的信息。
以前我在我的CodeIgniter网站上使用运行Apache的linode VPS。 今天我安装了nginx,我的网站登陆页面即将到来,但其他使用htaccess重写URL的页面并没有到来。 这是我的htaccess, RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php/$1 什么是我的htaccess nginx equalent? 在codeigniterconfiguration和应用程序中,我还需要做什么修改? 对于codeigniterconfiguration中的URI协议,我正在使用, $config['uri_protocol'] = 'PATH_INFO'; 这将与Nginx的工作?? ..
我想将admin子目录redirect到一个子域。 我试图为Nginx创build这个规则,但它不工作: location ^~ /admin/ { rewrite ^/admin(.*) http://admin.example.com$uri permanent; } 谢谢你问候