Fedora 12 + Httpd + Userdir + SElinux Works
January 30th, 2010
4 comments
Fedora 12 + Httpd + Userdir + SElinux Works
First install LAMP stack see the guide on HowtoForge
replace $USER for your username
mkdir $USER/public_html firefox http://localhost/~$USER/
If you see only Forbidden (403), don’t worry, do this:
I made a patch file (if you made custom changes on httpd.conf don’t use this file, do manual changes)
Install patch on your system and patch httpd.conf
yum install patch
my patch file:
--- httpd-patch.conf 2010-01-30 14:59:51.811850034 -0800
+++ httpd.conf 2010-01-30 14:25:04.527864263 -0800
@@ -349,14 +349,15 @@
# of a username on the system (depending on home directory
# permissions).
#
- UserDir disabled
+ #UserDir disabled
+ UserDir enabled $USER
#
# To enable requests to /~user/ to serve the user's public_html
# directory, remove the "UserDir disabled" line above, and uncomment
# the following line instead:
#
- #UserDir public_html
+ UserDir public_html
</ifModule>
@@ -364,18 +365,18 @@
# Control access to UserDir directories. The following is an example
# for a site where these directories are restricted to read-only.
#
-#<directory /home/*/public_html>
-# AllowOverride FileInfo AuthConfig Limit
-# Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
-# <limit GET POST OPTIONS>
-# Order allow,deny
-# Allow from all
-# </limit>
-# <limitExcept GET POST OPTIONS>
-# Order deny,allow
-# Deny from all
-# </limitExcept>
-#</directory>
+<directory /home/*/public_html>
+ AllowOverride FileInfo AuthConfig Limit
+ Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
+ <limit GET POST OPTIONS>
+ Order allow,deny
+ Allow from all
+ </limit>
+ <limitExcept GET POST OPTIONS>
+ Order deny,allow
+ Deny from all
+ </limitExcept>
+</directory>
#
# DirectoryIndex: sets the file that Apache will serve if a directorynext do:
patch /etc/httpd/httpd.conf < patch1.txt chmod 711 /home/$USER chmod 755 /home/$USER/public_html chcon -R -t httpd_sys_content_t /home/$USER/public_html setsebool -P httpd_enable_homedirs 1
now:
firefox http://localhost/~$USER/
Done.