【问题标题】:500 (Internal Server Error) of external php file外部 php 文件的 500(内部服务器错误)
【发布时间】:2015-02-16 23:18:41
【问题描述】:

我目前正在使用 WP Web Scraper 3.2 版。一旦我将简码或模板标签(php 代码)直接插入到我的页面中,插件就可以正常工作并且值会出现。我决定将模板标签放在外部 php 文件中,并在特定时间后使用 Ajax 调用代码,一旦我这样做,什么都不会出现,我的控制台显示 500(内部服务器错误)。我收到一条消息,上面写着“加载资源失败”。我的 php 文件 (test.php) 包含这个(假设 URL 是网站的实际链接):

<?php
echo wpws_get_content('URL', 'body > table > tbody > tr:nth-child(1) > td:nth-child(8)' );

在我的页面上,我使用 Javascript 加载这个文件,它看起来像这样:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$(document).ready( function() {
setInterval(function () {
    $('#demo').fadeOut('slow', function() {
        $('#demo').load('http://localhost:8888/test-site/wp-content/my-php-files/test.php', function() {
            $('#demo').fadeIn('slow');
        });
    });
}, 6000);
});
</script>

<div id="demo"></div>

我用其他代码测试了 PHP 文件,以检查它们是否可以正常工作并且工作正常。我在该文件中插入的一个 php 示例是:

<?php
echo(rand(10,100));

在最后一个示例中,使用我的脚本,每 6 秒从外部文件加载一个随机数,无需刷新页面,我没有收到任何错误。我由此推断插件提供的模板标签导致了问题。如何将此模板标签加载到我的脚本中?有什么建议吗?

国王的问候!!

【问题讨论】:

  • 您可以访问您的服务器日志吗?
  • 文件权限如何?
  • 如您所知,我在本地服务器上运行我的网站,并且我有权创建、读取、写入等,因为它不是我创建的第一个文件。我用相同的文件测试了其他代码并且它工作,所以它可以访问该文件。我在哪里可以检查以防万一?
  • @AvaBarbilla 如果您在本地计算机上,只需检查文件属性(如果在 Windows 上,从上下文菜单中获取文件属性)并查看权限,如果您想检查服务器上的文件权限,您将需要一种方法来连接服务器文件,例如 ssh 访问或基于 GUI 的东西,例如文件 zilla 或 cpanel
  • 启用 php 错误日志以发现发生了什么

标签: javascript php jquery ajax wordpress


【解决方案1】:

对我来说最简单的方法是通过在顶部插入这行代码来将 WordPress 环境加载到 php 文件中:

require('../../wp-blog-header.php');

【讨论】:

    猜你喜欢
    • 2016-02-19
    • 2015-09-22
    • 2014-10-17
    • 1970-01-01
    • 2014-06-08
    • 2018-01-15
    • 2010-12-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多