/ 中存储网

Apache虚拟主机(VirtualHost)的配置方法

2013-12-24 11:41:01 来源:kejihao
Redhat Enterprise Linux下Apache虚拟主机(VirtualHost)配置 Redhat Enterprise Linux (包括 CentOS Linux), 是使用最广的 Linux 服务器, 大量的网站应用都部署在其上. 1. 打开文件 /etc/httpd/conf/httpd.conf, 搜索 VirtualHost example, 找到

1

2

3

4

5

6

7

8

9

10

11

12

13

#

# VirtualHost example:

# Almost any Apache directive may go into a VirtualHost container.

# The first VirtualHost section is used for requests without a known

# server name.

#

#<VirtualHost *:80>

#    ServerAdmin [email protected]

#    DocumentRoot /www/docs/dummy-host.example.com

#    ServerName dummy-host.example.com

#    ErrorLog logs/dummy-host.example.com-error_log

#    CustomLog logs/dummy-host.example.com-access_log common

#</VirtualHost>

2. 仿照例子, 添加一段代码来指定某一域名的网站.

1

2

3

4

5

6

7

8

9

10

11

#

# DocumentRoot 是网站文件存放的根目录

# ServerName 是网站域名, 需要跟 DNS 指向的域名一致

#

<VirtualHost *:80>

ServerAdmin [email protected]

DocumentRoot /var/www/httpdocs/demo_aliluna_com

ServerName demo.aliluna.com

ErrorLog logs/demo.aliluna.com-error.log

CustomLog logs/demo.aliluna.com-access.log common

</VirtualHost>

3. 重启 httpd 服务, 执行以下语句. Ubuntu Linux下Apache虚拟主机(VirtualHost)配置 Ubuntu 在 Linux 各发行版中, 个人用户数量最多的. 很多人在本机和虚拟机中使用. 但 Ubuntu 和 Redhat 的 VirtualHost 设置方法不相同. 1. 打开目录 /etc/apache2/sites-available/, 发现 default 和 default-ssl 两个文件, 其中 default 是 http 虚拟主机服务的配置文件, default-ssl 是配置 https 服务使用的. 可以复制一份 default 文件. 并修改配置文件名, 文件名必须与域名一致 (如: demo.aliluna.com) 2. 打开新建的配置文件, 修改 DocumentRoot, ServerName 和对应的配置目录. 例子如下:

1

2

3

4

5

6

7

8

9

10

11

#

# DocumentRoot 是网站文件存放的根目录

# ServerName 是网站域名, 需要跟 DNS 指向的域名一致

#

<VirtualHost *:80>

ServerAdmin [email protected]

DocumentRoot /var/www/httpdocs/demo_aliluna_com

ServerName demo.aliluna.com

ErrorLog ${APACHE_LOG_DIR}/demo.aliluna.com-error.log

CustomLog ${APACHE_LOG_DIR}/demo.aliluna.com-access.log combined

</VirtualHost>

3. 通过 a2ensite 激活虚拟主机配置

1

sudo a2ensite demo.aliluna.com

4. 打开目录 /etc/apache2/sites-enabled/, 你会发现所有激活的虚拟主机, 可以通过 a2dissite 进行注销

1

sudo a2dissite demo.aliluna.com

5. 重启 Apache 服务, 激活虚拟主机

1

sudo /etc/init.d/apache2 restart

Windows下Apache虚拟主机(VirtualHost)配置 Windows 是市场占有率最高的 PC 操作系统, 也是很多人的开发环境. 其 VirtualHost 配置方法与 Linux 上有些差异, 以下方式适合原生 Apache, XAMPP 和 WAMP 套件. 1. 打开目录 {Apache2 安装目录}confextra, 找到 httpd-vhosts.conf 文件. 2. 仿照例子, 添加一段代码来指定某一域名的网站.

1

2

3

4

5

6

7

8

9

10

11

#

# DocumentRoot 是网站文件存放的根目录

# ServerName 是网站域名, 需要跟 DNS 指向的域名一致

#

<VirtualHost *:80>

ServerAdmin [email protected]

DocumentRoot "D:/workspace/php/demo_aliluna_com"

ServerName demo.aliluna.com

ErrorLog "logs/demo.aliluna.com-error.log"

CustomLog "logs/demo.aliluna.com-access.log" common

</VirtualHost>

3. 打开 httpd.conf 文件, 添加如下语句.

1

2

# Virtual hosts

Include conf/extra/httpd-vhosts.conf

4. 重启 Apache 服务.