Bug 176758

Summary: Apache2 mod_userdir not properly configured
Product: [openSUSE] SUSE Linux 10.1 Reporter: Stephan Heffner <heffner>
Component: NetworkAssignee: Peter Poeml <poeml>
Status: RESOLVED DUPLICATE QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None    
Version: Final   
Target Milestone: ---   
Hardware: x86-64   
OS: SuSE Linux 10.1   
Whiteboard:
Found By: Other Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Stephan Heffner 2006-05-18 11:46:53 UTC
Trying to include the mod_userdir.conf using either one of these approaches doesn't work correctly:

1. Include in /etc/apache2/httpd.conf.local (configured in YaST using APACHE_CONF_INCLUDE_FILES
2. Include in /etc/apache2/default-server.conf
3. Include in /etc/apache2/httpd.conf

Used Include directive:

Include /etc/apache2/mod_userdir.conf

Trying to access a userdir at http://localhost/~heffner doesn't work. In /var/log/apache2/error.log I can see the line:

[Thu May 18 12:39:09 2006] [error] [client 127.0.0.1] File does not exist: /srv/www/htdocs/~heffner

My /etc/apache2/mod_userdir.conf looks like:

<IfModule mod_userdir.c>
        UserDir disabled root
        <Directory /home/*/public_html>
                AllowOverride All
                Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
                <Limit GET POST OPTIONS PROPFIND>
                        Order allow,deny
                        Allow from all
                </Limit>
                <LimitExcept GET POST OPTIONS PROPFIND>
                        Order deny,allow
                        Deny from all
                </LimitExcept>
        </Directory>
</IfModule>

How can I check If mod_userdir is really loaded? It's included in the modules list and it's available on the disks.

Thanks in advance
Stephan Heffner
Comment 1 Stephan Heffner 2006-05-18 11:53:45 UTC
Just after submitting this bug, I tried to define UserDir using

        UserDir public_html

That's it, no bug. Now it works correctly.
Comment 2 Stanislav Brabec 2006-11-11 21:19:38 UTC
I guess this bug is valid.

According to comments in httpd.conf, mod_userdir.conf should be loaded from default-server.conf, if mod_userdir is loaded.

It seems not to be true and even if userdir is included in module list (and mod_userdir is loaded), apache does not serve userdir out of the box.

I have used apache2 out of the box and did not work. I had to add:

UserDir "public_html"
Include /etc/apache2/mod_userdir.conf

Looking at web discussions, it is confusing for many users.
Comment 3 Peter Poeml 2006-11-14 13:39:20 UTC
Okay. First something general:
These two lines are needed:

UserDir public_html
Include /etc/apache2/mod_userdir.conf

They *are*, in a fresh installation, present in
/etc/apache2/default-server.conf, as well as in the template files in
vhosts.d which server as starting point for new virtual hosts.

Now, to this bug.

I assume that the first line is missing in your default-server.conf.
This is (was) a bug in yast2-http-server, which removes it (the first
line, or the entire block, I can't remember). See bug 128226.

If this is a fresh 10.1 install, the bug is still there. If it is an
update, the bug may be fixed already but may have hit you in the past.
So, please let me know details. And, could you please attach
default-server.conf?
Comment 4 Peter Poeml 2007-02-13 08:30:49 UTC
No feedback so far. I'm resolving this as duplicate of bug 128226 now.


*** This bug has been marked as a duplicate of bug 128226 ***