CentOS上编译安装Nginx+实验环境搭建+测试

    Nginx作为一款优秀的Web Server软件同时也是一款优秀的负载均衡或前端反向代理、缓存服务软件,很有必要搭建实验环境来对其进行学习。

创新互联公司是一家从事企业网站建设、网站设计制作、成都网站制作、行业门户网站建设、网页设计制作的专业网站建设公司,拥有经验丰富的网站建设工程师和网页设计人员,具备各种规模与类型网站建设的实力,在网站建设领域树立了自己独特的设计风格。自公司成立以来曾独立设计制作的站点千余家。

    本次实验的测试环境使用的宿主机操作系统为windows 7,在Vmware虚拟机安装centos 6.5,说明如下:

  • 宿主机操作系统Windows 7

  • 虚拟机安装的操作系统CentOS 6.5

  • 虚拟机操作系统上网方式NAT

    而当使用NAT的方式进行上网时虚拟机、宿主机之间的网络连接关系可如下所示:

    另外需要注意的是这里安装的CentOS 6.5操作系统使用了最小化安装,并且只定制安装了一些常用的开发工具如gcc等,其版本信息如下:

[root@linuxidc ~]
# cat /etc/RedHat-release 
CentOS release 6.5 (Final)
[root@linuxidc ~]
# uname -r
2.6.32-431.el6.x86_64
[root@linuxidc ~]
# uname -m
x86_64

(1)安装Nginx依赖函数库pcre

    pcre为“perl兼容正则表达式”perl compatible regular expresssions,安装其是为了使Nginx支持具备URI重写功能的rewrite模块,如果不安装Nginx将无法使用rewrite模块功能,但是该功能却十分有用和常用。

    检查系统中是否有安装:

[root@linuxidc ~]
# rpm -q pcre pcre-devel

    上面可以看到并没有安装使用yum方式安装如下:

[root@linuxidc ~]
# yum install pcre pcre-devel -y
......
  
Installed:
 
pcre-devel.x86_64 0:7.8-7.el6                                                 
  
Updated:
 
pcre.x86_64 0:7.8-7.el6                                                       
  
Complete!

    安装完后检查一下是否已经成功安装:

[root@linuxidc ~]
# rpm -q pcre pcre-devel
pcre-7.8-7.el6.x86_64
pcre-devel-7.8-7.el6.x86_64

    可以看到已经安装成功。

(2)安装Nginx依赖函数库openssl-devel

    Nginx在使用HTTPS服务的时候要用到此模块,如果不安装openssl相关包,安装过程中是会报错的。

    检查系统是否有安装openssl相关包:

[root@linuxidc ~]
# rpm -q openssl openssl-devel 
openssl-1.0.1e-15.el6.x86_64
package openssl-devel is not installed

    可以看到只是安装了opensslopenssl-devel还没有安装使用yum安装如下:

[root@linuxidc ~]
# yum install -y openssl-devel
......
  
Complete!

    再次检查:

[root@linuxidc ~]
# rpm -q openssl openssl-devel         
openssl-1.0.1e-48.el6_8.4.x86_64
openssl-devel-1.0.1e-48.el6_8.4.x86_64

    可以看到都已经成功安装上。

(3)下载Nginx软件包

    这里使用的Nginx版本为1.6.3,下载方式如下:

[root@linuxidc ~]
# pwd
/root
[root@linuxidc ~]
# mkdir tools
[root@linuxidc ~]
# cd tools/
[root@linuxidc tools]
# wget http://nginx.org/download/nginx-1.6.3.tar.gz
......
100%[======================================>] 805,253      220K
/s   
in 
3.6s   
  
2017-02-24 12:10:26 (220 KB
/s
) - anginx-1.6.3.
tar
.gza saved [805253
/805253
]

    查看下载的Nginx软件包:

[root@linuxidc tools]
# ll
total 788
-rw-r--r--. 1 root root 805253 Apr  8  2015 nginx-1.6.3.
tar
.gz

    当然上面的方式是使用wget方式直接下载,前提是已经知道了Nginx的下载地址,也可以到官网下载,然后再上传到我们的CentOS操作系统上。

(4)开始安装Nginx

    可以先在根目录下创建一个/application文件夹用来存放我们安装的软件:

[root@linuxidc ~]
# mkdir /application
[root@linuxidc ~]
# ls -d /application/
/application/

  • 解压缩

    将我们刚刚下载的Nginx软件包解压缩:

[root@linuxidc tools]
# tar -zxvf nginx-1.6.3.tar.gz
......
[root@linuxidc tools]
# ls
nginx-1.6.3  nginx-1.6.3.
tar
.gz

  • 使用./configure指定编译参数

    先创建一个nginx用户用来安装完成后运行nginx使用:

[root@linuxidc tools]
# useradd nginx -s /sbin/nologin -M
[root@linuxidc tools]
# tail -1 /etc/passwd
nginx:x:500:500::
/home/nginx
:
/sbin/nologin
  
# -s参数后的/sbin/nologin指定不允许nginx进行登陆
# -M参数则是在创建该用户时不创建用户家目录

    使用configure命令指定编译参数:

[root@linuxidc nginx-1.6.3]
# ./configure --user=nginx --group=nginx --prefix=/application/nginx-1.6.3/ --with-http_stub_status_module --with-http_ssl_module

    对于配置时使用的参数可以通过./configure --help来进行查询,上面使用的参数解析如下:

--prefix=PATH       
# 指定安装路径
--user=USER         
# 设置用户进程权限
--group=GROUP       
# 设置用户组进程权限
--with-http_stub_status_module 
#  激活状态信息
--with-http_ssl_module         
#  激活ssl功能

  • 使用make进行编译

[root@linuxidc nginx-1.6.3]
# make
......

    检查编译是否成功:

[root@linuxidc nginx-1.6.3]
# echo $?
0

    返回0即说明编译成功。

  • 使用make install安装

[root@linuxidc nginx-1.6.3]
# make install
......

    检查安装是否成功:

[root@linuxidc nginx-1.6.3]
# echo $?     
0

    返回0即说明安装成功。

  • 建立安装目录的软链接

[root@linuxidc nginx-1.6.3]
# ln -s /application/nginx-1.6.3/ /application/nginx
[root@linuxidc nginx-1.6.3]
# ls -l /application/
total 4
lrwxrwxrwx. 1 root root   25 Feb 24 12:32 nginx -> 
/application/nginx-1
.6.3/
drwxr-xr-x. 6 root root 4096 Feb 24 12:28 nginx-1.6.3

    到此Nginx的编译安装工作已经全部完成了,下面就需要对安装结果进行验证了即验证Nginx是否可以正常提供服务。 

(1)启动Nginx服务前检查配置文件语法

    如下:

[root@linuxidc ~]
# /application/nginx/sbin/nginx -t
nginx: the configuration 
file 
/application/nginx-1
.6.3
//conf/nginx
.conf syntax is ok
nginx: configuration 
file 
/application/nginx-1
.6.3
//conf/nginx
.conf 
test 
is successful

(2)启动Nginx服务

[root@linuxidc ~]
# /application/nginx/sbin/nginx

    如果在启动Nginx服务时出现了问题可以查看Nginx的日志/application/nginx/logs/error.log,再根据日志提供的信息来进行解决。

(3)验证Nginx服务是否正常

  • 查看已开启的端口信息

[root@linuxidc ~]
# netstat -lnp | grep 80
tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      6772
/nginx         
unix  2      [ ACC ]     STREAM     LISTENING     9180   1
/init             
@
/com/Ubuntu/upstart

    可以看到Nginx已经在侦听80端口。

  • 查看Nginx进程

[root@linuxidc ~]
# ps aux | grep nginx
root       6772  0.0  0.1  45028  1140 ?        Ss   12:34   0:00 nginx: master process 
/application/nginx/sbin/nginx
nginx      6773  0.0  0.1  45460  1716 ?        S    12:34   0:00 nginx: worker process       
root       6777  0.0  0.0 103256   832 pts
/1   
S+   12:36   0:00 
grep 
nginx

  • 在宿主机上使用浏览器进行测试

    在我们宿主机的浏览器上输入http://10.0.0.101/,查看测试结果

    可以正常访问,当然前提是CentOS上的防火墙功能已经关闭。

  • 使用wget命令和curl命令测试

    wget命令:

[root@linuxidc tools]
# wget 127.0.0.1
--2017-02-24 12:41:05--  http:
//127
.0.0.1/
Connecting to 127.0.0.1:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 612 [text
/html
]
Saving to: aindex.htmla
  
100%[======================================>] 612         --.-K
/s   
in 
0s     
  
2017-02-24 12:41:05 (44.1 MB
/s
) - aindex.htmla saved [612
/612
]

    currl命令:

[root@linuxidc tools]
# curl 127.0.0.1


<
head
>
Welcome to nginx!<</code><br /> <code>/title</code><br /> <code>> </code><br /> <code><style> </code><br /> <code>    </code><br /> <code>body { </code><br /> <code>        </code><br /> <code>width: 35em; </code><br /> <code>        </code><br /> <code>margin: 0 auto; </code><br /> <code>        </code><br /> <code>font-family: Tahoma, Verdana, Arial, sans-serif; </code><br /> <code>    </code><br /> <code>} </code><br /> <code><</code><br /> <code>/style</code><br /> <code>> </code><br /> <code><</code><br /> <code>/head</code><br /> <code>> </code><br /> <code><body> </code><br /> <code><h1>Welcome to nginx!<</code><br /> <code>/h1</code><br /> <code>> </code><br /> <code><p>If you see this page, the nginx web server is successfully installed and </code><br /> <code>working. Further configuration is required.<</code><br /> <code>/p</code><br /> <code>> </code><br /> <code> </code> <br /> <code><p>For online documentation and support please refer to </code><br /> <code><a href=</code><br /> <code>"http://nginx.org/"</code><br /> <code>>nginx.org<</code><br /> <code>/a</code><br /> <code>>.<br/> </code><br /> <code>Commercial support is available at </code><br /> <code><a href=</code><br /> <code>"http://nginx.com/"</code><br /> <code>>nginx.com<</code><br /> <code>/a</code><br /> <code>>.<</code><br /> <code>/p</code><br /> <code>> </code><br /> <code> </code> <br /> <code><p><em>Thank you </code><br /> <code>for</code> <br /> <code>using nginx.<</code><br /> <code>/em</code><br /> <code>><</code><br /> <code>/p</code><br /> <code>> </code><br /> <code><</code><br /> <code>/body</code><br /> <code>> </code><br /> <code><</code><br /> <code>/html</code><br /> <code>></code> </p><p>    从上面的结果可以说明Nginx已经正常部署并运行。 </p><p>    通过修改/application/nginx/html下的index.html文件,我们就可以改变Nginx主页显示的内容,操作如下:</p><p><code>[root@linuxidc tools]</code><br /> <code># cd /application/nginx/html/ </code><br /> <code>[root@linuxidc html]</code><br /> <code># ls </code><br /> <code>50x.html  index.html </code><br /> <code>[root@linuxidc html]</code><br /> <code># mv index.html index.html.source </code><br /> <code>[root@linuxidc html]</code><br /> <code># echo "<h1>Hello, I'm linuxidc.</h1>">index.html </code><br /> <code>[root@linuxidc html]</code><br /> <code># ls </code><br /> <code>50x.html  index.html  index.html.</code><br /> <code>source</code><br /> <code>[root@linuxidc html]</code><br /> <code># cat index.html </code><br /> <code><h1>Hello, I'm linuxidc.<</code><br /> <code>/h1</code><br /> <code>></code> </p><p>    这时在宿主机操作系统上访问http://10.0.0.101/</p><p>    可以看到已经显示我们编辑的页面了。</p><p>    不管是用于学习还是在生产环境中使用,Nginx都十分重要,而好的开始是成功的一半,所以第一步当然是要把Nginx服务搭建好。</p> <br> 新闻名称:CentOS上编译安装Nginx+实验环境搭建+测试 <br> 网址分享:<a href="http://www.gydahua.com/article/codghpp.html">http://www.gydahua.com/article/codghpp.html</a> </div> <div class="view-qrocde cl"> <div class="m z"><img src="/Public/Home/images/ew.jpg"/></div> <div class="text"> <h6>扫二维码与项目经理沟通</h6> <p>我们在微信上24小时期待你的声音</p> <p>解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流</p> </div> </div> <div class="othernews cl"> <h3>其他资讯</h3> <ul> <li><a href="/article/cdsjpdd.html">木马软件大摇大摆获数字签名</a></li><li><a href="/article/cdsjpep.html">小麦麸属于能量饲料吗(麸皮是什么饲料?)</a></li><li><a href="/article/cdsjpee.html">小编告诉你电脑的64位和32位系统有什么不同</a></li><li><a href="/article/cdsjpeh.html">这个域名解析记录无缘无故消失</a></li><li><a href="/article/cdsjpde.html">友情链接不能盲目做</a></li> </ul> </div> </div> </div> <div class="sidebar"> <div class="tuijian"> <a href="#"> <h2 class="cl"><span>行业动态</span></h2> <h3>企业网站建设的重要性!</h3> <p>现在虽然是移动互联网时代,但企业网站依然重要,包含PC站点,移动站。可以说企业网站关系企业的未来发展和前途,尤其对中小企业更是如此,一些中小企业老板,对自己的名片很在乎,因为这是个门面。...</p> </a> </div> <div class="ser sidesub"> <h2>服务项目</h2> <ul class="ebox"> <li class="sub sub-1"> <div> <h3>网站建设</h3> <p></p> <a class="btn" href="/serve/website/">查看详情</a> </div> </li> <li class="sub sub-1"> <div> <h3>移动端/APP</h3> <p></p> <a class="btn" href="/serve/moblie/">查看详情</a> </div> </li> <li class="sub sub-1"> <div> <h3>微信/小程序</h3> <p></p> <a class="btn" href="/serve/small/">查看详情</a> </div> </li> <li class="sub sub-1"> <div> <h3>技术支持</h3> <p></p> <a class="btn" href="/serve/tech/">查看详情</a> </div> </li> <li class="sub sub-1"> <div> <h3>其它服务</h3> <p></p> <a class="btn" href="/serve/othe/">查看详情</a> </div> </li> <li class="sub sub-5"> <div> <h3>更多服务项目</h3> <p> <a>用我们的专业和诚信赢得您的信赖,从PC到移动互联网均有您想要的服务!</a></p> <a class="btn" href="/serve/">获取更多</a> </div> </li> </ul> </div> <div class="contact" id="fix"> <h2 class="cl"> <span>联系吧</span> <a href="https://map.baidu.com/" class="ditu" rel="nofollow" target="_blank">在百度地图上找到我们</a> </h2> <h3>电话:13518219792</h3> <p>如遇占线或暂未接听请拨:136xxx98888</p> <div class="qq"> <a href="//wpa.qq.com/msgrd?v=3&uin=244261566&site=qq&menu=yes" rel="nofollow" target="_blank">业务咨询</a> <a href="//wpa.qq.com/msgrd?v=3&uin=244261566&site=qq&menu=yes" rel="nofollow" target="_blank">技术咨询</a> <a href="//wpa.qq.com/msgrd?v=3&uin=244261566&site=qq&menu=yes" rel="nofollow" target="_blank">售后服务</a> </div> </div> </div> <script> //固定滚动 (function () { var oDiv = document.getElementById("fix"); var H = 120, iE6; var Y = oDiv; while (Y) { H += Y.offsetTop; Y = Y.offsetParent }; iE6 = window.ActiveXObject && !window.XMLHttpRequest; if (!iE6) { window.onscroll = function () { var s = document.body.scrollTop || document.documentElement.scrollTop; if (s > H) { oDiv.className = "contact fixed"; if (iE6) { oDiv.style.top = (s - H) + "px"; } } else { oDiv.className = "contact "; } }; } })(); </script> </div> <div class="footer"> <div class="wp"> <div class="wpss cl"> <dl class="about"> <dt>网站设计</dt> <dd><a href="http://m.cdcxhl.cn/dingzhi/" target="_blank" title="定制网站设计">定制网站设计</a></dd><dd><a href="http://www.kswsj.com/" target="_blank" title="成都网站设计">成都网站设计</a></dd><dd><a href="http://www.cxjianzhan.cn/fwxm/pinpai.html" target="_blank" title="成都品牌网站设计">成都品牌网站设计</a></dd><dd><a href="http://www.cdxwcx.cn/sheji/" target="_blank" title="企业网站设计">企业网站设计</a></dd> </dl> <dl class="about"> <dt>网站制作</dt> <dd><a href="http://seo.cdkjz.cn/wangzhan/" target="_blank" title="网站制作公司">网站制作公司</a></dd><dd><a href="https://www.cdcxhl.com/mobile.html" target="_blank" title="手机网站制作">手机网站制作</a></dd><dd><a href="http://chengdu.cdcxhl.com/" target="_blank" title="成都网站制作">成都网站制作</a></dd><dd><a href="http://www.cxhljz.cn/" target="_blank" title="成都网站制作">成都网站制作</a></dd> </dl> <dl class="contact"> <dt>联系我们</dt> <dd>电话:13518219792</dd> <dd>邮箱:631063699@qq.com</dd> <dd>地址:成都青羊区锦天国际1002号</dd> <dd>网址:www.gydahua.com</dd> </dl> <dl class="about" style="margin-left:50px;width:235px;"> <dt>网站建设</dt> <dd><a href="http://www.scyingshan.cn/" target="_blank" title="营山网站建设">营山网站建设</a></dd><dd><a href="http://www.cdweb.net/solve/" target="_blank" title="网站建设方案">网站建设方案</a></dd><dd><a href="http://www.cqcxhl.com/service/" target="_blank" title="品牌网站建设">品牌网站建设</a></dd><dd><a href="http://www.cdweb.net/" target="_blank" title="自适应网站建设">自适应网站建设</a></dd> <!--成都网站建设 成都网站制作 成都做网站 网站建设公司--> </dl> <dl class="flow"> <dt></dt> <div class="ma cl"> <div class="m"> <img src="/Public/Home/images/ew.jpg" /> <p>微信二维码</p> </div> </div> </dl> </div> </div> <div class="footer-link wp"> <ul class="wpss cl"> <li class="fisrt">友情链接</li> <li><a href="http://www.fzjike.cn/" title="成都背面发光字" target="_blank">成都背面发光字</a></li><li><a href="http://chengdu.cdweb.net/weixinkaifa/fuwuhao.html" title="微信服务号订阅号开发" target="_blank">微信服务号订阅号开发</a></li><li><a href="http://chengdu.cdcxhl.cn/wechat/ " title="成都微信小程序开发" target="_blank">成都微信小程序开发</a></li><li><a href="http://www.nlpkn.com/" title="德阳康明斯发电机公司" target="_blank">德阳康明斯发电机公司</a></li><li><a href="http://www.jyfdjwx.com/" title="简阳威斯达宇" target="_blank">简阳威斯达宇</a></li><li><a href="http://www.rjkgk.com/" title="成都商标注册" target="_blank">成都商标注册</a></li><li><a href="http://www.fjdmtu.com/" title="成都柴油发电机MTU" target="_blank">成都柴油发电机MTU</a></li><li><a href="http://www.cdkjz.cn/fangan/door/" title="成都门户网站建设设计方案" target="_blank">成都门户网站建设设计方案</a></li><li><a href="http://www.mswxfdj.com/" title="眉山维修发电机公司" target="_blank">眉山维修发电机公司</a></li><li><a href="http://www.dwzcq.com/" title="内江发电机维修" target="_blank">内江发电机维修</a></li> </ul> </div> </div> <div class="bot-footer"> <div class="wp"> <p class="wpss"> <em>Copyright © 2002-2023 www.gydahua.com 快上网建站品牌 QQ:244261566 版权所有</em> <em>备案号:<a href="http://beian.miit.gov.cn/" rel="external nofollow">蜀ICP备19037934号</a></em> </p> <p class="wpss" style="line-height:30px !important;"> </p> </div> </div> <div class="footer-kefu"> <ul> <li class="qq"><a href="https://wpa.qq.com/msgrd?v=3&uin=244261566&site=qq&menu=yes"><em></em>在线咨询</a> </li> <li class="tel"><a href="tel:13518219792" target="_blank"><em></em>13518219792</a></li> <li class="wx"> <em></em> <div class="code"> <img src="/Public/Home/images/ew.jpg" /> <p>微信二维码</p> </div> </li> <li class="m"> <em></em> <div class="code"> <img src="/Public/Home/images/ew.jpg" /> <p>移动版官网</p> </div> </li> <li class="top"><em></em></li> </ul> </div> <script src="/Public/Home/js/all.js"></script> </body> </html> <script> $(".cont img").each(function(){ var src = $(this).attr("src"); //获取图片地址 var str=new RegExp("http"); var result=str.test(src); if(result==false){ var url = "https://www.cdcxhl.com"+src; //绝对路径 $(this).attr("src",url); } }); window.onload=function(){ document.oncontextmenu=function(){ return false; } } </script>