【问题标题】:PHP working on one server but not on anotherPHP 在一台服务器上工作,但不在另一台服务器上工作
【发布时间】:2015-12-23 06:32:18
【问题描述】:

我正在将 wordpress 网站从 JustHost 服务器迁移到 VPS (Debian 8)。我已经成功安装了 wordpress,所有页面都工作正常,除了主页是空白的,唯一的页面有不同的模板。我已启用调试,但出现错误:

Parse error: syntax error, unexpected '<' in /var/www/wp-content/themes/goldistra/front-page-presentation.php on line 19

显然没有错误,因为该站点在第一台服务器上运行良好。

当我从该 php 文件中的第 13 行到第 19 行删除代码时,网站终于出现了,但它仍然被破坏,因为幻灯片库没有打开图像,twitter 小部件没有工作并且页脚没有显示。

这是第 13-19 行的代码示例:

 <?php/* if ( get_option('fppre_intro_heading') != '' ): ?>
                <h1><?php echo get_option('fppre_intro_heading'); ?></h1>
            <?php endif; ?>
            <?php if ( get_option('fppre_intro_text') != '' ): ?>
                <p><?php echo get_option('fppre_intro_text'); ?></p>
            <?php endif; 
            <h1><?php echo $post->post_title; ?></h1>*/?>

以下是一些服务器信息:

1. First (working) server

    Date:   Fri, 25 Sep 2015 11:53:32 GMT   
    Server: Apache  
    Vary:   Accept-Encoding,Cookie,User-Agent   
    Cache-Control:  max-age=3, must-revalidate  
    WP-Super-Cache: Served supercache file from PHP 
    Content-Encoding:   gzip    
    Content-Length: 7165    
    Cache-Control:  max-age=3600    
    Expires:    Fri, 25 Sep 2015 12:53:32 GMT   
    Connection: close   
    Content-Type:   text/html; charset=UTF-8

2. VPS

Date:   Fri, 25 Sep 2015 12:06:00 GMT   
    Server: Apache/2.4.10 (Debian)  
    X-Pingback: http://151.236.10.228/xmlrpc.php    
    Link:   <http://151.236.10.228/>; rel=shortlink 
    Vary:   Accept-Encoding 
    Content-Encoding:   gzip    
    Content-Length: 350 
    Connection: close   
    Content-Type:   text/html; charset=UTF-8

我在我的 VPS 上使用 PHP 版本 5.6.13

【问题讨论】:

  • 正确评论并检查php标签,检查你的第13行
  • 从 13 到 19 的行实际上已被注释(这里显示不好),所以只有 但 nvm,当我删除这些行时,我的网站仍然损坏:151.236.10.228 +我有一些我无法修复的 mySQL 错误,但我发现这些错误并没有影响网站布局。
  • 这里是整个首页-presentation.php:pastebin.com/FiLRa37D

标签: php wordpress apache debian hosting


【解决方案1】:

看来你有一些问题。 首先,在php标签之间定义了一个注释块。 .您不能在 php 块中开始评论并关闭其他 php 评论中的评论。 所以,这应该工作:

<?php if ( get_option('fppre_intro_heading') != '' ): ?>
<h1><?php echo get_option('fppre_intro_heading'); ?></h1>
<?php endif; ?>
<?php if ( get_option('fppre_intro_text') != '' ): ?>
<p><?php echo get_option('fppre_intro_text'); ?></p>
<?php endif; ?>
<h1><?php echo $post->post_title; ?></h1>

<?php /*if ( get_option('fppre_intro_heading') != '' */ ): ?>
<h1><?php echo get_option('fppre_intro_heading');  */?></h1>
<?php /* endif; */ ?>
<?php /* if ( get_option('fppre_intro_text') != '' ): */ ?>
<p><?php /* echo get_option('fppre_intro_text'); */ ?></p>
<?php /* endif; ?>
<h1><?php /* echo $post->post_title; */?></h1>

【讨论】:

  • 好的,您的第一个代码 sn-p 工作正常,但我的网站仍然损坏。看看这里 151.236.10.228 。这是整个首页-presentation.php:pastebin.com/FiLRa37D
【解决方案2】:

您在第 18 行错过了一个关闭的 php 标记。这就是您收到第 19 行错误的原因。

此外,您不应在包含其他 PHP 标记的 php 标记中使用 PHP cmets。如果您想一次注释掉多个 HTML 元素,请改用 HTML 注释。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多