【问题标题】:Apache winnt_accept: getsockname errorApache winnt_accept:getsockname 错误
【发布时间】:2023-12-12 04:37:01
【问题描述】:

我正在使用 wampserver 2。在设置东西时,这个错误突然出现在我的 apache_error.log 中

(OS 10038)An operation was attempted on something that is not a socket.  : winnt_accept: getsockname error on listening socket, is IPv6 available?

在没有子域的域上一切正常。

这是我的 httpd-vhosts.conf

<VirtualHost *:80>
    DocumentRoot "D:/www/mainsite"
    ServerName mydomain.com
    ServerAlias mydomain.com
    <Directory "D:/www/mainsite">       
        Options -Indexes
        Options FollowSymLinks
        AllowOverride All
    </Directory>
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot "D:/www/mainsite"
    ServerName mydomain.com
    ServerAlias www.mydomain.com
    <Directory "D:/www/mainsite">       
        Options -Indexes
        Options FollowSymLinks
        AllowOverride All
    </Directory>
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot "D:/www/myapp"
    ServerName mydomain.com
    ServerAlias *.mydomain.com
    <Directory "D:/www/myapp">
        Options +ExecCGI
        AddHandler cgi-script .cgi
        Options -Indexes
        Options FollowSymLinks
        AllowOverride All
    </Directory>
</VirtualHost>

我可以访问 http://mydomain.com 但不能访问 http://www.mydomain.comuser1.mydomain.com 等等

【问题讨论】:

    标签: apache virtualhost


    【解决方案1】:

    我找到了解决它的方法,我仍在调查原因...

    要消除此错误: 代码:全选 (OS 10038) 尝试对不是套接字的东西进行操作。 : winnt_accept: 监听套接字上的getsockname 错误,IPv6 可用吗? 按照这些说明重置winsock:

    您需要一个命令提示符(控制台)窗口。 点击开始>运行> 类型: 命令文件 准确输入:

    netsh winsock 重置

    【讨论】:

    • C:\>netsh winsock reset 成功重置 Winsock 目录。您必须重新启动计算机才能完成重置。