繁体   English   中英

.htaccess中的Access-Control-Allow-Origin在子目录中不起作用

[英]Access-Control-Allow-Origin in .htaccess didnt work in sub directories

尝试将图像从URL转换为base 64时出现错误,错误是

从>来源>' http:// localhost:4200 '访问>' https://img.blabla.com/user/profile_pict/1541043536539.jpg '的图像已被CORS策略阻止:否>'访问-> Control-Allow-Origin'标头出现在请求的资源上。

我已经做了很多尝试来纠正此错误,有人说:“您应该将Header set Access-Control-Allow-Origin "*"放在https://img.blabla.com/上的.htaccess中,“ .htaccess,像这样。

<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{SERVER_PORT} !443 RewriteRule ^(/(.*))?$ https://%{HTTP_HOST}/$1 [R=301,L] </IfModule>

<FilesMatch "\\.(gif|png|css|js|jpg)$"> <ifModule mod_headers.c> Header set Access-Control-Allow-Origin "*" Header set Access-Control-Allow-Methods: "*" Header set Access-Control-Allow-Headers: "Origin, X-Requested-With, Content-Type, Accept, Authorization" </ifModule> </FilesMatch>

.htaccess只能在/index.html 它在子目录中不起作用。 假设我有一个具有以下结构的网站:

/index.html /.htaccess /user/profile_pict/*.jpg /travel_agent/trip/*.jpg

在外部根文件夹的.htaccess中尝试以下操作:

<IfModule mod_headers.c>
    Header set Access-Control-Allow-Origin "*"
</IfModule>

如果仅涉及.jpg图片,则应将以上代码包装在其中:

<FilesMatch "\.(jpg)$">
...
</FilesMatch>

还有其他使用.htaccess的方法,您可以转到目录并在其中创建.htaccess文件,该.htaccess文件仅适用于该目录。 或者,您也可以从根.htaccess定义目录路径

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM