我正在使用邮递员来测试我拥有的 API,当请求不包含子域时一切都很好,但是当我向 URL 添加子域时我收到此响应。

不能得到任何回应

连接时出错http://subdomain.localhost:port/api/

为什么这可能会发生:

服务器不能发送一个响应:确保后端工作正常

自签名的SSL证书是被屏蔽:解决这个问题通过关闭的SSL证书验证设置>

代理配置错误地确保正确配置代理设置>代理

请求超时:在设置中更改请求超时>一般

如果我从Postman中复制相同的URL并将其粘贴到浏览器中,我会得到适当的响应,是否应该采取某种配置来使Postman与子域一起工作?

答案

首先去SettingsPostman:

  1. OffSSL certificate verificationGeneral标签:

  1. OffGlobal Proxy ConfigurationUse System Proxy在代理选项卡:

  1. 制作Request Timeout to 0 (Zero)

配置Apache:

如果上述变化会导致404反应,然后继续阅读;-)

在本地托管其网站的用户(例如XAMP和/或WAMP),可以访问他们的virtual-sites使用https://前缀地址,但这是一个谎言,并且真正启用SSL(对于每个虚拟站点),配置 Apache,如下所示:

  • 打开httpd-vhosts.conf文件(来自Apacheconf/extras目录),在你喜欢的文本编辑器。

  • 将虚拟站点的设置更改为类似的东西:

    <VirtualHost *:80 *:443>
        ServerName my-site.local
        ServerAlias *.my-site.local
        DocumentRoot "C:\xampp\htdocs\my-project\public"
    
        SSLEngine on
        SSLCertificateFile "path/to/my-generated.cert"
        SSLCertificateKeyFile "path/to/my-generated.key"
    
        SetEnv APPLICATION_ENV "development"
    
        <Directory "C:\xampp\htdocs\my-project\public">
            Options Indexes FollowSymLinks
            AllowOverride All
            Order allow,deny
            Allow from all
        </Directory>
    </VirtualHost>
    

    但当然,生成一个虚拟 SSL 证书,并更改所有文件路径,例如"path/to/my-generated.cert“成真实的文件地址。

  • 最后,通过访问浏览器的本地站点来测试,但使用http://(没有S)前缀的地址;Apache现在应该给出这样的错误:

    Bad Request
    
    Your browser sent a request that this server could not understand.
    Reason: You're speaking plain HTTP to an SSL-enabled server port.
    Instead use the HTTPS scheme to access this URL, please.
    

来自: stackoverflow.com