之前 wordpress 迁站,把网站从空间迁到了独立主机,发现主页即后台界面打开正常,但是打开文章界面及分类界面时nginx显示404,大惑不解,后来在网上发现,迁站后,发布文章后及修改固定链接后文章跳转时出现404都是因为伪静态没有设置好,所以要调整一下
第一种方法:重写伪静态(有可能伪静态文件没写好,我就是迁站时原来服务器Apache的伪静态文件在新服务器Nginx环境下错误了,所以导致404)

在宝塔面板里,可以点击网站设置,找到伪静态,根据你的网站框架(如wordpress,discuz等)选择对应的伪静态文件,保存立即生效。
wordpress在Nginx环境下的伪静态配置为:
location /
{
try_files $uri $uri/ /index.php?$args;
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
第二种方法:将固定链接的形式改为数字型/朴素型。
wordpress设置里固定链接将固定链接改为 改为数字型/朴素型 ,简简单单才是真,一劳永逸.
这是目录含有中文导致的,因为文章标题是中文,在固定链接路径中就会含有中文,此时可能会出现某魔幻编码问题,而解决办法也很简单,使用WP固定链接中唯一不含文章名的**”朴素“**就解决了

第三种方法:开启apache的rewrite功能
1,.htaccess要开放写权限,这样在自定义wp的永久链接时,wp会自动重写.htaccess。所谓删除或手动重写.htaccess就是因为没有开放它的写权限。
2,找到APACHE文件中的httpd.conf文件, 把#LoadModule rewrite_module modules/mod_rewrite.so 前的#去掉,加载rewrite模块。

3,查看APACHE文件中的httpd.conf文件是否默认设置了AllowOverRide为None,如果是,要改成All。或者修改 wordpress所在的vhost段添加 < Directory /wp所在路径/> AllowOverride All < /Directory> 重启apache。
原创文章,作者:Rosmontics,如若转载,请注明出处:https://rosmontis.com/archives/84