wordpress网站自定义url静态化更改办法

前几天网站被黑之后,正常的网页内容全都无法打开了,只有改为默认的那种短链接的形式才能打开,但是那种形式对于搜索引擎实在不友好,而且会导致我原本被收录的内容全都消失了,折腾了半天终于又搞好了,在这里将这次的办法再记录一下,也算是给自己备份一下。

首先是创建http.ini文件,放置于根目录下,或是rewrite文件夹下,内容如下:

根目录下:

[ISAPI_Rewrite]
RewriteRule ^/$ /index.php [L]
RewriteRule /(.*) /index.php/$1 [L]
RewriteRule /robots.txt /robots.txt [L]

文件夹下:

[ISAPI_Rewrite]
RewriteRule /sitemap.xml /sitemap.xml [L]
RewriteRule /favicon.ico /favicon.ico [L]
RewriteRule /wap(.*) /wap$1 [L]
RewriteRule /content/uploads/(.*) /content/uploads/$1 [L]
RewriteRule /wp-(.*) /wp-$1 [L]
RewriteRule ^/$ /index.php [L]
RewriteRule /(.*) /index.php/$1 [L]

创建404文件,在空间内制定错误类型页面为自定义404页面类型:

<?php
$qs = $_SERVER['QUERY_STRING'];
$pos = strrpos($qs, '://');
$pos = strpos($qs, '/', $pos + 4);
$_SERVER['REQUEST_URI'] = substr($qs, $pos);
$_SERVER['PATH_INFO'] = $_SERVER['REQUEST_URI'];
include('index.php');
?>

对.haccess文件的修改

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} ^wp-content.*
RewriteCond %{REQUEST_FILENAME} ^wp-admin.*
RewriteCond %{REQUEST_FILENAME} ^wp-include.*
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

这样其实就可以支持静态化的,但是url有中文的还是会报错,最后在网上找了很久参考了古月小简的博客,更改了wp-includes 下的class-wp.php文件,文件较长,需要的朋友可留言给我,我提供文件给你。

终于将网站恢复。

 

 

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: