鱼喃

听!布鲁布鲁,大鱼又在那叨叨了

Apache配置VirtualHost虚拟主机

在Apache上配置多站点

Ubuntu/Debian

1、添加虚拟主机配置文件

从默认配置文件复制

1
2
cd /etc/apache2/sites-available/
cp 000-default.conf blog-newnius-com.conf

2、修改配置文件

1
vim blog-newnius-com.conf

修改以下项

1
2
3
4
DocumentRoot  /var/www/blog    #网站根目录
ServerName blog.newnius.com #网站域名
ErrorLog ${APACHE_LOG_DIR}/blog-newnius-com/error.log
CustomLog ${APACHE_LOG_DIR}/blog-newnius-com/access.log combined

3、建立网站根目录,以及日志文件根目录

1
2
mkdir /var/log/apache/blog-newnius-com
mkdir /var/www/blog

4、启用虚拟主机

1
a2ensite blog-newnius-com.conf

5、重启服务器

1
service apache2 restart

Redhat Enterprise Linux ( 包括CentOS)

由于默认加载的目录文件太多,我们可以建立新的目录放置虚拟主机信息

1、添加自定义配置目录到配置文件中

1
vim /etc/httpd/conf/httpd.conf

在末尾加上

1
2
IncludeOptional virtual-hosts/*.conf
#virtual-hosts 是任意目录名

2、新建自定义配置目录

1
mkdir /etc/httpd/virtual-hosts

3、修改配置文件

1
2
cd /etc/httpd/virtual-hosts
vim blog-newnius-com.conf

参照填写如下信息

1
2
3
4
5
6
<VirtualHost *:80>
ServerName blog.newnius.com
DocumentRoot /var/www/blog-newnius-com
ErrorLog /etc/httpd/logs/blog.newnius.com/error.log
CustomLog /etc/httpd/logs/blog.newnius.com/access.log combined
</VirtualHost>

4、创建虚拟主机根目录与日志文件根目录

1
2
mkdir /var/www/blog-newnius-com
mkdir /etc/httpd/logs/blog.newnius.com

5、重启服务器

1
service httpd restart

如果要实现ubuntu系统上的a2ensite功能,参考链接1

关于网站代码目录的权限设置,参考链接1

MAC 与Windows 上的配置,参考链接2

参考

1、How To Set Up Apache Virtual Hosts on CentOS 7

2、Apache 虚拟主机 VirtualHost 配置

3、Apache虚拟主机指南