Apache VirtualHost:如何对不同于 80 的端口进行服务器命名

Posted

技术标签:

【中文标题】Apache VirtualHost:如何对不同于 80 的端口进行服务器命名【英文标题】:Apache VirtualHost: How to ServerName a port different from 80 【发布时间】:2011-12-11 00:08:00 【问题描述】:

我使用 Xampp,我希望 test.localhost 转到 127.0.0.1:81

我在 httpd.conf 中写道:

Listen 127.0.0.1:81
NameVirtualHost 127.0.0.1:81
<VirtualHost 127.0.0.1:81>
 ServerName test.localhost
 DocumentRoot "d:\_projects\projectx"
 DirectoryIndex index.php
</VirtualHost>

我添加到windows\system32\drivers\etc\hosts

127.0.0.1       test.localhost

但是http://test.localhost 现在将我带到127.0.0.1:80

如何将其转至127.0.0.1:81

【问题讨论】:

【参考方案1】:

就您的浏览器而言,http://test.localhosthttp://test.localhost:80

你想要的是一个 Apache 重定向...

<VirtualHost 127.0.0.1:80>
 ServerName test.localhost

 Redirect / http://test.localhost:81
</VirtualHost>

【讨论】:

嗯,我明白了。但是我在 80 端口上已经有别的东西了——所以我实际上不想重定向。不过,你的回答在技术上是正确的,所以你应该打勾。【参考方案2】:

或者直接在浏览器上转到http://test.localhost:81,而不是使用重定向。

【讨论】:

以上是关于Apache VirtualHost:如何对不同于 80 的端口进行服务器命名的主要内容,如果未能解决你的问题,请参考以下文章

如何设置别名或 VirtualHost 以在 Apache2 上运行 laravel 项目

如何使用 Apache VirtualHost 获取 .htaccess 文件

如何使用 Apache VirtualHost 获取 .htaccess 文件

如何在 AWS ElasticBeanstalk 中修改 apache VirtualHost

如何使用 VirtualHost 将 http://example.com 重定向到 apache2.conf 中的 https://example.com

Apache - ServerName 中的连字符破坏了 VirtualHost