Як зробити каталог постійно доступним для запису?


27

Я використовую стек LAMP для розробки, і у мене виникають проблеми з тим, щоб зробити / var / www постійним для запису. Я використовую цю команду:

sudo chmod -R a+rwX /var/www

Це працює, але після розміщення веб-програми та доступу до нього через браузер відображається помилка "відмовлено у дозволі". Коли це станеться, мені доведеться виконати команду ще раз.

Як я можу зробити каталог доступним для запису, постійно, не запускаючи команду знову?

Спасибі!


1
створити підпапку в /var/wwwта змінити дозвіл для цього каталогу. Це має вирішити проблему
Анам Ахмед

5
Насправді ви ніколи не повинні робити веб-корінь для запису. Див. З міркувань безпеки, чому / var / www не має chmod 777?
Горан Мішкович

ось кілька хороших коментарів вище ... зважаючи на причини безпеки, ви повинні зберегти дозвіл /var/wwwна стандартний rwxr-xr-x, і ви, ймовірно, перенесіть потрібні файли в підкаталог у /var/wwwта внесете зміни до своїх * html-файлів відповідно для змін, які ви внесли в корінь документа.
точне

Відповіді:


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, ви не повинні робити корисну папку веб-сторін для запису.
Девід

13
+ Rinzwind я використав 777 і терпляче чекаю вашого візиту.
Марсель

це працювало для мене, якщо я використовую його без sudo chmod -R 775 my_folder
косої

@Marcel тепер мертві хлопці, @ Rinzwind закінчив його
Dheeraj

2
@Marcel, як ми знаємо, що ти справжній ти, що робити, якщо @ Rinzwind зірвав обличчя Марселя і носив його.
Dheeraj
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.