如何在不使用parmalinks的情况下使用htaccess menualy更改wordpress中的url

时间:2015-10-19 11:39:19

标签: wordpress .htaccess

我已经在我的网站上生成了这个类型的网址。

using

更改为此类型

 http://example.com/?page_id=30

那么,我怎样才能在wordpress htaccess中使用它来改变它。 这个网站正在为当地主人工作,非常好。但不是活着。

2 个答案:

答案 0 :(得分:0)

您可以在.htaccess中使用301重定向进行此操作。它可能看起来像:

# Only do rewriting if the needed Module is available
<IfModule mod_rewrite.c>

# Enable URL rewriting
RewriteEngine On

# Change this path, if your installation is located in a subdirectory of the website root.
RewriteBase /

#Following Block for every page you want to redirect
RewriteCond %{QUERY_STRING} ^page_id=30$
RewriteRule ^index\.php$ http://example.com/features/? [R=301,L]

RewriteCond %{QUERY_STRING} ^page_id=31$
RewriteRule ^index\.php$ http://example.com/features-too/? [R=301,L]

RewriteCond %{QUERY_STRING} ^page_id=32$
RewriteRule ^index\.php$ http://example.com/features-again/? [R=301,L]

# and so on... 
</IfModule>

答案 1 :(得分:0)

根据你的评论,你可能会在更改了wordpress admin的固定链接结构后出现404错误,因为我认为你在.htaccess中缺少mod_rewrite,

请在根.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

如果您已经添加了上述代码,即使收到错误,请执行以下设置:

1 - 转到apache \ conf \ httpd.conf文件

2 - 查找行#rewrite_module modules / mod_rewrite.so

3 - 从上面的行中删除#,保存文件并重新启动服务器。

我相信它会奏效。