LNMP环境搭建之Nginx篇

Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪等。

第一步:

在开始搭建Nginx之前呢,我们先安装一些zlib、zlib-devel、gcc-c++、libtool、openssl、openssl-devel、pcre等编译工具及库文件。

yum -y install make gcc-c++ libtool zlib zlib-devel openssl openssl-devel pcre pcre-devel 
wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz  --no-check-certificate                  --下载安装包
tar zxvf pcre-8.35.tar.gz                 --解压安装包
cd pcre-8.35						      --进入目录
./configure								  --编译安装
make && make install
pcre-config --version                     --查看版本

Pcre库,上面第一个是通过yum安装,第二个是通过编译安装。我们可以根据自己的实际情况,选择比较适合自己的安装方式。

第二步:

在编译工具及库文件安装好了之后,我们接下来进行Nginx的安装,我这里是通过编译安装的方式:

wget http://nginx.org/download/nginx-1.6.2.tar.gz      --下载安装包
tar zxvf nginx-1.6.2.tar.gz                            --解压安装包
cd nginx-1.6.2                                         --切换目录
./configure --prefix=/root/tools/nginx-1.6.2 --with-http_stub_status_module --with-http_ssl_module --with-pcre=/root/tools/pcre-8.35    --编译安装
make
make install

在这里执行make install 的时候,我出现了这个报错:
在这里插入图片描述
后来经过一番摸索,发现是因为Nginx的安装目录和解压目录选择了同一个。我把nginx-1.6.2.tar.gz压缩文件放在/root/tools目录下,解压之后,cd /root/tools/nginx-1.6.2,执行./configure --prefix=/root/tools/nginx-1.6.2 , make , make install 的时候就会报这个错误。

解决方法是:
1、安装目录和解压目录不要选择同一个,即: ./configure --prefix=/usr/local/nginx
2、设置conf-patn参数,即: ./configure --prefix=/root/tools/nginx-1.6.2 --conf-path=/root/tools/nginx-1.6.2/conf/nginx.conf

然而在第二次执行编译安装的时候,我却碰到了第二个问题:
在这里插入图片描述
一般情况下,出现这个报错有两种原因:一个是Pcre没有安装,一个是Pcre路径错误。

这里我犯的是第二个错误,完全是自作聪明造成的。因为上面的报错原因是安装目录和解压目录是同一个,所以第二次重新执行编译安装的时候,我顺便把–with-pcre=的路径也改成了/usr/local/pcre。结果执行的时候发现在/usr/local/下找不到pcre。所以说,这里–with-pcre=必须是实际安装的路径。

/usr/local/nginx/sbin/nginx -v                          --查看版本
/usr/local/nginx/sbin/nginx -t                          --查看配置

第三步:

最后,我们把Nginx启起来,查看Nginx服务是否正常启动 , Nginx页面是否正常访问:

/usr/local/nginx/sbin/nginx								--启动服务
ps -ef | grep nginx                                     --查看服务
netstat -an | grep 80					    		    --查看端口
lsof -i :80

在这里插入图片描述
这里,我一开始的时候是访问不了Nginx页面,后来一步步排查了Nginx服务器端和客户端,问题已经解决了。
服务器端排查,主要看防火墙是否关闭,Selinux是否是disabled,Nginx服务和端口是否正常,命令如下:

systemctl status firewalld            --查看防火墙状态
getenforce                            --查看Selinux状态
ps -ef | grep nginx                   --查看Nginx服务
netstat -an | grep 80                 --查看Nginx端口

客户端排查,主要是在本地Win + R 打开 Cmd 窗口,查看在客户端上是否能够ping通服务器端的地址,能够telnet通服务器端的端口,以及本地的防火墙是否关闭等等,命令如下:

ping 192.168.125.201                   --排除物理线路问题
telnet 192.168.125.201 80              --排除防火墙的问题
wget 192.168.125.201                   --模拟用户访问,排除HTTP服务本身问题
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值