nginx服务器搭建(lamp服务器搭建)

zzxiexin 4 0

简介:

Nginx是一个高性能的HTTP和反向代理Web服务器,也提供了IMAP / POP3 / SMTP服务,Nginx服务器你可以直接理解为是一台负载均衡服务器或者反向代理服务器,所以当客户端发出请求到Nginx服务器时,Nginx服务器需将它配置好的规则由客户端发来的请求并转发到后端的LAMP、Tomcat、LNMP上。

特点:

占有内存少,并发能力强,专为性能优化而开发,稳定性和低系统资源消耗,以及对HTTP并发连接的高处理能力,可支持单台高达50000个并发连接数。

支持操作系统

· FreeBSD 3— 10 / i386; FreeBSD 5— 10 / amd64;

· Linux 2.2— 4 / i386; Linux 2.6— 4 / amd64; Linux 3— 4 / armv6l, armv7l, aarch64;

· Solaris 9 / i386, sun4u; Solaris 10 / i386, amd64, sun4v;

· AIX 7.1 / powerpc;

· HP-UX 11.31 / ia64;

· Mac OS X / ppc, i386;

· Windows XP, Windows Server 2003,Windows 10

为什么要用 Nginx?

作为 Web 服务器

相比 Apache,Nginx 使用资源更少,支持更多的并发连接数。在高并发的情况下,Nginx 是 Apache 服务器的替代品,Nginx 作为负载均衡服务器,内部是支持Rails和PHP程序对外服务,也支持作为HTTP代理服务器对外服务,采用C语言编写,无论在系统资源开销还是CPU使用效率要比Perlbal好很多。

Nginx 配置简单,Apache 复杂

作为邮件,Nginx 同时也是一个非常优秀的邮件代理服务(最早开发这个产品的目的之一也是作为邮件代理服务器),Last.fm 描述了成功并且美妙的使用经验。

Nginx 启动容易,几乎可以做到7*24小时不间断运行,即便很长时间未重新启动,也能够在不间断服务的情况下对软件版本进行升级,静态处理性能要比 Apache 高 3倍以上,Nginx 需要配合其他后端来进行使用,而 Apache 对 PHP 支持较简单,组件同时也比 Nginx 多。

核心点

Nginx 是异步的,多连接可对应一个进程;Apache 是同步多进程模型,一个连接对应一个进程;

擅长领域

Nginx 适用于前端处理静态请求;Apache 适用于后端处理动态请求;

三、Nginx 安装

安装支持软件

Nginx 的配置及运行需要安装编译工具及库文件(1)、pcre(2)、zlib(3)软件包的支持,需先安装这些软件的开发包供相应的库和头文件,以此来确保 Nginx 的顺利安装。

1.

# yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel

2.

# yum -y install pcre-devel zlib-devel

创建运行用户、组

Nginx 服务程序默认以noboby身份运行,这里建议大家创建新的用户账号,更准确的控制访问权限、增加灵活性、降低安全风险;

# useradd -M -s /sbin/nologin nginx

下载编译安装

配置 Nginx 的编译选项时,将安装目录设为/usr/local/nginx,运行用户和组均设为nginx;启用http_stub_status_module模块以支持状态统计,便于查看服务器的连接信息。

# wget 

注:要先安装wget命令,yum install wget

# tar xzf nginx-1.16.1.tar.gz# cd nginx-1.16.1# ./configure --prefix=/usr/local/nginx --conf-path=/usr/local/nginx/nginx.conf --pid-path=/tmp/nginx/nginx.pid  --lock-path=/tmp/nginx/nginx.lock --user=nginx --group=nginx --with-pcre --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --error-log-path=/usr/local/nginx/logs/error.log --http-log-path=/usr/local/nginx/logs/access.log --http-fastcgi-temp-path=/tmp/nginx/fcgi/# make && make install

查看nginx版本:

# /usr/local/nginx/sbin/nginx -v

为主程序 Nginx 创建链接文件

# ln -s /usr/local/nginx/sbin/nginx /usr/local/bin/# ls -l /usr/local/sbin/nginx //查看链接是否创建成功lrwxrwxrwx. 1 root root 27 Mar 22 22:49 /usr/local/bin/nginx -> /usr/local/nginx/sbin/nginx安装好之后,进入默认安装路径到sbin目录下,执行nginx即可启动;# cd /usr/local/nginx/sbin/# pwd/usr/local/nginx/sbin# ./nginx # nginx

监听 Nginx 程序的状态

# netstat -anpt | grep nginxtcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      53816/nginx 

监听到端口后,在浏览器中直接访问Nginx服务器的Ip地址192.168.162.128,当浏览器看到如下页面时,说明Nginx已经安装成功了。

使用 Nginx 服务脚本

可编写Nginx服务脚本,使用chkconfig和service工具进行统一管理;

#!/bin/bash# chkconfig: 2345 99 20# description: Nginx Server Control Scripts shellPROG="/usr/local/nginx/sbin/nginx"PIDF="/usr/local/nginx/logs/nginx.pid"case "$1" in    start)    if [ -f $PIDF ]; then        echo "Nginx is running.. Start it is error"    else        $PROG    fi    ;;    stop)    if [ -f $PIDF ]; then        kill -s QUIT $(cat $PIDF)        rm -rf $PIDF    else        echo "Nginx is stopping .. Stop it is error"    fi    ;;    restart)        $0 stop        $0 start    ;;    reload)    if [ -f $PIDF ]; then        kill -s HUP $(cat $PIDF)    else        echo "Nginx is stopping . reload it is error"    fi    ;;    status)    if [ -f $PIDF ]; then        echo "Nginx is running"    else        echo "Nginx is stopping"    fi    ;;    *)    echo "Usage: $0 (start|stop|restart|reload|status)"    exit 1esacexit 0# chmod +x /etc/init.d/nginx# chkconfig --add nginx

如果修改了Nginx的配置文件,可通过./nginx -s reload命令加载Nginx配置文件。

# ./nginx -s reload总结

以上我们介绍了Nginx的基本概念、为什么要用Nginx、Nginx 的安装有个初步的认识,待后续的文章继续介绍正向代理、反向代理、负载均衡以及构建 LNMP 架构等;今天我们就介绍到这里,有问题大家随时留言讨论哦。

标签: #nginx服务器搭建

  • 评论列表

留言评论

 
QQ在线咨询
售前咨询电话
173-175-32776
技术支持电话
173-175-32776
嘿,欢迎咨询