前面写了一篇在win系统下面搭建多个网站的Apache配置方法,后来在Linux上面用同样的方式测试了一遍,发现win的配置方法并不适用于Linux(测试环境为CentOS 7 ),但是两者的配置方法还是差不了多少的,在这贴一下步骤,可供大家参考。
一、搭建网站
这个就不用多说了,只要在www目录下面搭建多个网站,每个网站一个文件夹就好,下面的图片是我的两个网站目录。
二、配置Apache文件
1、配置httpd.conf文件(文件位置一般在Apache安装目录的conf文件夹下面),查找内容 httpd-vhosts.conf ,将这一行前面的#注释号去掉,然后保存。这句话的意思有事开启使用httpd-vhosts.conf文件。
2、配置httpd-vhosts.conf文件(文件位置在conf文件夹下面的extra文件夹下面),文件夹里面可能会存有一些样例数据,没注释掉的那些都是,这些代码直接删掉就好,如果不删掉的话会报错的。然后添加下面的代码。
1234567891011121314151617 | [cce_xml]<VirtualHost *:80> ServerName vvso.cn #定义域名 ServerAlias www.vvso.cn #定义子级域名 DocumentRoot "/yjdata/www/www/blog/" #定义网站目录 #下面这一行适合php未配置解析目录的,如果已经定义了解析目录就不需要了,腾讯云的一般需要加。 #ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:10000/yjdata/www/www/blog/$1 DirectoryIndex index.html index.php #下面的代码是定义文该网站的Apache日志的生成位置,注意,目录一定要存在,否则会报错。 CustomLog "| /usr/local/apache2/bin/rotatelogs /wwwlogs/blog/%Y_%m_%d_access_log 86400 480" combined <Directory "/yjdata/www/www/blog"> Options FollowSymLinks #禁止显示文件目录 AllowOverride None Order allow,deny Allow from all #允许所有人访问 </Directory></VirtualHost> |
如果是多个站,只需要在下面多添加些即可。
做好这些之后重启Apache,命令行为: service httpd restart 注意不同的版本命令不一样,一般是这个。
在写做完上面的配置之后,我发现有些效果和Apache不太一样,比如并没有配置外网ip的访问目录,但是仍然可以使用外网访问,这个我找了半天原因也没有找到,最后在下面用外网ip配置了一遍,禁止访问才可以,不像win上面,直接为每个域名开启虚拟主机,如果不配置外网是没办法访问的。如果有朋友找到了原因还请留言。