为什么在配置了其他端口的情况下使用 Apache 仅使用端口 80?

为什么在配置了其他端口的情况下使用 Apache 仅使用端口 80?

我在 Debian 服务器上运行 Apache。在初始安装和设置时,它在 上运行良好port 80,我成功安装了一个 Wordpress 实例,一切正常。

我想减少端口扫描带来的冲击,所以我不使用端口 80。

我添加了端口和4041,然后问题就出现了。4045ports.conf

ports.conf

Listen 4041
Listen 4045

<IfModule ssl_module>
        Listen 443
</IfModule>

<IfModule mod_gnutls.c>
        Listen 443
</IfModule>

文件sites-enabled/000-default.conf

<VirtualHost *:4041>
        ServerAdmin webmaster@localhost
        ServerName zeus
        DocumentRoot /var/www/html
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

<VirtualHost *:4045>
        ServerAdmin webmaster@localhost
        ServerName zeus
        DocumentRoot /var/www/html/wordpress
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

这些是我修改过的唯一文件,因为我有另一台机器可以很好地充当网络服务器。

我得到的是,任何访问尝试都会http://<ip>:4041检索默认的“成功安装 Apache”index.html,并且 URL 读取http://<ip>时会忽略端口方向,这与我在工作服务器上看到的不同。 端口 4041 根

然后就出现访问/wordpress失败的问题。

端口 4041,转换 端口 4041 失败

如果我访问,http://<ip>:4045我希望看到我的 Wordpress 主页,根据分配,DocumentRoot但我得到的却是失败: 端口 4045“不安全端口”?

如果我将所有内容改回端口 80,一切就都能正常工作。

在此处输入图片描述

我是否缺少了编译实例功能?

我感到很困惑。

这是我使用 Apache 时遇到的最大困难,15 年来我一直在用它做最基本的事情。

我已经为此烦恼了 6 个小时了。天啊!!

编辑:2016 12 21 端口 4045 位于 Chrome 的不安全端口列表中:

答案1

我得到的是,任何尝试访问 http://:4041 都会检索到默认的“成功

这是预料之中的,因为端口 4041 上的虚拟主机被配置为从目录提供内容

/var/www/html

但据我了解,您的 wordpress 安装位于

/var/www/html/wordpress

然后就出现了访问/wordpress失败的问题

这也是意料之中的。当您访问

http://192.168.1.20:4045/wordpress

wordpress 网站按预期运行,但 wordpress 代码将您重定向到

http://192.168.1.20/wordpress

因为 wordpress 将安装 URL 存储在其数据库中。

要修复此问题,您必须使用以下 URL 中描述的方法修复 wordpress URL:

https://codex.wordpress.org/Changing_The_Site_URL

答案2

我猜你的配置不完整/不正确。以下答案为同一个 VirtualHosts 声明多个端口似乎涵盖了你的用例

相关内容