How to make a directory permanently writable?
I am using LAMP stack for development and I have a problem with making /var/www permanently writable. I use this command:
sudo chmod -R a+rwX /var/www
This works, but after putting a web app and accessing it through a browser, it show a "permission denied" error. When that happens, I have to the execute the command again.
How can I make the directory writable, permanently, without having to run the command again?
Thanks!
Actually you should **never ever** make web root writable. See For security reasons why should /var/www not have chmod 777?
these are some good comments above... considering the security reasons, you should keep permission for `/var/www` to default rwxr-xr-x and you'd probably move the required files to a sub-directory in `/var/www` and make changes to your *html files accordingly for the changes you've made to the document root.
Numeric permissions can solve your problem.
sudo chmod 775 'your directory'
if you want to know why only 775 here's your answer
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
It will give all permission except write by anybody.
I had the same problem then
sudo chmod 777 directory
solved it.
That makes the directory writable, readable and executable by anybody. So doesn't matter what user or group owned it or used Lampp.
However, that isn't recommended if your computer is public access.
Usually the command you used should change the permissions permanently.
Try
sudo chmod -R 775 /var/www/
(which basically is the same). If that doesn't work you might need to change the owner [and maybe the group] of the directory viasudo chown <user>[:<group>] /var/www/
.Also, you might consider the 'permission denied error' could be caused by insufficient access rights in your database or elsewhere.
But as @schkovich already mentioned you should not make the web root folder writeable.
+Rinzwind I used 777 and am patiently waiting your visit.
it worked for me if i use it without slashes e.g `sudo chmod -R 775 my_folder`
@Marcel is now dead guys, @ Rinzwind ended him
@Dheeraj Then who is this...
@Marcel how do we know its the real you, what if @ Rinzwind tore marcel's face and wore it.
Thanks @Marcel! Using 777 worked for me when 775 and nothing else worked! Now my folder is finally writable! (Sorry @Rinzwind).
License under CC-BY-SA with attribution
Content dated before 6/26/2020 9:53 AM
Anam Ahmed 7 years ago
create a subfolder in `/var/www` and change permisson for that directory. That should fix the issue