【汇总】nginx【php,location,alias,504】
?? 安装
#tar -zxvf nginx-1.0.5.tar.gz #cd nginx-1.0.5 #./configure --prefix=/usr/local/nginx #make #make install
?
?
?? 启动
// 启动 #/usr/local/nginx/sbin/nginx // 重启 #/usr/local/nginx/sbin/nginx -s reload #/usr/local/nginx/sbin/nginx -s reopen
?
?
?? 配置1 - PHP(fastcgi安装)
?? 配置2 - Alias
.... http { .... server { .... # http://.../a/ location /a/ { alias /var/www/a/; } # http://.../a/*.php location ~ /a/.+\.php$ { rewrite /a/(.+\.php) /$1 break; alias /var/www/a/; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } # http://.../ location / { alias /var/www/root/; } # http://.../*.php location ~* \.(php)$ { alias /var/www/root/; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } }?
?
?? 关于alias中使用rewrite的必要性:
?? 引用网址:http://www.pppei.net/blog/post/133
?
?
?? 关于nginx的location规则
?? 引用网址:https://wangyan.org/blog/nginx-location.html
location [=|~|~*|^~|@] /uri/ { … }
〖=〗 表示精确匹配,如果找到,立即停止搜索并立即处理此请求。 〖~〗 表示区分大小写匹配 〖~*〗 表示不区分大小写匹配 〖^~〗 表示只匹配字符串,不查询正则表达式。 〖@〗 指定一个命名的location,一般只用于内部重定向请求。
?? 配置实例
location = / { # 只匹配对 / 目录的查询. [ config A ] } location / { # 匹配以 / 开始的查询,即所有查询都匹配。 [ config B ] } location ^~ /images/ { # 匹配以 /images/ 开始的查询,不再检查正则表达式。 [ config C ] } location ~* \.(gif|jpg|jpeg)$ { # 匹配以gif, jpg, or jpeg结尾的文件,但优先级低于config C。 [ config D ] }?
?
?? 解决nginx 504 Gateway Time-out的一些方法
?? 引用网址:http://blog.csdn.net/tengzhaorong/article/details/5814905
fastcgi_buffers 2 256k; fastcgi_buffer_size 128K; fastcgi_busy_buffers_size 256K; fastcgi_temp_file_write_size 256K;
?? 注:本机测试并不显著,有时间附上配置说明
?