Curl 无法在 localhost 子域上运行

Curl 无法在 localhost 子域上运行

我正在使用 localhost 子域。

子域名由apache像这样设置。

它适用于网络浏览器。

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "/Users/web/mylist/public"
    ServerName myilist.localhost
    ServerAlias www.mylist.localhost
    <Directory /Users/web/mylist/public>
        AllowOverride All
        Order Allow,Deny
        Allow from All
    </Directory>

    ErrorLog "/private/var/log/apache2/dummy-host.example.com-error_log"
    CustomLog "/private/var/log/apache2/dummy-host.example.com-access_log" common
</VirtualHost>

但是,每种方法都会返回类似的错误。

curl --request GET --url http://mylist.localhost

curl --request GET --url 
mylist.localhost:80

curl --request GET --url 
mylist.localhost

curl: (6) Could not resolve host: myinvestlist.localhost

答案1

这与您的 Apache 配置无关。Apache 仅在收到请求后才决定提供哪些文件 - 但它无法告诉操作系统发送到哪里请求。

您收到的错误消息(“无法解析主机”)不是来自 Apache,而是来自操作系统本身。将名称转换(解析)为 IP 地址是真实域的 DNS 或本地域的 /etc/hosts 文件的工作。

对于的子域名localhost,需要在 /etc/hosts 中定义它们的 IP 地址:

127.0.0.1 localhost
::1 localhost

127.0.0.1 mylist.localhost
::1 mylist.localhost

127.0.0.1 www.mylist.localhost
::1 www.mylist.localhost

相关内容