CentOS下配置apache虚拟主机

1.apache虚拟主机配置:

(1)基于域名的配置(同一个IP不同域名)方法:

   ①添加域名到hosts文件中,

   命令vim /etc/hosts

   添加的内容:  

 192.168.142.140  www.test1.com

192.168.142.140  www.test2.com        

   ②修改httpd.conf文件,添加虚拟主机节点

     命令vim /etc/httpd/conf/httpd.conf

    添加的内容:


DocumentRoot "/var/www/html/test1"
ServerName www.test1.com

Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
Allow from all

 


DocumentRoot "/var/www/html/test2"
ServerName www.test2.com

Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
Allow from all

    

(2)基于端口号的配置(同一个IP不同端口)方法:

(

首先要确保防火墙对端口放行

如果监听端口后httpd服务无法正常启动,说明这个端口被占用了

)

  ①在httpd.conf文件中添加Listen 端口号

   比如Listen 8080

        Listen 8081

  ②修改httpd.conf文件,添加虚拟主机节点


DocumentRoot "/var/www/html/test"
ServerName 192.168.142.140:8080

Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
Allow from all

 


DocumentRoot "/var/www/html/test1"
ServerName 192.168.142.140:8081

Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
Allow from all


(3).如果是apache2.4及以上版本的话要将Directory中的

Order allow,deny
Allow from all

换成

Require all granted

 

2.在windows下iis与apache共存80端口!通过各自的域名分别访问,不用加端口号(虚拟主机+代理):

参考http://digdeeply.org/archives/0110443.html

 

3.CentOS启动了SELINUX导致SELinux对网站目录权限控制的不当的问题

  当修改httpd.conf文档中的DocumentRoot、为目标站点目录时,除了是默认的/var/www有效外,其他目录均无效时, 而查看apache错误日志中的提示:Permissioon denied: access to /目标目录/index.html denied ,并且检查httpd.conf和目标目录权限都没有问题时, 就可能是SElinux的启动导致权限控制不当造成的

解决办法:直接关闭SElinux,命令为setenforce 0

或更改SELINUX的配置文件vim /etc/selinux/config

SELINUX=enforcing 改为SELINUX=disabled



 

你可能感兴趣的:(PHP,Web,Apache,Linux)