403在Wordpress中调用外部PHP时被禁止

时间:2013-02-25 12:16:33

标签: php http-status-code-403

我在Wordpress中创建了一个新页面。在此页面上,我输入了以下HTML代码:

Please click this <a href="http://sitename.com/blog/wp-content/themes/twentytwelve/statistics.php" title="link">link</a> to view the details.

statistics.php具有查询后端MySQL数据库的代码,获取详细信息并以表格格式显示。

然而,当我点击Wordpress页面上的链接时,我收到403禁止消息。

Forbidden

You don't have permission to access /blog/wp-content/themes/twentytwelve/statistics.php on this server.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

我已尝试将PHP文件的权限设置为644和755.错误仍然存​​在。

我甚至尝试在PHP文件中添加这样的简单代码:

<?php echo "welcome"?>

即便如此,同样的403禁止错误。

现在,我在这个Wordpress网站上有另一个页面。在该页面中,我有一个HTML表单,它将POST请求发送到名为process.php的PHP文件,该文件与statistics.php位于同一目录中。该页面正常工作。

所以,我尝试将我的新页面中的URL从statistics.php替换为process.php。这不会给出403禁止的错误。

为什么我无法从我的wordpress页面访问一个PHP文件?我是否只允许从wordpress页面链接到一个外部PHP文件?

statistics.php和process.php都具有相同的权限。但是,虽然一个页面能够轻松访问process.php,但另一个页面为statistics.php提供了错误。

非常感谢帮助。

感谢。

1 个答案:

答案 0 :(得分:0)

您拥有脚本的目录不可读,也不应该是。它由wordpress用于存储主题,此目录只能通过wordpress读取才能将主题输出到前端。

尝试将脚本放在WordPress无法控制/需要的目录中。即,在您的公共根目录上,创建一个新的可读目录,并在您需要的任何脚本的目录下放置。