问题描述
不确定是否是问这个问题的正确地方,请让我知道我是否记错了,应该在其他地方发布。
我正在开发一个由多种表单和POST / GET函数组成的应用程序,这些应用程序以瀑布样式工作,以创建联系人>客户>服务>服务详细信息。为了继续进行下一部分,您必须完成上一部分。
应用程序的最后一个任务是使用整个过程中提供的一些数据创建一个csv文件,将该文件存储在项目文件本身内部的文件夹中,以便脚本可以定期移动这些文件以进行存档。 / p>
该应用程序托管在我们自己的服务器中,并打算在内部使用,但是只要我走到最后一步,我就会得到
fopen(/var/www/html/UBERNET/csv/companyName.csv):无法打开流:在第59行的/var/www/html/UBERNET/tests/csvTest.PHP中权限被拒绝
在阅读有关如何授予适当权限的方法时,我没有发现一种明确的做法,而是发现许多人首先担心这样做,并指出在/ var期间为/ var打开权限非常不安全。其他网站和帖子提出时没有人提出任何警报。我不知道到底会发生什么,但我知道那就像把门打开。
我明白了逻辑,但想完全确定这不是一个好主意。也许对于内部使用的应用程序来说,并没有真正的危险。
如果确实存在风险,那么我想问一下我该怎么做?创建一个新文件夹并仅授予该文件夹权限?父文件夹的权限如何?可悲的是,我对如何解决这个问题一无所知。
我可以提供用于创建csv文件的函数的代码,但是那里没有问题,因此我一开始不将其包括在内。 我的项目的路径已经发布:
- 项目路径:
/var/www/html/UBERNET
- 已执行文件的路径:
/var/www/html/UBERNET/tests/csvTest.PHP
- 用于存储的目标文件夹的路径:
/var/www/html/UBERNET/csv
这些是/ var的权限:
drwxr-xr-x 13 root root 4096 May 8 2019 var
简短回顾:
如果这不会带来风险,我想更改/ var的权限,以便我可以存储csv文件,但是我不知道chmod的工作原理以及如何将其应用于/ var。
如果更改许可不是一个好主意,那么您可以考虑采用任何替代方法。
感谢您的时间和帮助!
解决方法
切换到html/
目录并执行以下命令
chmod 766 UBERNET
您现在已启用从该文件夹读取和写入该文件夹的功能。只有yje文件夹的所有者可以执行该文件夹中的任何文件(如果有可执行文件),这对于您的应用程序应该是相当安全的。