谁能指导我学习如何使用 Apache 2.2 设置虚拟主机的好教程?这是我的情况:
我的笔记本电脑上运行着 Apache,我想要两个网站——一个在端口 80 上,一个在端口 8089 上。我想通过输入计算机的 IP 地址从网络上的另一台计算机访问每个站点,例如http:// 192.168.1.102和http://192.168.1.102:8089。然而,当我输入第二个 url 时,它会将我定向到在端口 80 上运行的网站。
提前感谢您的帮助。
谁能指导我学习如何使用 Apache 2.2 设置虚拟主机的好教程?这是我的情况:
我的笔记本电脑上运行着 Apache,我想要两个网站——一个在端口 80 上,一个在端口 8089 上。我想通过输入计算机的 IP 地址从网络上的另一台计算机访问每个站点,例如http:// 192.168.1.102和http://192.168.1.102:8089。然而,当我输入第二个 url 时,它会将我定向到在端口 80 上运行的网站。
提前感谢您的帮助。
首先,您需要指示 Apache 监听您需要的端口:
Listen 80
Listen 8089
其次,您需要告诉它如何处理 80 和 8089 流量:
<VirtualHost *:80>
DocumentRoot /website/site80
ServerName internet.dev
</VirtualHost>
<VirtualHost *:8089>
DocumentRoot /website/site8089
</VirtualHost>
第三,您需要“允许”Apache 使用这些目录:
<Directory "C:/website/site80">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
<Directory "C:/website/site8089">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
只需像这样定义 2 个虚拟主机,但 DocumentRoots 不同:
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.somecompany.com
DocumentRoot "/docs/dummy-host.somecompany.com"
ServerName dummy-host.somecompany.com
ServerAlias www.dummy-host.somecompany.com
ErrorLog "logs/dummy-host.somecompany.com-error.log"
CustomLog "logs/dummy-host.somecompany.com-access.log" common
</VirtualHost>
<VirtualHost *:8089>
ServerAdmin webmaster@dummy-host.somecompany.com
DocumentRoot "/docs/dummy-host.somecompany.com"
ServerName dummy-host.somecompany.com
ServerAlias www.dummy-host.somecompany.com
ErrorLog "logs/dummy-host.somecompany.com-error.log"
CustomLog "logs/dummy-host.somecompany.com-access.log" common
</VirtualHost>