Shell command to set permissions for Joomla 1.5 development

The default installation of Joomla 1.5 is fully locked down to make it as secure as possible in its inital installed form.
This is great from a server security viewpoint but doesn’t make developing a new site very easy since even basic things like uploading extensions can fail due to this secure configuration.


The first thing I normally do when developing a new site using Joomla 1.5 is to set permissions open so that all critical folders can be written to. Then once the site is ready for launch I go back and lock down everything possible.
An easy way to see which folders are commonly required to be writeable is to log into the Joomla administrator and in the main menu select Help > System Info and then click the Directory Permissions tab. You will then be able to see a list of these common folders along with their current writeable status. The standard install will show all folders as ‘unwriteable’ in red font.

If you have root access to your linux server you can use the following shell command to set all of these directories to be world-writeable in one shot.

cd /path/to/web/root
chmod 777 administrator/backups/ administrator/components/ administrator/language/ \
administrator/language/en-GB/ administrator/modules/ administrator/templates/ components/ \
images/ images/banners/ images/stories/ language/ language/en-GB/ language/pdf_fonts/ \
media/ modules/ plugins/ plugins/content/ plugins/editors/ plugins/editors-xtd/ \
plugins/search/ plugins/system/ plugins/user/ plugins/xmlrpc/ templates/ \
/path/to/web/root/cache/ /path/to/web/root/administrator/cache/ /path/to/web/root/logs/ \
/path/to/web/root/tmp/

.. obviously changing ‘/path/to/web/root’ to the actual path – there of 4 of these to change.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>