本文参考http://blog.csdn.net/lane_l/article/details/20235909和http://www.360doc.com/content/15/0608/13/15798950_476528603.shtml,特此致谢。
注:http://blog.csdn.net/jackome/article/details/36418727以及http://www.zhujiangroad.com/program/JSP/13457.html中所讨论的技术也能实现本文的需求。
安装nginx的目的是作为反向代理,反向代理指以代理服务器来接受Internet上的连接请求,然后将请求转发给内部(或其他)网络上的服务器,并将从服务器上得到的结果返回给Internet上请求连接的客户端。
nginx可以使这个网站的80端口即支持PHP,又支持JSP,即根据80端口收到的HTTP请求,根据一定的规则,转发到内部的其它端口上,例如Tomcat的8080端口(它的端认端口),Apache的8081端口(将默认端口80改为8081)。
本文的安装环境是阿里云ECS服务器,CentOS 6.5 64位版本
通过yum命令安装:
yum install nginx
安装完成后就可以启动它,但是要先关闭使用80端口的apache (包括PHP,MySQL等,在安装PHP一文中安装的):
/opt/lampp/lampp stop
然后启动nginx:
service nginx start
这时通过浏览器可以测试安装是否成功:
============================
安装成功后,可以开始进行配置,按照本文开头的要求,配置分为以下几个步聚:
(0)设为开机自启动:
chkconfig nginx on
[另一个
chkconfig –level 345 nginx on
]
手工重启动:
/etc/init.d/nginx restart
(1)修改apache的端口号为8081:
vi /opt/lampp/etc/httpd.conf
查找到 Listen 80,将80改为8081
另外还要修改 vi /opt/lampp/lampp,将其中的if testport 80改为if testport 8081,这是LAMP本身定义的。
启动apache:
/opt/lampp/lampp start
(2)配置ngnix
nginx 的配置文件是 /etc/nginx/nginx.conf,其中最后一行include /etc/nginx/conf.d/*.conf;指出真正需要修改的配置文件是在/etc/nginx/conf.d目录中的。这个目录中有三个配置文件,现在为需要进行反向代理的域名进行配置,例如为域名php.wxit.org,它指向8081端口,在/etc/nginx/conf.d目录中使用下述命令创建配置文件:
vi php.wxit.org.conf
输入下述内容:
server {
listen 80;
server_name php.wxit.org;
charset utf8;
access_log /var/log/nginx/php.wxit.org.log main;
location / {
proxy_pass http://127.0.0.1:8081;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
然后针对每一个域名都创建一个这样的文件。
用下述命令测试配置文件是否有错误:
/usr/sbin/nginx -t
正确时显示如下图:
重启动nginx,应该能正常工作,但是我的域名没有备案,测试时弹出一个提示网站备案的页面,因此无法正常使用,也不能测试。
(3)安装tomcat
这一步将在下面一篇文章中讨论。