0

我在访问我的博客文章时遇到问题。自从我迁移到新服务器后,出现以下问题。

起初,页面和帖子的链接都不起作用。但不知何故,我修复了页面,现在它开始工作了。但是帖子的链接还没有工作。

每次我点击帖子时,它都会显示错误 500。我已经检查了.htaccess文件并使用了Settings > Permalink返回默认值,但仍然无法正常工作。Mod rewrite也是active,我可以使用永久链接访问页面链接。

谁能帮忙指出问题出在哪里?

.htaccess file
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>

PS:对不起我的语法不好,英语不是我的主要语言

4

2 回答 2

0

好的,所以在检查了指出我的 wordpress 主题 single.php 文件中的错误的 apache 错误日志后,我发现罪魁祸首原来是“相关新闻脚本”注入到我的单个 php 文件中。每当我尝试访问博客文章时,这都会导致整个错误为 500。

脚本是这样的:

                    <!-- Related News -->
                    <div class="relatedposts hidden-xs hidden-sm">
                    <h3>Artikel Lainnya</h3>
                    <p>&nbsp;</p>
                    <?php
                        $orig_post = $post;
                        global $post;
                        $tags = wp_get_post_tags($post->ID);

                        if ($tags) {
                        $tag_ids = array();
                        foreach($tags as $individual_tag) $tag_ids[] = $individual_tag->term_id;
                        $args=array(
                        'tag__in' => $tag_ids,
                        'post__not_in' => array($post->ID),
                        'posts_per_page'=>3, // Number of related posts to display.
                        'caller_get_posts'=>1
                        );

                        $my_query = new wp_query( $args );

                        while( $my_query->have_posts() ) {
                        $my_query->the_post();
                        ?>

                        <div class="relatedthumb">
                            <a rel="external" href="<? the_permalink()?>"><?php the_post_thumbnail(array('class' => 'img-responsive img-thumbnail',230,170)); ?><br />
                            <h5><?php the_title(); ?></h5>
                            </a>
                        </div>

                        <? }
                        }
                        $post = $orig_post;
                        wp_reset_query();
                        ?>
                    </div>
                    <!-- Related News-->

我已经删除了这些行,所有问题都解决了!

感谢您分享您的建议!

于 2016-01-08T11:34:29.333 回答
0

更新 .htaccess :

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
</IfModule>

配置永久链接:

自定义结构:/%postname%/

请查看:https ://codex.wordpress.org/File:permalink-settings.png

于 2016-01-08T08:43:13.890 回答