如何使目录永久可写?


27

我正在使用LAMP堆栈进行开发,因此无法使/ var / www永久可写。我使用以下命令:

sudo chmod -R a+rwX /var/www

这可行,但是在放置Web应用程序并通过浏览器访问它之后,它显示“权限被拒绝”错误。发生这种情况时,我必须再次执行命令。

如何使目录永久可写,而无需再次运行命令?

谢谢!


1
在其中创建一个子文件夹/var/www并更改该目录的权限。那应该可以解决问题
Anam Ahmed

5
实际上,您永远都不应使Web root可写。请参阅 出于安全性原因,为什么/ var / www不应该使用chmod 777?
Goran Miskovic

以上是上面的一些好的评论...考虑到安全原因,您应该保留/var/www默认rwxr-xr-x的许可,并且可能/var/www会将所需的文件移动到其中的子目录中,并相应地更改* html文件您对文档根目录所做的更改。
2013年

Answers:


39

数字权限可以解决您的问题。

sudo chmod 775 'your directory'

如果您想知道为什么只有775,这是您的答案

400 read by owner
040 read by group
004 read by anybody
200 write by owner
020 write by group
002 write by anybody
100 execute by owner
010 execute by group
001 execute by anybody

 400
+040
+004
+200
+020
+100
+010
+001
=775

它将授予所有许可,除非有人写。


9

那我也有同样的问题

sudo chmod 777 directory

解决了。

这使得该目录对任何人都是可写,可读和可执行的。因此,什么用户或组拥有它或使用过Lampp都没有关系。

但是,如果您的计算机是公共访问权限,则不建议这样做。


8

通常,您使用的命令应永久更改权限。

试试sudo chmod -R 775 /var/www/(基本上是一样的)。如果这样不起作用,则可能需要通过更改目录的所有者(也许是组)sudo chown <user>[:<group>] /var/www/

此外,您可能会认为“权限被拒绝错误”可能是由于数据库或其他地方的访问权限不足引起的。


但是正如@schkovich已经提到的那样,您不应该使Web根文件夹可写。
David

13
+ Rinzwind我使用777,耐心等待您的光临。
Marcel

如果我不加任何斜杠就可以使用它,例如 sudo chmod -R 775 my_folder
Yarh '16

@Marcel现在已经死了,@ Rinzwind结束了他
Dheeraj

2
@Marcel我们怎么知道它是真实的您,如果@ Rinzwind撕下marcel的脸并戴上它该怎么办。
Dheeraj
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.