下面是我在运行 xampp 1.7.4 的 Windows 7 机器上参考的 httpd-vhosts.conf 文件:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot C:/xampp/htdocs
ServerName localhost
ServerAlias localhost
<Directory "C:/xampp/htdocs">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@new_site
DocumentRoot C:/xampp/htdocs/new_site
ServerName new_site
ServerAlias new_site
<Directory "C:/xampp/htdocs/new_site">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
我甚至无法猜测为什么,但在任何 localhost 目录上运行 https(甚至https://localhost/new_site运行良好)但运行https://new_site产生 404 错误。
我知道端口 443 通常用于 https 重定向,但将其添加到虚拟主机配置文件会导致 apache 完全停止运行。此外,在同一文件中从未为 localhost 定义端口 443,因此我认为这是不必要的。
答案1
Apache 对此配置很满意,但您的 DNS... 则不然。您需要告诉您的计算机您不仅如此,localhost
而且new_site
...
你可以通过编辑hosts
位于 的文件来做到这一点%systemroot%\system32\drivers\etc\hosts
。添加以下行:
127.0.0.1 new_site
或者,如果您正在运行 DNS,请向其添加新的 A 记录。
为了使 https 正常工作,您需要将您的站点添加到ssl.conf
或httpd-ssl.conf
,您的站点localhost
也应该在这里定义。