nginx
wang_quan_li
高级工程师,CSAI顾问团顾问,PHP策进会(PEA)兰州常委,首批陇原青年创新人才扶持计划人选,甘肃省省属科研院所科技创新团队——情报研究与信息服务模式创新团队成员。先后取得程序员、软件设计师、系统分析师资格。
展开
-
重启nginx后丢失nginx.pid,如何重新启动nginx
进程性的 nginx -s stop后再次启动nginx -s reload ,总是会报错误nginx: [error] open() "/alidata/server/nginx/logs/nginx.pid" failed (2: No such file or directory),这应该是因为把nginx进程杀死后pid丢失了,下一次再开启nginx -s reload时无法启动,重装可以转载 2014-11-22 14:59:50 · 669 阅读 · 0 评论 -
Nginx目录别名(Alias)支持PHP的配置
需求:通过 example.com 访问 /var/data/www,但通过 example.com/pa 访问的却是 /var/data/phpmyadmin,即保护phpmyadmin不暴露在www目录下。一、方法一:(不推荐)简介:这是网上普遍采用的 Rewrite 方式。缺陷:简单的php程序还能应付,复杂一点的程序就"No input file specified"转载 2015-06-23 22:37:16 · 1439 阅读 · 0 评论 -
使用proxy解决nginx alias无法执行PHP等fastcgi问题
nginx下的alias好像是为只为静态文件服务的,对于FastCGI如PHP之类的总是会出现错误,典型的就是404。对此,网上已经有了一些解决方案,如:http://u.odo.com.cn/space-2-do-blog-id-3087.html 如此设置在应用相对简单下的确可用,如根目录并没有程序或不需要rewrite等情况。而在实际应用中往往需要相对更复杂的配置,如流行的单入口程序转载 2015-06-23 22:49:01 · 800 阅读 · 0 评论 -
tomcat nginx报504解决办法
这是nginx连接超时,而由于使用的是80端口,走的是nginx代理转发的请求,原来,在nginx转发请求后,等待读取响应的时间超时的情况下,nginx直接返回了一个504 Gateway Time-out错误,所以会出现部署成功,却返回错误的情况。知道了原因后就好办了,查了一下资料,设置nginx代理的读取超时时间参数:proxy_read_timeout 600s;再试,果然成功了转载 2015-07-17 14:42:11 · 3348 阅读 · 0 评论 -
nginx 502 错误日志Connect to unix:/var/run/php5-fpm.sock failed
nginx错误日志如下3239#0: *15188 connect() to unix:/var/run/php5-fpm.sock failed (11: Resource temporarily unavailable) while connecting to upstream, client: xxx.xxx.xxx.xxx, server: my.domain, request: "P翻译 2015-08-26 15:18:58 · 2131 阅读 · 0 评论 -
降低Nginx代理服务器的磁盘IO使用率,提高转发性能
目前很多Web的项目在部署的时候会采用Nginx做为前端的反向代理服务器,后端会部署很多业务处理服务器,通常情况下Nginx代理服务器部署的还是比较少,而且其以高效性能著称,几万的并发连接处理速度都不在话下。然而去年的时候,我们的线上系统也采用类似的部署结构,同时由于我们的业务需求,Nginx的部署环境在虚拟机上面,复用了其他虚拟机的整体磁盘,在高IO消耗的场景中,我们发现Nginx的磁盘转载 2016-01-07 10:39:07 · 981 阅读 · 0 评论 -
nginx/1.4.6 配置的虚拟主机访问提示“File not found”
查看日志tail /var/log/nginx/error.log,提示“primary script unknown while reading response header from upstream”查看该虚拟主机的配置文件部分内容如下:location ~ \.php { #fastcgi_pass remote_php_ip:9000; fastcgi_原创 2016-04-08 14:20:45 · 1434 阅读 · 0 评论 -
nginx 缓存路径配置优化
当 后 端 服 务 器 的 响 应 body 大 于proxy_temp_file_write_size,响应会被缓冲到 proxy_temp_path 目录下的临时文件中;当 客 户 端 的 请 求 body 大 于 client_body_buffer_size, 请 求 会 缓 存 到 client_body_temp_path 目录下的临时文件中。因此当nginx 处理大数据量的请求或响应原创 2016-04-12 16:24:36 · 868 阅读 · 0 评论 -
nginx+tomcat 慢响应问题定位
nginx + tomcat 架构的 Web 服务中,用户感觉响应很慢,如何排查呢?可以第一时间查看 nginx 的 access.log。log_format 中定义了 $request_time 字段,它指的是从接受用户请求数据到发送完回复数据的时间。那究竟是慢在了 nginx、tomcat 还是其它?log_format 同 时 提 供 了 $upstream_response_ti原创 2016-04-12 16:27:57 · 4608 阅读 · 0 评论 -
nginx使用ssl模块配置HTTPS支持
默认情况下ssl模块并未被安装,如果要使用该模块则需要在编译时指定–with-http_ssl_module参数,安装模块依赖于OpenSSL库和一些引用文件,通常这些文件并不在同一个软件包中。通常这个文件名类似libssl-dev。生成证书可以通过以下步骤生成一个简单的证书:首先,进入你想创建证书和私钥的目录,例如:$ cd /usr/local/nginx/conf转载 2016-06-01 14:54:14 · 428 阅读 · 0 评论 -
zf2框架的php程序,nginx下运行提示404 not found
原始的nginx中的配置如下:location / { # First attempt to serve request as file, then # as directory, then fall back to displaying a 404. try_files $uri $ur原创 2016-08-11 09:21:17 · 459 阅读 · 0 评论 -
如何挖掘Nginx日志中隐藏的金矿?
“对很多开发运维人员来说,Nginx日志文件在被删除前可能都不会看上一眼。但实际上,Nginx隐藏了相当丰富的信息,或许其中便蕴含着未知的金矿等你挖掘!Nginx(读作Engine-X)是现在最流行的负载均衡和反向代理服务器之一。如果你是一名中小微型网站的开发运维人员,很可能像我们一样,仅Nginx每天就会产生上百M甚至数以十G的日志文件。如果没有出什么错误,在被logrotate定期分割并滚转载 2016-09-14 09:42:35 · 354 阅读 · 0 评论 -
Nginx提示502和504错误的终极解决方案
大内存可以把以下参数调大,可有效减少502错误php-fpm中主要修改参数128 //每一个消耗大约20M内存,根据内存大小设置1024 //每个max_children进程若超过这个数目,就自动杀死,以后用到会自动重建。一般设置1000左右。0s //如果你的服务器性能足够好,且宽带资源足够充足,PHP脚本没有系循环或BUG的话你可以直接将”request_terminate转载 2014-12-11 17:17:15 · 1107 阅读 · 0 评论 -
FastCGI模块(FastCGI)
http://wiki.nginx.org/NginxChsHttpFcgiModule摘要这个模块允许nginx同FastCGI协同工作,并且控制哪些参数将被安全传递。例:location / { fastcgi_pass localhost:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /home/ww转载 2014-12-08 18:10:16 · 1165 阅读 · 0 评论 -
让 Nginx 支持 SSI (Server Side Includes)
什么是 SSI (Server Side Includes) ?用过Apache的都应该知道吧,它可以使静态网页实现像动态网页一样 include 的功能,还有一些简单的语法Nginx 居然默认就自带了 SSI在 Nginx 开启 SSI ,加入以下3行就OK了,可以放在 http, server, 和location 段都行ssi on;ssi_silent_errors o转载 2014-12-08 18:07:50 · 870 阅读 · 0 评论 -
nginx File not found 错误
使用php-fpm解析PHP,"No input file specified","File not found"是令nginx新手头疼的常见错误,原因是php-fpm进程找不到SCRIPT_FILENAME配置的要执行的.php文件,php-fpm返回给nginx的默认404错误提示。比如我的网站doucument_root下没有test.php,访问这个文件时通过抓包可以看到返回的内容。转载 2014-11-22 17:17:29 · 657 阅读 · 0 评论 -
PHP-CGI 进程 CPU 100% 与 file_get_contents 函数的关系
有时候,运行 Nginx、PHP-CGI(php-fpm) Web服务的 Linux 服务器,突然系统负载上升,使用 top 命令查看,很多 php-cgi 进程 CPU 使用率接近100%。后来,我通过跟踪发现,这类情况的出现,跟 PHP 的 file_get_contents() 函数有着密切的关系。大、中型网站中,基于 HTTP 协议的 API 接口调用,是家常便饭。PHP 程序员们喜欢转载 2014-11-22 15:23:12 · 705 阅读 · 0 评论 -
解决nginx php弹出下载、不解析的问题
写的test.php竟然直接被浏览器下载了下来,没有被解析。转载 2014-11-22 16:15:09 · 1913 阅读 · 1 评论 -
unknown directive "if(!-e" in /usr/local/nginx/conf/nginx.conf
一,我遇到nginx的url重写问题nano /usr/local/nginx/conf/nginx.confif (!-e $request_filename){这里就是一些url重写的规则}当我重起的时候,老是报错,我又重新看了一下配置文件,没什么问题,我就很郁闷,这个问题困扰我有二三个星期了,今天我在一个老外写的博客中看到这个东东了。[root@BlackGhost转载 2014-11-22 17:14:38 · 2245 阅读 · 0 评论 -
nginx+php-fpm性能参数优化原则
1.worker_processes越大越好(一定数量后性能增加不明显)2.worker_cpu_affinity所有cpu平分worker_processes 要比每个worker_processes都跨cpu分配性能要好;不考虑php的执行,测试结果worker_processes数量是cpu核数的2倍性能最优3.unix domainsocket(共享内存的方式)要比转载 2014-11-24 10:29:32 · 1231 阅读 · 0 评论 -
修复Nginx报错:upstream sent too big header while reading response header from upstream
在 nginx.conf 的http段,加入下面的配置:proxy_buffer_size 128k;proxy_buffers 32 32k;proxy_busy_buffers_size 128k;重启后一般就可以解决,如果还是报502,再在host配置的php段加入下面配置:fastcgi_buffer_size 128k;fastcgi_buffers 4 256转载 2014-12-08 13:41:51 · 11128 阅读 · 2 评论 -
nginx 服务器系统优化
1 linux 默认 core file size 为 0何谓 core 文件,当一个程序崩溃时,在进程当前工作目录的 core 文件中复制了该进程的存储图像。 core 文件仅仅是一个内存映象(同时加上调试信息),主要是用来调试的。 core 文件是个二进制文件,需要用相应的工具来分析程序崩溃时的内存映像。系统默认 core 文件的大小为 0 ,所以没有创建。可以用 ulimit 命令查转载 2014-12-08 14:08:49 · 689 阅读 · 0 评论 -
启用nginx的fastcgi cache提高网站php访问速度
bin\ab.exe -n 100 -c 5http://www.9enjoy.com未使用Concurrency Level: 5Time taken for tests: 9.016 secondsComplete requests: 100Failed requests: 0Write errors:转载 2014-12-08 14:10:26 · 655 阅读 · 0 评论 -
nginx php-fpm调优
1、问题:发现/usr/local/webserver/php/etc/php-fpm.conf文件里定义的打开文件描述符的限制数量是51200但用 命令ulimit -n查看,发现只有1024我已在/etc/rc.local里添加了ulimit -SHn 51200竟然没生效解决:vi /etc/security/limits.conf文件最后加上*转载 2014-12-08 14:07:26 · 603 阅读 · 0 评论 -
nginx启用gzip压缩的示例
对于多数以文本为主的站点来说,文本自身内容占流量的绝大部分。虽然单个文本体积并不算大,但是如果数量众多的话,流量还是相当可观。启用GZIP以后, 可以大幅度减少所需的流量(如上图所示,本站首页大小从28K压缩到了7K)。以下是以nginx服务器为例开启gzip的一般代码。#启用gzipgzip on;#需要压缩文件的最小尺寸,单位是Bgzip_min_length 1100;转载 2014-12-08 14:23:27 · 808 阅读 · 0 评论 -
并发性能测试 apache nginx
并发性能测试1 测试目的 根据Apache、Nginx并发性能测试结果分析其并发模型各自优缺点。性能评价项包括:RPS(每秒钟处理请求数)、CPU占用率、内存占用率、最大并发数。根据Apache、Nginx并发模型优缺点,选择合适的并发模型框架。2 测试环境1、硬件环境服务器:Interl server Borad8核CPU,2G内转载 2014-12-08 14:36:26 · 1631 阅读 · 0 评论 -
nginx日志格式
最近我们要调用IDL的一个人脸识别接口,但是人家那个接口是部署在南京机房,并且只能内部调用。从最小化成本的考虑,对于海外用户,我们在香港搭建了一个nginx走专线中转进行提速。在国内则是在北京机房。中转的配置很简单,就是一个简单的proxypass:http { upstream idl { server 10.205.xxx.xx:8788; }转载 2016-09-06 11:40:33 · 378 阅读 · 0 评论