CartoDB地图被阻止 - XMLHttpRequest无法加载 - CORS?

时间:2015-07-20 18:50:03

标签: php xmlhttprequest cors cartodb

我有一个CartoDB地图,它使用PHP连接到我的CartoDB帐户并显示图层。我让人们报告他们可以看到地图,但不能看到图层,我不知道为什么......下面是Chrome中显示的错误图片,但仅适用于某些用户。

Image of the error in Chrome

我尝试设置.htaccess以允许交叉原始请求,如下所示:

    <FilesMatch "\.(js)$">
<IfModule mod_headers.c>
    Header set Access-Control-Allow-Origin "*"
    Header set Access-Control-Allow-Origin http://www.example.com 
    Header set Access-Control-Allow-Origin http://example.com 
    Header set Access-Control-Allow-Origin http://projectname.example.com
    Header set Access-Control-Allow-Credentials true
    SecFilterEngine Off
    SecFilterScanPOST Off
</IfModule>
</FilesMatch>

我还尝试设置我的php文件以包含allow access origin: PHP文件1:

<?php
    header("Access-Control-Allow-Origin: *");
include 'http://example.com/phplocation/cartodbProxy.php';
$queryURL = $_POST['qurl'];
$return = goProxy($queryURL);
echo $return;
?>

PHP文件2:

<?php
header("Access-Control-Allow-Origin: *");
session_cache_limiter('nocache');
$cache_limiter = session_cache_limiter();
function goProxy($dataURL) 
{
    $baseURL = 'https://cartoDBUserName.cartodb.com/phplocation/v2/sql?';
    $api = '&api_key=enter API key here';
    $url = $baseURL.'q='.urlencode($dataURL).$api;
    $result = file_get_contents ($url);
    return $result;
}
?>

我也尝试过:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/projectLocation/$1 [L,R=301]

仍然是用户无法访问....

0 个答案:

没有答案