php上传的问题

这两天折腾VPS,把原来的Typecho插件弄上去折腾,发现麻烦问题,没法通过php上传了。无论是php+flash还是通过iframe都不行。尤其蛋疼的是flash上传,错误就一个 #2038 ,完全不知道具体原因,折腾人啊。搜索引擎都用得冒烟了都没解决好。

先是typecho的附件都没法上传,肯定是服务器配置出了问题,后来找到原因是apache配置了mod_security引起的,通过.htaccess文件关掉mod_security

<IfModule mod_security.c>
SecFilterEngine Off
</IfModule>

附件上传没问题了,但是自己写的上传代码总是没法,用chrome和firefox的调试工具总算知道了是403错误,处理上传的php文件被禁止访问了,网上找了一大圈,都没发现解决办法。最后偶然才发现在typecho的usr目录下有个.htaccess文件,一查看就找到问题的根本了。原来typecho为了安全,禁止了对usr目录下的所以php文件的直接访问。我的插件在usr/plugins目录下,处理上传的php文件在插件目录下,需要单独执行处理上传,被禁止访问就没法上传了。所以那个邮件提醒插件CommentToMail也会出现问题,因为也有独立的php文件需要执行,如果.htaccess文件禁止了usr目录下的php文件访问,肯定发不出邮件。

阅读剩余部分...