gpt4 book ai didi

.htaccess - 如何将 Access-Control-Allow-Origin 限制为特定路径?

转载 作者:行者123 更新时间:2023-12-03 07:57:41 24 4
gpt4 key购买 nike

我有一个通过 javascript 转换广告的网站。所以,我基本上允许用户包含我的脚本....:

<script src="http://www.example.com/ads.js" ></script>
<script>
MYADDS.insertAdvert();
</script>

问题是,我不断收到:“No Access-Control-Allow-Origin”错误。直到我将它添加到我的 htaccess 文件中:

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

问题是,这打开了我的整个网站,可能存在安全风险。所以,作为 ads.js 文件,实际上只执行 ajax 请求:

http://www.example.com/place/where/my/adds/are/fed/from

如何使上述 htaccess 规则仅适用于该路径?请记住,它不是实际目录,所以我不能将 htaccess 文件放在该文件夹中。它实际上是一条“虚拟路径”。该站点是使用 Laravel 构建的,因此会进行典型的 Laravel 路径重写。这是完整的 htaccess 文件:

<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>

RewriteEngine On

# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

</IfModule>

有什么办法吗?

最佳答案

您还需要在您的 htaccess 中添加以下两行

Header add Access-Control-Allow-Headers "origin, x-requested-with, content-type"
Header add Access-Control-Allow-Methods "PUT, GET, POST, DELETE, OPTIONS"

所以你额外的 htaccess 会像下面这样

Header add Access-Control-Allow-Origin "*"
Header add Access-Control-Allow-Headers "origin, x-requested-with, content-type"
Header add Access-Control-Allow-Methods "PUT, GET, POST, DELETE, OPTIONS"

关于.htaccess - 如何将 Access-Control-Allow-Origin 限制为特定路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24113244/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com