今天在安装部署好WordPress之后,发现发布新的文章,跳转到文章详情时报404,网站有小伙伴说要改固定连接方式为「朴素」选项,但是大家都知道URL对SEO是有影响的,最佳做法是需要包含关键词在URL中的。所以还是要用到自定义的方式来设置网站的固定URL。
根据我们使用的服务有不同的处理方法
Apache
Apache 是 Linux 主机下常见的环境,现在一般的 Linux 虚拟主机都采用这种环境。在.htaccess中添加下面的代码:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
修改完成后,要重启 Apache 生效。
Nginx
打开nginx.conf
或者某个站点的配置环境,比如 zangxl.com.conf
(不同的网站配置不一样),在server {}
大括号里面添加如下的代码:
location / {
index index.html index.php;
if (-f $request_filename/index.html){
rewrite (.*) $1/index.html break;
}
if (-f $request_filename/index.php){
rewrite (.*) $1/index.php;
}
if (!-f $request_filename){
rewrite (.*) /index.php;
}
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
保存重启 Nginx 生效。
IIS(强烈不推荐)
在 windows 的 IIS 服务器下安装 WordPress,因为 IIS 环境运行 PHP 程序的效率问题,相对同等配置下 Linux 的 Apache 和 Nginx 环境,要低很多。
宝塔
如果你 是用宝塔安装的WordPress,那就很简单了。
在 宝塔面板>网站>设置>伪静态 里选择对应的伪静态规则(WordPress)并保存生效。