正文共: 2289字 2图
预计阅读时间: 6分钟
Nginx (engine x)是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。
上面是百度百科上对Nginx的介绍,Nginx是一个高性能的HTTP Server和代理软件,它具有高并发、且占用资源少,同时也是一个比较优秀的代理和负载均衡、缓存服务器,它可以运行于多种平台。
Nginx的特点
高性能的WEB服务器软件,与Apache相比,它支持更多的并发连接且占用服务器资源少,效率高。
作为负载均衡服务器,它可以作为HTTP SERVER或DB等服务的代理服务器,类似Haproxy代理软件的功能,Nginx的代理功能相对简单,效率也不及Haproxy,同时它也是一个优秀的邮件代理服务软件。
Nginx还可以作缓存服务器,类似于专业的缓存软件功能
关于Nginx更多的信息,可以查看相关的网站,本文不做赘述。
本文将介绍如何在Oracle公有云上安装和配置Nginx。
首先,我们需要一个Linux实例,用来部署Nginx。在Oracle云上创建OL7.2实例是个不错的选择。如何在Oracle云上创建Oracle Linux 7的实例,参见文章《在Oracle云上创建Oracle Linux实例》。
安装配置Nginx
#yum -y install wget
注:安装这个pcre库是为了让Nginx支持HTTPRewrite模块。
# wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.38.tar.gz
注:make编译安装时需要C和C++环境。
# yum -y install gccgcc-c++
# tarzxf pcre-8.38.tar.gz
# cdpcre-8.38
# ./configure
# make
# makeinstall
# useradd nginx -s sbin/nologin -M
# yum -y install opensslopenssl-devel
# wget http://nginx.org/download/nginx-1.10.1.tar.gz
# tar zxf nginx-1.10.1.tar.gz
# cd nginx-1.10.1
# ./configure \
--user=nginx \
--group=nginx \
--prefix=/home/opc/nginx-1.10.1\
--conf-path=/home/opc/nginx-1.10.1/nginx.conf\
--with-http_stub_status_module\
--with-http_ssl_module \
--with-pcre=/home/opc/pcre-8.38
备注: prefix和with-pcre分别为Nginx和pcre的源码目录。
# make && makeinstall
注:检查make编译过程日志信息,确认编译是否成功。
创建测试页面
在Nginx的站点目录中编辑测试页面。
# cd/home/opc/nginx-1.10.1/html
# cp index.htmlindex.html.bak
# vi index.html
<!DOCTYPE html>
<html>
<head>
<metahttp-equiv=Content-Type content="text/html;charset=utf-8">
<title>请关注Oracle Cloud最佳实践技术公众号!</title>
</head>
<body>
<p>云是现在的风口,再不学习,你就out了。传统IT的冬天就要到来了,是时候未雨绸缪了。来吧,跟着我们一起学云吧!</p>
<p>请关注我们的公众号:<ahref="https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzIzNjg2NjY1MQ==#wechat_redirect"><strong>凛冬未至</strong></a></p>
</body>
</html>
页面保存退出。
启动服务
# cd home/opc/nginx-1.10.1/sbin
#./nginx -c home/opc/nginx-1.10.1/nginx.conf
在浏览器地址栏中直接输入服务器的IP地址,查看测试页面。
页面效果:
如果上面的界面,就说明安装配置是成功的。
故障处理
如果打开界面时,出现403错误,如图:
有几种情况会导致403错误
1、服务器80端口未开通
2、Selinux未禁用
3、Nginx配置文件设置
解决403错误的方法:
进入Oracle云控制界面,打开80端口。(具体步骤参见本公众号有相关文章,《如何在经典Oracle云上设置共享网络》)
# setenforce Permissive
setenforce: SELinux isdisabled
# getenforce
Disabled
#vi /home/opc/nginx-1.10.1/nginx.conf
新增以下记录,允许root用户启动Nginx服务。
userroot
修改保存后,重启Nginx服务。
完成以上步骤后,应该就能正常访问页面。
END