Laravel从外部链接加载存储的资源

时间:2018-07-25 11:43:48

标签: php laravel apache cors

我正在使用laravel 5.6和apache 2.4.33和php 7.2.4

例如,我在单独的laravel中创建了一个表单(a.com),该表单通过发布请求将ogg文件上传到服务器b.com,然后使用Storage::putFileAs

将其保存到存储文件夹中

现在我想在a.com中加载和播放上载的ogg文件 但是当我尝试这个

<audio id="myAudio">
  <source src="https://www.b.com/storage/file_name.ogg" type="audio/ogg">
</audio>

在控制台中它响应:

无法加载https://b.com/storage/file_name.ogg:所请求的资源上不存在“ Access-Control-Allow-Origin”标头。因此,不允许访问来源“ https://b.com”。

当我在新标签页中打开该文件的网址时,它会播放,但是当我在html或javascript中使用它时,

我的.htaccess文件是:

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

RewriteEngine On

# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [L,R=301]

# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

</IfModule>

我之前也已经安装了barryvdh/laravel-cors,当我打电话给a.com网站并从其获得请求时,效果很好

0 个答案:

没有答案