Discuz论坛rewrite规则设立后导致404错误解决办法
今天老蔡配了一个Discuz论坛,因为不是放在根目录下,所以为rewrite规则的事情很是郁闷。之前写过几条很简单的rewrite规则,都是动辄查半天的手册。而且rewrite规则很大程度上是需要懂正则表达式,而老蔡的记性太差,已经从头学了3遍正则表达式了……
好在Discuz论坛可以自动生成一些默认的rewrite规则,自己只需要配置好.htaccess文件即可。然后老蔡在根目录下放下已经设置好的.htaccess文件后,只能看见论坛首页,伪静态以后的链接显示404错误。
于是老蔡以为是rewrite规则有误,可是重新学习了一遍规则的写法后发现,并没有出现什么问题,于是开始纠结、郁闷、蛋疼等各种无作用抗争。
后来我将某大侠的一句话放入了大脑的缓冲区:如果在系统跟目录则为RewriteBase /,如果在根目录下的其他文件夹,如在根目录下的test文件夹,则为RewriteBase /test,过了许久才缓过神来:是不是.htaccess文件还能不放在根目录,而是放在比如我的/bbs目录,而只需把RewriteBase后面的信息改成/bbs?
于是动手试了试,发现果然如此,成功的访问了伪静态页面。