使用MAMP localhost不会启用CORS

问题描述 投票:0回答:1

我在本地机器上用PHP构建了RESTful Api,一切都运行良好。预检请求正在发送正确的响应等,PHP处理的所有内容都像梦一样。

但是如果我尝试访问公共文件夹中的图像(在这种情况下通过javascript编程)我会感到愤怒:

Access to XMLHttpRequest at 'http://localhost/tmp/avatars/user.jpg' from origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

我在公共根目录中的.htaccess文件中设置了以下内容,并在MAMP Apache <Directory><VirtualHost>指令中设置了以下内容,但它只是拒绝工作。

Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Methods "*"

CORS在最好的时候是痛苦的,但这简直太荒谬了。为什么这不起作用?

有任何想法吗?

.htaccess cors mamp-pro
1个回答
1
投票

从MAMP中的apache文件夹更改httpd.conf文件,并在Directory标记上添加以下代码(line204-208)。

<Directory />
    Options Indexes FollowSymLinks
    AllowOverride All
    Header set Access-Control-Allow-Origin "*"  
</Directory>

您可以使用nano打开并进行修改。

#nano /Applications/MAMP/conf/apache/httpd.conf

然后重新启动你的MAMP服务器,应该正常工作。

我解决了同样的问题。

您也可以使用名为“允许CORS:Access-Control-Allow-Origin”的Google Chrome扩展程序来解决此问题。

但请注意,这仅适用于您的Chrome浏览器。最有效的解决方案是第一个,修改服务器上的配置文件。

祝好运

© www.soinside.com 2019 - 2024. All rights reserved.