web目录下不应该存在多余的程序
由我刚开始学习php的时候,discuz, ofstart 这些程序所有的程序都是存在放在web的根目录下。如ofstart和phpwind的require目录,存放了大量的库文件。
虽然都会在这些程序前增加一些判断和限制。但除了库文件,还有临时文件,模板文件等这些文件本来就不应该被人直接通过 web 访问到的。无论从安全性还是代码管理方面,把不能访问的文件存放到web目录下。
为什么会有这样的问题?回到以前,大部分的网站还是放到虚拟主机上,而且ftp的根目录直接就是web的根目录。为了适应这样的情况。像 phpbb, vb, discuz, ofstar的代码也只能把库文件直接存放到同一级的目录下。
但现在还有必要吗?现在的服务器价格已经比以前便宜很多,基本上一个站长就是一台服务器,差一点也是vps,另外就算虚拟主机也不会是ftp根目录与web根目录是同一个。一般都是ftp比web高一级目录。所以我们没有必要再把所有程序放到web目录下,而是把需要在web上用到的文件才放到web目录下。