我是Web开发的新手,所以请耐心等待。
我主要是iPhone开发人员,但最近使用共享托管为其他人创建了一个网站。我可以在该站点上用PHP很好地写文件,而不必考虑权限。
我正在为正在制作的新应用程序部署Web服务,但进展并不顺利。这里最重要的区别是我正在使用其他人的服务器,并且仅具有FTP / DB访问权限。
基本上,我拥有构成我的CMS的PHP文件,如下所示:
mysite.com/admin/manage_news.php
mysite.com/admin/manage_events.php
这些脚本然后可以编辑数据库或文件。它们可以与DB很好地交互,但是我的脚本无法写入文件系统。例如,他们可能尝试写入以下文件:
mysite.com/data/img/event_1.png
mysite.com/data/somefile.txt
这在我的MAMP安装(本地)上运行良好,但是一旦部署到服务器,PHP每次尝试写入时都会喷出错误……类似这样:
无法打开文件“ ../data/img/someimage.png”进行写入。
所以我给运行服务器的那个人发了电子邮件,他回来说:
经公众许可可以使用吗?(777)
而且,确实如此-但我对使用公共权限非常谨慎,因此请立即将其禁用。我给他发电子邮件说:“如何使我的PHP脚本使用标准用户权限编写”,他说:
将其保留为公共,会没事的
我认为这是域解析中某处的ip冲突,但我对此并不担心。
然后,我给他发送电子邮件说“肯定是不安全的”或类似的话,他回答了以下内容:
现实是,有数百万个网站,其中包括我管理的多个网站,这些网站的各个文件夹上都有777,这只是一种生活方式。
谁能给我一些我可以给他的解决方案的想法?还是我可以做些避免避免使用777的事情?我真的不喜欢我的网站/服务上的任何文件夹都是可公开写的。
我非常感谢您的建议,因为我对Web服务器了解甚少。