Articles of nginx

nginx + Apache的443端口的问题

这是我的nginxconfiguration端口443: server { listen *:443; server_name site.com; ssl on; ssl_protocols SSLv3 TLSv1; ssl_certificate /www/certs/site.com.crt; ssl_certificate_key /www/certs/site.com.key; access_log /var/log/nginx.site.com-access_log; location ~* .(jpg|jpeg|gif|png|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|tar|wav|bmp|rtf|swf|ico|flv|txt|xml|docx|xlsx)$ { root /www/site.com/; index index.html index.php; access_log off; expires 30d; } location ~ /.ht { deny all; } location / { proxy_pass http://127.0.0.1:81/; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-for $remote_addr; proxy_set_header Host $host; proxy_connect_timeout 60; […]

我怎样才能优化NGINXconfiguration?

这是一个虚拟主机的configuration。 我必须将所有的HTTP请求redirect到HTTPS和所有的website.it到www.website.it 我能优化一些东西吗? server { listen 80; server_name website.it www.website.it; if ($host = 'website.it' ) { rewrite ^(.*)$ https://www.website.it$1 permanent; } rewrite ^(.*)$ https://$host$1 permanent; } server { listen 443; server_name website.it www.website.it; ssl on; ssl_certificate /etc/ssl/nginx/www.website.it/www.website.it.crt; ssl_certificate_key /etc/ssl/nginx/www.website.it/www.website.it.key; root /home/nginx/vhosts/website.it/web; access_log /home/nginx/vhosts/website.it/log/access.log; error_log /home/nginx/vhosts/website.it/log/error.log; if ($host = 'website.it' ) { rewrite ^(.*)$ https://www.website.it$1 permanent; […]

nginx如何支持cgi?

用apache,我只是把我的二进制文件放在cgi-bin ,那么nginx怎么样? 它是否支持cgi ?

简单的URIredirect/ Nginx中的别名

请问,如何在Nginx中做这个简单的操作: 我希望每个uris请求都是这样的: http : //example.com/adm或者: http : //example.com/adm转到wordpresslogin页面:wordpress / wp-login.php(wordpress安装在文件夹“wordpress”)。 我试过了: location /adm/ { alias wordpress/wp-login.php; } location /adm { alias wordpress/wp-login.php; } 和: rewrite ^/adm$ wordpress/wp-login.php; 但没有成功…更糟糕的是,有些规则,比如“rewrite / adm wordpress / wp-login.php” (这工作!),自动redirect一些请求,一旦用户login,到默认的WordPress的pipe理页面…我不知道为什么… 以防万一有人问,这是我的发球局。 文件: server { server_name www.example.com; rewrite ^ http://example.com$request_uri? permanent; } server { server_name example.com; access_log /var/log/nginx/example.com.access; error_log /var/log/nginx/example.com.error; root /var/www/example.com; […]

nginx作为龙卷风代理:301redirect

我有nginx作为龙卷风的前端工作(这是运行基于Flask框架的应用程序)。 Nginx正在8080端口上运行。 但是,当Flask产生“301redirect”时,它不考虑8080端口。 我得到一个redirect到80端口,我没有听任何东西。 这是我的网站的nginxconfiguration: server { listen 8080; server_name localhost; location ~* ^.+.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js)$ { expires off; } location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Port 8080; proxy_pass http://127.0.0.1:5000; } } 有没有办法纠正这个问题?

将整个服务器数据移到另一台服务器

我想问问是否可能。 我最近为我的网站订购了一个新的专用服务器。 服务器与现在的稍有不同。 两者都是四核心的Xeon,不同的是目前的一个是500GB的硬盘 – 新的是160GB的硬盘(但我没有消耗50GB)。 接下来是内存,旧的是24GB,新的是12GB内存。 两者都是使用yum更新的最新补丁的Centos 5.6。 我想知道是否有可能备份和恢复所有包括nginx,php53u-fpm,mysql,包括所有configuration和数据库+网站文件。 这是可能的备份和恢复没有任何问题? 我想一口气把所有的东西都支撑起来,(不是一个接一个的把它一个接一个地导入)。

nginx重写规则来replace.php结尾符合/

基本上,我想要“.php”replace为“/”。 我试图把我的规则放在fastcgi所在的同一个位置。 location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; include fastcgi_params; rewrite ^(.+)\.php$ /$1; } 但是,当我用这些设置重新启动nginx时,它给了我一个500内部服务器错误,我什至不能让服务器显示任何东西。 这是因为快速CGI? 我该如何解决这个问题? 我的系统:nginx / php5-fpm / apc / php5-memcache / Ubuntu 10.10

为什么在从Ubuntu中删除nginx时出现依赖警告/错误?

root@ubuntus:~# apt-get remove nginx-light Reading package lists… Done Building dependency tree Reading state information… Done Package nginx-light is not installed, so not removed You might want to run `apt-get -f install' to correct these: The following packages have unmet dependencies: nginx-full: Depends: nginx-common (= 1.0.5-1ppa2~lucid) but it is not going to be installed E: Unmet […]

如何在Nginx中保留一个url的下载数量?

更确切地说,我可以configurationNginx输出日志条目到一个单独的日志文件,每当一个特定的url被请求? 稍后该日志中的行数可以给我下载计数。 nginx.conf error_log /home/webadmin/applegrew.com/error-n.log; events { worker_connections 1000; } http { include mime.types; index index.html index.htm index.php index.shtml; log_format main '$remote_addr – $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; sendfile on; keepalive_timeout 5; gzip on; server { server_name cink.applegrew.com; access_log /var/log/cink.applegrew.com/access.log main; error_log /var/log/cink.applegrew.com/error.log; root /var/www/cink.applegrew.com/html; location = /js/cink\.compiler\.min\.js$ { access_log […]

IE8将GeoTrust SSL证书报告为“不可信任”,其他浏览器正常

一段时间以来,我们一直在使用GeoTrust SSL证书,而且我刚接到一个电话,告诉Internet Explorer警告用户我们的证书不受信任。 我真的不知道发生了什么事情。 我们使用的是nginx 1.0.5,我已经安装了GeoTrust中介的证书,并且在Firefox,Safari和谷歌浏览器等等中都可以正常工作。 另外一个digicert SSL检查告诉我一切都好。 但是,Internet Explorer 8和另一个SSL检查器都告诉我: 这是不可信的(自签名) 域名不匹配。 到底是怎么回事? 关于我们的设置的一些细节:我们正在使用nginx +独angular兽(作为机架服务器),nginx作为独angular兽的反向代理,以及提供静态资产来运行Rails应用程序。 我们基本上有三个虚拟主机: 生产 – 包含一个http和一个https虚拟主机 登台 – 生产的确切副本,但在另一个子域和不同的SSL证书(自签名) 一个“重写”虚拟主机 – 将我们所有的域名重写为“www.kayoom.com”