繁体   English   中英

PHP脚本没有被执行

[英]PHP script not getting executed

我已经使用cURL解决方案来解决XSS,但是它存在问题。 我的proxy.php文件内容是: -

<?php
    $url = "http://www.yahoo.com";
    $ch = curl_init();
    $timeout = 5;
    curl_setopt ($ch, CURLOPT_URL, $url);
    curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
    $file_contents = curl_exec($ch);
    curl_close($ch);
    echo $file_contents;
?>

这就是我试图执行PHP脚本的方式

$("#tempButton").click(function(){
    $("#pageContent").load('http://localhost:8080/proof/proxy.php',function() {
        var t = $("#pageContent").html();
        alert(t);
    });
});

但是变量t显示了proxy.php文件的内容,而期望它显示在proxy.php文件中设置的yahoo.com的内容。 我做的事情很傻。 #FirstTimePHP

由于变量t显示文件的内容,服务器软件不得将脚本识别为PHP。

有几个原因可能会发生这种情况。 没有开放标签将是1但你当然有这些。

另一个潜在的原因是php没有作为模块加载到服务器软件中。

另一个可能的原因是服务器不解析扩展名为php的文件(这是可配置的)。

你应该从基础开始。 忽略javascript,而是手动调用url,看看你得到了什么。 您可能会看到代码。

如果发生这种情况,请确保将服务器软件(通常是apache)设置为识别扩展php与php模块相关联。 最后确保PHP实际上已正确安装。

让你的proxy.php像这样。

    <?php
        if(in_array('curl', get_loaded_extensions())) { 
                $url = "http://www.yahoo.com";
                $ch = curl_init();
                $timeout = 5;
                curl_setopt ($ch, CURLOPT_URL, $url);
                curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
                curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
                $file_contents = curl_exec($ch);
                curl_close($ch);
                echo $file_contents;
                }
        else {
        echo 'No cUrl here';
        }
?>

暂无
暂无

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

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