Nginx下由于伪静态导致的WordPress后台404错误

网站程序重装后,一度以为不用继续治疗了,没想到才好了几天,这货又犯病了,跟之前的状态差不多,只是以前连后台都无法进入,现在则是能够进入后台首页了,不过也仅仅止于此。在网上搜索了一番之后,发现这个问题很多人都碰到过,应该是nginx下伪静态的问题,我之前大半年里边没碰到这问题是因为我一开始就自己添加了一些伪静态规则,很长时间以来都没有问题,估计是后来WP的哪个更新更改了之前的一些设定,导致了自定义添加的那些伪静态规则反而成为了导致网站后台空白的元凶。

对于后台的404错误,仔细观察就能看出来这是固定链接的问题,后台所有链接中的“wp-admin/”都被去掉了,自然无法访问到那些页面,然后就404 not found了。在服务器的伪静态规则中最后添加一行代码就好,对于LNMP环境来说,具体位置是在/usr/local/nginx/conf/wordpress.conf

添加之后重启nginx就好。 

LNMP环境下Discuz和WordPress的伪静态问题

LNMP环境下的伪静态问题刚转移到标准LNMP环境下,最担心的就是兼容问题,因为之前用的是Lumanager,基本上是傻瓜式的操作,没啥命令行的事情,大部分有难度的操作都被洞哥给搞定了,我等使用者和小白只需要在后台登录图形界面点击几下鼠标就行了,有命令行的部分都是直接按着教科书一样的教程一步一步配置过来的,所以标准的LNMP环境刚使用时确实有点头疼。

昨天晚上把网站迁移过来,typecho的站点没发现问题,可是一个WordPress和一个Discuz的站点却不正常,wordpress首页直接显示未找到页面,而discuz则是只有首页,帖子页和主题列表全部都是404错误,感谢以前的折腾经历,我一下就怀疑到伪静态的问题上了。因为以前也碰到过类似的问题,在Windows主机上不支持伪静态规则,所以那时候使用重定向链接时碰到了这些问题。在谷歌上找了一下,发现很多人说装有缓存插件的wordpress要自己加一些伪静态规则,于是我就加上了,重启nginx,结果发现首页都进不去了,看来不是这个问题,就把所有自己加的伪静态规则全部去掉了,只用军哥LNMP一键安装包里边自带的配置文件,重启nginx,问题解决! Continue reading →

LuManager切换至Tengine后Wordpress找不到页面的解决办法

好吧,今天是新年里面正式回归网站更新的第一天,服务器软件什么的也好久没有更新了,手生了,各种折腾。把网站风格也改了一下,去掉了顶部图片和背景图片,虽然这俩对速度并没有啥太大的影响,可是放那里也是上百K的文件,而且和新背景颜色严重不搭。

看到LuManager开始周期性更新了,就连升了几级。同时觉得Wordpress刷新起来好慢,应该是过多的CSS和JS请求引起的,于是就从nginx切换到了淘宝家的开源Web服务器Tengine,据说这货能够把多个请求合并为一个,从现在的情况来看,确实这样,网站快了不止一倍,以往要十几二十秒才能打开首页,现在基本上都在7秒之内了,这也断绝了我更换服务器的打算,因为同服务器的其他网站速度一直不错,基本上没出问题。

好吧,说说囧的吧,升级好LuManager之后,就切换到了Tengine,结果却发现显示无法找到页面,而且只有WP出现了这个问题,同服的Typecho和discuz都没啥问题,好吧,就自己各种试,都没有成功,切换回nginx也没啥用,还一度出现了502错误。借助万能的谷歌大神,发现是PHP内存超出了,把内存限制提高之后,却发现依然不能显示文章,没办法,谷歌上的答案大都没用,最后只能到LuManager的官方论坛里面去看帖子。终于给我看到一个差不多的问题,最后发现原来是新版的一个bug,升级之后切换web服务器会导致伪静态规则失效,必须重新去选择一下伪静态规则。 Continue reading →

更换了固定链接,不会写nginx的301,求助!

    昨天心血来潮,把“嘘!一叶”的固定连接形式从/%postname%/换成了/%postname%.zz…,因为zz是我姓名的拼音首字母,之前也曾经想过要不要用omg或者学大猫用orz的后缀的,也设定过,可是看起来总觉得怪怪的,卖萌可耻,就换成了zz了。

    然后问题来了,由于我这边的突变,百度和谷歌收录的却全部是原来的链接形式,所以以后从搜索引擎和以前别处的引用链接全部都找不到页面了。。于是想写一个301重定向来解决这个问题,可是从网上找了很多方法,写了301,依然不能实现重定向,就目前的情况来看,估计从明后天开始,谷歌和百度进来的流量就会大大减少了,至于会不会被K,听天由命吧。

    按照网上的说法,nginx下来实现我的目的,代码应该是这样的:

     ^代表地址开始,$代表结束,permanent代表永久性重定向。

    但是实际上我这样设置的时候,并不能够起到作用。PS:按照网上的说法,这段放在了wordpress伪静态规则的前面。

    所以在这里求助,有高手看见或者路过的话给支点招啊。