php - Ajax 错误 - "permission denied"

标签 php ajax iis

抱歉,这看起来比实际情况要长,但我想我应该包含所有信息!

我正在使用一个简单的 Ajax 脚本将内容动态引入页面上的

中。将一些新内容加载到 div 中的第一个请求工作正常,但如果我在刚刚加载的内容中有一个 Ajax“后退”链接,则似乎会引发错误。

更奇怪的是,它在我的办公室网络上可以工作,但如果我在家庭或 VPN 网络上,它就会失败。如果失败,JavaScript 调试器中会弹出此错误:

Line: 12
Char: 11
Error: Permission Denied
Code: 0
URL: http://www.example.com/about.php

代码实际上并没有那么复杂,它只是 W3 网站上的内容的一个稍微修改过的版本,但返回调用被“拒绝”的事实让我感到困惑。服务器 IIS 配置中是否有某些内容可以阻止脚本攻击? (随意想到?)

感谢任何帮助;)

首先 - Ajax 脚本

var myHttpRequest = false;
if(window.XMLHttpRequest)
     myHttpRequest = new XMLHttpRequest();
else if(window.ActiveXObject)
     myHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");
function loadContent(source, content)
{
     if(myHttpRequest)
     {
          var data = document.getElementById(content);
          myHttpRequest.open("GET",source);
            data.innerHTML = '<div class=\"loading_image\"><img src=\"images/loading.gif\" width=\"54px\" height=\"55px\" alt="loading" /></div>';
          myHttpRequest.onreadystatechange = function()
          {
               if(myHttpRequest.readyState==4)
                    data.innerHTML = myHttpRequest.responseText;
                    $('#col2_2_content').supersleight();
          }
          myHttpRequest.send(null);
     }
}

这是一个截断的页面示例,它调用 Ajax 内容,并在 col2_2_content Div 中插入所有内容。文件 ajax.js 在 head 部分引用。

<div id="col2_2_content">
    <div class="mugshot_container">
        <img src="images/mugshot_dh.jpg" onClick="loadContent('about/dh.php?ajax=yes', 'col2_2_content');"/>
    </div>
</div>

这是来自 about/dh.php 的代码,通过 Ajax 插入,以及 PHP 格式来决定应该返回什么。 (它也被设计为直接调用 - 在这种情况下它会得到一个页眉/页脚)。

<?php
$home_url = "http://www.example.com/url/";
$content = "
    <p>Some Text</p>
    <p><a onClick=\"loadContent('$home_url/about/about-main.php?ajax=yes',  'col2_2_content');\">Back</a></p>
";
if (isset($_REQUEST['ajax']) ) {
    echo $content;
} else {
    include_once 'about-header.php';
    echo $content;
    include_once 'about-footer.php';
}
?>

最佳答案

“权限被拒绝”听起来很可疑,好像您有 same origin policy问题。

关于php - Ajax 错误 - "permission denied",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1199694/

相关文章:

javascript - 使用 jQuery、Javascript、PHP 获取特定零件类

javascript - CORS 问题 - Angular/PHP/Apache

php - 获取两个表的统计数据

javascript - 如何使用 $.ajax 成功刷新 ng-repeat

javascript - 如何在 YII2 中将具有单独 API URL 响应的 ajax 返回到 Controller ?

javascript - JavaScript 可以访问 &lt;script src =""> 元素的源代码吗?

php - 如何设置 IIS、MS SQL 服务器来显示我的 PHP 错误

php - JWT Cookie 存储不正确 - Laravel

javascript - getElementById 在一种环境中有效,但在另一种环境中无效

c# - 为 ASP.NET Core MVC 显示 404 Not Found 页面