其实很久以前我就想写这篇文章了的,只是搞来搞去我又忘记了。
现在好了,一大清早的,头脑比较清醒,就静下心来写写吧。
……………………………………………………………………………………
众所周知,用Wordpress的朋友一般都会选择Linux主机。
而用Linux主机的朋友都会选择LMAP组合,即:Linux + Mysql + Apache + Php 。
当然有些童鞋追求性能,选择了Nginx,但是对于Wordpress来说,还是Apache兼容性好一点,比如那个伪静态,比如偶最喜欢的WP Super Cache插件。
好了既然是用WP的童鞋,无论安装或者使用,都会遇到要将文件夹权限设置为777的情况。
可是有的童鞋就会说了:“其实只要设置为755就行了。”
于是乎,牧鹚 就反驳道说:“那我告诉你,我的就非得设置为777才行!”
童鞋不服回敬到:“唉,看来777和755的争论永远也不会停止!”
……………………………………………………………………………………
唉,说这句 “看来777和755的争论永远也不会停止!” 的童鞋,不是 牧鹚 喷你,你肯定就从来木有自己配置过服务器。
众所周知,玩WP的大部分兄弟姐妹都是用的现成的主机。
而像 牧鹚 这样的 “折腾蛋” ——宁可用便宜VPS,也不用高档主机的淫,并不多。
其实牧鹚想说的是,卖主机的比卖VPS的暴力N倍。
你想想,一台服务器可以划分出多少个主机用户?我想这个数目可真的不小,起码几百个是有的吧。
而一台物理服务器可以分割成多少台虚拟独立服务器(PS:即VPS)呢?玩过Vmware的童鞋都知道!
所以,不管是VPS提供商,尤其是主鸡提供商,他们都是要赚钱的!
所以为了提高用户体验,主鸡商们提供了一系列的优化措施。
所以才有了今天的文章主题关于755和777权限的争论。
其实关键的原因在于——主机商所使用的PHP版本!
我想,大家肯定是更加支持755这个”最高权限“的说法。
为什么呢?
因为主机商都是用的SuPhp。
SuPhp,一看这个名字,就知道了他的含义。
玩过Linux的都知道,su在Linux里面是一个提权命令!
比如 su root su mucid;
如果你用的是SuPhp,那么,比如我想给 “ wp-content\uploads ”,里面上传文件怎么办?
其实很简单,只要你将 “ wp-content\uploads ” 的权限设置为了755的话,SuPhp就会自动赋予你 “写入” 权限。
所以这就是SuPhp自动设置,自动提权功能!
为什么要这样做呢?
我说过,主机商是要赚钱的,所以为了赚到更多钱,他必须让顾客感觉满意。
所以主机商大部分采用SuPhp的原因是为了照顾那些——不晓得应该将那些文件夹设置为777的人 。
所以,所谓的SuPhp的安全性就是这么回事吧。
PS:其实就是怕有的懒人,干脆把所以的文件权限都设置为777啦,这样对于服务器多不安全呢!
好了,其实 牧鹚 的观点就是——SuPhp其实就是给懒人用的。
所以相对于SuPhp,牧鹚更加喜欢ModPhp。
对,他叫ModPhp,跟Apache组件的命名规则很相似,所以算是Apache的 “原生态” Php版本吧!
ModPhp跟SuPhp不同,我想ModPhp能更加让我们了解Linux的权限机制。
在ModPhp里,需要公共写入权限也就是必须将文件设置为777的地方,你是雷也打不掉的。
所以啊,ModPhp是规规矩矩的,ModPhp所体现的才是真正的Linux权限机制。
但其实归根接底,还是PHP运行机制问题。
在 suphp 模式下,php是一个 cgi,运行在php文件所拥有者的进程下,所以web享有对php的所有权限
而么modphp呢,运行于apache,然后假如 php 的文件所有者是 mucid,而apache的运行者是www-data 所以,apache相对于php文件所有者,只是个外来客户,就是这样子啦。。
所以 牧鹚 选择的是ModPhp。
牧鹚将大部分文件权限都设置为755,然后将 “wp-content\uploads、wp-content\upgrade、wp-content\themes、wp-content\plugins” 统统都设置为777就行了。
因为在ModPhp里面,是无法将755的文件提权为777的,所以除了几个特殊文件夹,我觉得ModPhp反而更加安全!
为啥,以为按照SuPhp的机制,凡是被设置为755的文件夹,都具有被赋予777权限可能。
而如果是ModPhp的话,就不存在这种安全顾虑了!
所以想和 牧鹚 一样使用 Kloxo控制面板的童鞋,那么在服务器组件设置里面。
牧鹚强烈建议你。
将Php组件设置为 ModPhp 吧 !
PS:关键是,用SuPhp的人多了,就像用IE的人多了一样,不是真相的变成了 “ 真相 ”,慢慢的我们都变成了 “不明真相的围观群众”!
That’s a nice post.
哇,诶,都不懂,我用的都是win主机,悲剧了!
@阿鼎 , 我热爱Linux!
好久没玩vps了~
不是很懂这个,但还是大部分777
怎么继续用独立服昵。。呃自己做的模板
汗……闲话太多,看了好大一大段还没入正题……
@miracle , 呃,偶一向如此。
刚打算把wp站从独服搬到虚拟主机的飘过~
博主的模板蛮不错的~
@Rey , 为啥不继续用独立服昵。。呃自己做的模板,勉强。
不是很懂这个,但还是大部分755。。
@oalleno , 大部分都从没用过独立主机。。
不用wp,博主所说也不能理解
@nike dunks , 只是拿wp做例子,是linux相关。。
这个我目前还不太知道