Wordpress永久链接问题与index.php

时间:2016-06-10 10:21:45

标签: php wordpress

为什么即使我激活.htaccess

,此示例域名www.example.com/about-us也无效
AddHandler php-stable .php
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On

RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

当您同时浏览此链接www.example.com/index.php/about-us时,它会将您重定向到此www.example.com/about-us,但这不起作用,但是当您浏览此www.example时.com / Index.php / about-us这是url工作的时间。请帮忙。它主持在godaddy

2 个答案:

答案 0 :(得分:0)

好像您的托管有mod_rewrite问题。您可以在服务器上创建一个.php页面,让我们调用它phpinfo.php并在其中编写以下代码

<?php
   phpinfo();
?>

在浏览器中打开此页面并查找mod_rewrite设置。它需要开启才能永久工作。

现在,转到WP Admin Panel -> Settings -> Permalink并选择/post_name/ Wordpress将自动写入.htaccess文件(前提是它可以访问它)。

如果您的服务器上未启用mod_rewrite,除了联系您的托管服务提供商之外,别无其他方法可以启用它。所有托管服务提供商都可以使用phpinfo进行交叉检查。

以下是WordPress的完全有效的.htaccess文件

# 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>
# END WordPress

还要确保将apache.conf配置为由.htaccess文件覆盖。 <{1}}之类的Apache设置确保AllowOverride none;不受尊重。

答案 1 :(得分:0)

根据您解释的问题,我建议您

转到WP Admin Panel -> Settings -> Permalink

然后选择/post_name/

前面的单选按钮

然后转到WP Admin Panel -> Appearance -> Menus

现在检查您是否拥有菜单中使用的所有页面,或者您是否使用过任何自定义链接?

另请检查.htaccess

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php
</IfModule>

# END WordPress