Centos 6.5 Nginx Web服务器

上海杰彻自动化设备有限公司 发布时间:2017-09-02 11:45:43
Centos 6.5 Nginx Web服务器 Nginx搭建Web服务器

Apache和Nginx是目前使用最火的两种Web服务器,Apache出现比Nginx早。Apache HTTP Server(简称Apache)是世界使用排名第一的Web服务器软件,音译为阿帕奇,是Apache软件基金会的一个开放源码Web服务器,可以运行几乎所有的计算机平台,其次开放的API接口,任何组织和个人都可以在它上面扩展和增加各种需要功能,达到为自己量身定制的功能。

Nginx(“engine x”)是一个高性能的HTTP和反向代理 服务器,也是一个 IMAP/POP3/SMTP代理服务器。Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。

在互联网初期,网站大小不是很大,访问量都很轻量,一个网站的访问量一天最多就几万IP,这个时候Apache完全可以满足需要,人们更多的是为它开发各种模块,像重写模块,访问控制列表,缓存模块等等。但是随着互联网的飞速发展,网站我访问量以指数增长,大型网站的除了加大硬件投入外,典型的Web服务器Apache这时候也力不从心了;但是Apache并不是完美的,并且不再适合大规模系统。

为什么?因为他的进程模式虽然简单而灵活,但并不适合大规模尤其是当要处理像PHP这种需要占用大量内存应用程序代码时。于是Nginx开始崛起,最初的设计是俄罗斯工程师为大型网站解决高并发设计的。所以注定了高并发是它永恒的优点。再次就是反向代理,现在大型网站分工详细,哪些服务器处理数据流,哪些处理静态文件,这些谁指挥,一般都是用nginx反向代理到内网服务器,这样就起到了负载均衡分流的作用。再次nginx高度模块化的设计,编写模块相对简单。

Nginx 是一个高性能的 Web 和反向代理服务器,它具有有很多非常优越的特性:

作为 Web 服务器:相比 Apache,Nginx使用更少的资源,支持更多的并发连接,体现更高的效率,这点使 Nginx 尤其受到虚拟主机提供商的欢迎。能够支持高达 50,000个并发连接数的响应,感谢 Nginx为我们选择了epoll and kqueue 作为开发模型。

作为负载均衡服务器: Nginx既可以在内部直接支持 Rails 和 PHP,也可以支持作为 HTTP代理服务器 对外进行服务。Nginx用C编写, 不论是系统资源开销还是 CPU 使用效率都比 Perlbal 要好的多。

Nginx安装非常的简单,配置文件非常简洁(还能够支持perl语法),Bugs非常少的服务器: Nginx启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。你还能够在不间断服务的情况下进行软件版本的升级。

二、Nginx安装

1、安装说明

系统环境: CentOS-6.6

软件: nginx-1.8.0.tar.gz

安装方式: 源码编译安装

安装位置: /opt/program/nginx-1.8.0

下载地址:

2、安装必须软件

# yum install gcc-c++

# yum -y install zlib zlib-devel openssl openssl–devel pcre pcre-devel

# find -name nginx

#./nginx

#./nginx/sbin/nginx

#./nginx-1.2.6/objs/nginx

检查系统已安装的Nginx:

卸载原有的Nginx

# yum remove nginx

3、安装和编译

将安装包文件上传到/opt/software中执行以下操作:

# cd /opt/program

# mkdir nginx

# tar -zxvf ../software/nginx-1.8.0.tar.gz

# cd nginx-1.8.0

# ./configure –prefix=/opt/program/nginx

注:处此是指定Nginx的安装目录,大多用户习惯于安装在/usr/local/nginx下面

# make 编译

# make install 安装

4、配置服务项

修改防火墙配置:

# vi + /etc/sysconfig/iptables

添加配置项

-A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT

重启防火墙

# service iptables restart

5、启动

方法1

# /opt/program/nginx/sbin/nginx -c /opt/program/nginx/sbin/nginx/conf/nginx.conf

方法2

# /opt/program/nginx/sbin/nginx

查询nginx主进程号

# ps -ef | grep nginx

强制停止

# pkill -9 nginx

# /opt/program/nginx/sbin/nginx -s reload

# netstat –na|grep 80

#浏览器中测试

:80

三、配置Nginx支持高并发

1、Nginx常规优化

编辑nginx.conf,修改相关参数进行优化。

worker_processes 8;

Nginx 进程数,建议按照CPU数目来指定,一般为它的倍数 (如,2个四核的CPU计为8)。

worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;

worker_rlimit_nofile 65535;

这个指令是指当一个Nginx 进程打开的最多文件描述符数目,理论值应该是最多打开文

件数(ulimit -n)与nginx 进程数相除,但是Nginx 分配请求并不是那么均匀,所以最好与ulimit -n 的值保持一致。现在在linux 2.6内核下开启文件打开数为65535,worker_rlimit_nofile就相应应该填写65535。

worker_connections 65535;

每个进程允许的最多连接数, 理论上每台nginx 服务器的最大连接数为worker_processes*worker_connections。keepalive_timeout 60;keepalive 超时时间。

client_header_buffer_size 4k;

企业建站2800元起,携手武汉肥猫科技,做一个有见地的颜值派!更多优惠请戳:襄阳SEO http://xiangyang.4567w.com

  • 上一篇:自适应网页设计的方法
  • 下一篇:最后一页
  •