因目前nginx已经成了主流反向代理软件,所以在linux服务器系统上,我们几乎都会安装nginx这个东东,这就给同时使用apache带来了麻烦,因为apache缺省使用的也是80端口。
而更多时候,我们显然不想修改nginx的端口,于是只有修改apache的80端口。
1.首先查找apache的httpd服务的配置文件httpd.conf,用rpm,yum等不同方式安装的apache的目录有所不同,我这里是安装centos6.5时就已经选择安装了apache2.2.15,配置文件位于/etc/httpd/conf/httpd.conf,首先编辑这个文件
找到Listen 80这一行,修改为
Listen 8000
继续修改httpd.conf文件,找到
#ServerName www.example.com:80
在下面增加一行
ServerName localhost:8000
修改保存httpd.conf后,执行
# service httpd restart
糟糕!会出现很多错误提示,主要是
Permission denied: make_sock: could not bind to address [::]:8000
2.需要尝试执行semanage增加8000端口,执行
# semanage port -l|grep http
如果没有semanage命令,可以先安装semanage及selinux
# yum provides /usr/sbin/semanage
或者
# yum whatprovides /usr/sbin/semanage
查看一下,然后执行安装命令:
yum -y install policycoreutils-python
安装完后重新执行
#semanage port -l|grep http
http_cache_port_t tcp 3128, 8080, 8118, 8123, 10001-10010
http_cache_port_t udp 3130
http_port_t tcp 80, 81, 443, 488, 8008, 8009, 8443, 9000
pegasus_http_port_t tcp 5988
pegasus_https_port_t tcp 5989
但是在某些机器上执行上面的命令,可能会出现以下错误提示:
# semanage port -l|grep http
/usr/sbin/semanage: SELinux policy is not managed or store cannot be accessed.
显示策略有问题,一般来说重启系统可以解决这个问题。
如果能够正确执行,可以看到我的服务器列表中不包含8000端口,于是执行
# semanage port -a -t http_port_t -p tcp 8000
/usr/sbin/semanage: 端口 tcp/8000 已经存在
却显示8000端口已存在,这时候仔细观察,发现http_port_t中包含9000端口,于是我将apache配置文件中的端口的两处配置改为了9000端口
3.再次重启httpd服务,提示apache启动成功了,如果需要,可以在nginx配置文件nginx.conf中代理apache的9000端口,这样就可以不用输入端口号直接访问你的apache服务了。
然而这里有个疑问,在我的机器上,9000端口已经存在于selinux中,apache最后使用了9000端口,会不会有神马冲突或隐患,哪位对selinux有深刻理解的专家能否给解释一下。
4.最后,如果iptables中的9000端口未打开,就增加这个防火墙规则即可。
分享到:
相关推荐
CentOS 6.5 安装说明,CentOS系统安装入门,菜鸟必备!
centos6.5 安装anaconda3.zip 存放这里,让大家下载快捷一点
2、安装CentOS 6.5系统的计算机内存必须等于或者大于628M(最小内存628M),才能启用图形安装模式; 3、CentOS 6.5文本安装模式不支持自定义分区,建议使用图形安装模式安装; 4、CentOS 6.5的系统安装方式分为:...
centos6.5-ntp安装包.rar
CentOS 6.5 配置IP地址.DNS的三种方法
本资源介绍如何在CentOS6.5上,升级GCC,安装QT5.1.1(包含QtCreator),图文并茂,并且还有全程安装视频提供,还提供资源下载。
Centos6.5下安装Oracle 11g.docxCentos6.5下安装Oracle 11g.docx
针对centos6.5 安装Apache2.4批量部署脚本,运行startup1.sh即可自动安装
Lenovo SR650 手动加载430-16iHBA驱动安装CentOS 6.5 Guide.....
CentOS6.5网络基本配置.docx
centos6.5双网卡绑定
介绍VMware安装CentOS6.5,VMware:一款虚拟机,该教程在 VMware上介绍安装 Linux 的过程
Centos6.5安装keepalive步骤
CentOS6.5 一键安装 Mysql5.6 包含安装包
linux下centos6.5静默安装oracle 12c(图形化安装教程)
centos 6.5 telnet 客户端 安装文件 rpm包 centos 6.5 telnet 服务端 安装文件 rpm包 http://vault.centos.org/6.5/os/x86_64/Packages/ 从官网下载亲测可以用
centos6.5查看命令.docx
centos6.5 freeswitch安装,比较直观明了的详细安装过程,相关步骤和问题解决有详细说明,经过测试再redhat上安装,没有问题。
centos6.5 安装专门针对oracle 分区稍有不同,基于图像界面 不过里面也有介绍其他不同的分区
centos6.5 oracle 卸载步骤(干货)