Fedora 12 + Httpd + Userdir + SElinux Works
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.



That’s very useful to me.
Thank you very much!
Very useful, it also works on fedora 13.
would you teach me to fish? how did you know that these commands were needed to make it work?
chcon -R -t httpd_sys_content_t /home/$USER/public_html
setsebool -P httpd_enable_homedirs 1
where can i read that documentation? I wanna learn to fish heh
I don’t remember maybe in http://www.howtoforge.com/ or http://fedoraproject.org/wiki/DocsProject
good tutorial…