Wampserver “localhost:{$MYPORT8081} – Not a Listen port Error(s)” 错误的解决方案

张志军 1年前 (2023-04-06) 327次浏览 0个评论

wampserver升级到3.3.0版本后,添加监听端口,提示localhost:{$MYPORT8081} – Not a Listen port Error(s)”的错误。通过不断分析Apache的错误日志和配置文件,发现错误出现在virtualhost的配置文件中变量引用方式错误,导致变量解析失败。本文针对此问题给出了具体的解决方法。

在本地一直使用wampserver来调试PHP程序,最近将wampserver从3.2.4升级到3.3.0之后的版本,发现增加Listen port,创建virtualhost之后,提示如下错误:

localhost:{$MYPORT8081} - Not a Listen port Error(s)

这个错误一味这在Apache的配置文件中,这个变量应该是没有生效的。打开Apache的errorlog文件,显示如下错误:

[Wed Feb 15 17:54:18.633353 2023] [core:error] [pid 13468:tid 556] (OS 11001)不知道这样的主机。  : AH00547: Could not resolve host name *:{$MYPORT8081} -- ignoring!
[Wed Feb 15 17:54:18.635347 2023] [core:error] [pid 13468:tid 556] (OS 11001)不知道这样的主机。  : AH00547: Could not resolve host name *:{$MYPORT8082} -- ignoring!

这个错误就明确提示了{$MYPORT8081}这两个变量是有问题的。再打开配置httpd.conf文件,新增的几个端口是定义了的:

Define APACHE24 Apache2.4
Define VERSION_APACHE 2.4.54.2
Define INSTALL_DIR D:/programs/wamp64
Define APACHE_DIR ${INSTALL_DIR}/bin/apache/apache${VERSION_APACHE}
Define MYPORT8083 8083
Define MYPORT8082 8082
Define MYPORT8081 8081
Define SRVROOT ${INSTALL_DIR}/bin/apache/apache${VERSION_APACHE}

变量已定义,那就说明问题不出在这个地方,打开httpd-vhosts.conf,查看virtualhost的定义,发现变量的定义书写是有问题的。正常的变量引用应该是${varname},但是此处的引用方式确实{$varname},导致变量解析失败。手工修改virtualhost的配置如下,重启服务,问题解决。

<VirtualHost *:${MYPORT8081}>
ServerName localhost
DocumentRoot "d:/workspace/web/drupal"
<Directory "d:/workspace/web/drupal/">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require local
</Directory>
</VirtualHost>

0 0 投票数
文章评分

版权申明:

本博客所有文章除特别声明外均采用BY-NC-SA 4.0许可协议。依据BY-NC-SA 4.0许可协议,转载请附上原文出处链接及本声明。

原文链接:https://ilearning.org.cn/program/web/wampserver-localhost-myport8081-not-a-listen-port-cuowu-de-jiejuefangang.html

客官,说点什么吧!

订阅评论
提醒
guest

0 评论
内联反馈
查看所有评论
关于本站
立学网是一个分享个人学习总结的知识网站,内容覆盖编程技术讨论,金融经济,历史哲学,读书笔记,生活随笔等内容。
关注我们
关注微信公众号 关注微博