Enabling Apache
I do it barely and for me it’s kinda getting a headache every time I need to do it. I never remember exactly how it needs to be done. So here there are some steps in order to get a specific user using its home dir (usually ~/public_html/) with Apache. It will surely help me in the future and maybe it might help you too. :)
Edit the /etc/httpd/conf/httpd.conf file.
Change the ‘UserDir disabled’ line to ‘UserDir enabled <username>’.
Uncomment the ‘UserDir public_html’ line.
Also uncomment the whole ‘<Directory /home/*/public_html>’ section until the ‘</Directory>’.
Apply the proper permissions:
$ chmod 711 ~<username> $ chmod 755 -R ~<username>/public_html/
Run the following commands so SELinux wouldn’t bother you:
$ setsebool -P httpd_enable_homedirs true $ sudo apachectl restart $ sudo service httpd restart
Esto es por si no funciona:
$ chcon -R -t httpd_sys_content_t ~<username>/public_html # It looks like it’s not necessary. See dgrift’s comments below.
Extra Tip: It looks like on PHP versions >= 5.3.0, to allow the short tag ‘<?’ we need to set ‘short_open_tag = On’ in the /etc/php.ini.
Restart the httpd service and after it you should be able to access http://localhost/~<username>/