View previous topic :: View next topic |
Author |
Message |
eekrazyk n00b

Joined: 26 Feb 2005 Posts: 36
|
Posted: Wed Nov 23, 2005 8:34 pm Post subject: Apache2 configuration problem after upgrade |
|
|
Okay, so I'm running Apache2 on my linux box at work and have had it running for some time now. I updated apache last July and with that update, they had changed the configuration files from /etc/apache2/httpd.conf to /etc/apache2/conf/apache2.conf and /etc/apache2/conf/commonapache2.conf
Now I recently updated again and they have switched back to /etc/apache2/httpd.conf
I'm having trouble getting it to work properly now. I want it set up so it provides a directory listing and follows sym links. Here is what I have in my /etc/apache2/conf/commonapache2.conf:
Code: |
<Directory /home/*/public_html>
AllowOverride All
# Options MultiViews -Indexes Includes FollowSymLinks
Options MultiViews Indexes IncludesNoExec FollowSymLinks
<IfModule mod_access.c>
Order allow,deny
Allow from all
</IfModule>
</Directory>
|
I tried changing the options for that one line in my new httpd.conf file, but it isnt working! I keep getting 404 errors.
Here is my complete httpd.conf (minus all the additional comments):
Code: |
ServerRoot "/usr/lib/apache2"
<IfModule !perchild.c>
#ScoreBoardFile /var/run/apache2_runtime_status
</IfModule>
PidFile "/var/run/apache2.pid"
Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15
<IfModule prefork.c>
StartServers 5
MinSpareServers 5
MaxSpareServers 10
MaxClients 150
MaxRequestsPerChild 0
</IfModule>
<IfModule worker.c>
StartServers 2
MaxClients 150
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxRequestsPerChild 0
</IfModule>
<IfModule perchild.c>
NumServers 5
StartThreads 5
MinSpareThreads 5
MaxSpareThreads 10
MaxThreadsPerChild 20
MaxRequestsPerChild 0
</IfModule>
<IfModule peruser.c>
ServerLimit 256
MaxClients 256
MinSpareProcessors 2
MaxProcessors 10
MaxRequestsPerChild 1000
# kill off idle processors after this many seconds
# set to 0 to disable
ExpireTimeout 1800
Multiplexer nobody nobody
Processor apache apache
# chroot dir is optional:
# Processor user group /path/to/chroot
</IfModule>
Listen 80
LoadModule access_module modules/mod_access.so
LoadModule auth_module modules/mod_auth.so
LoadModule auth_anon_module modules/mod_auth_anon.so
LoadModule auth_dbm_module modules/mod_auth_dbm.so
LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule charset_lite_module modules/mod_charset_lite.so
LoadModule env_module modules/mod_env.so
LoadModule expires_module modules/mod_expires.so
LoadModule headers_module modules/mod_headers.so
LoadModule mime_module modules/mod_mime.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule logio_module modules/mod_logio.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule cgid_module modules/mod_cgid.so
LoadModule suexec_module modules/mod_suexec.so
LoadModule alias_module modules/mod_alias.so
LoadModule rewrite_module modules/mod_rewrite.so
<IfDefine USERDIR>
LoadModule userdir_module modules/mod_userdir.so
</IfDefine>
<IfDefine INFO>
LoadModule info_module modules/mod_info.so
LoadModule status_module modules/mod_status.so
</IfDefine>
LoadModule actions_module modules/mod_actions.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule dir_module modules/mod_dir.so
LoadModule ext_filter_module modules/mod_ext_filter.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule include_module modules/mod_include.so
<IfDefine PROXY>
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
</IfDefine>
Include /etc/apache2/modules.d/*.conf
User apache
Group apache
ServerAdmin root@localhost
UseCanonicalName Off
<Directory />
Options -All -Multiviews
AllowOverride None
<IfModule mod_access.c>
Order deny,allow
Deny from all
</IfModule>
</Directory>
<IfModule mod_userdir.c>
UserDir public_html
</IfModule>
<Directory /home/*/public_html>
AllowOverride All
# Options MultiViews -Indexes Includes FollowSymLinks
Options MultiViews Indexes IncludesNoExec FollowSymLinks
<IfModule mod_access.c>
Order allow,deny
Allow from all
</IfModule>
</Directory>
<Directory /home/*/public_html/cgi-bin>
Options +ExecCGI -Includes -Indexes
SetHandler cgi-script
</Directory>
<IfModule mod_perl.c>
<Directory /home/*/public_html/perl>
SetHandler perl-script
PerlResponseHandler ModPerl::PerlRun
Options -Indexes ExecCGI
<IfDefine MODPERL2>
PerlOptions +ParseHeaders
</IfDefine>
<IfDefine !MODPERL2>
PerlSendHeader On
</IfDefine>
</Directory>
</IfModule>
DirectoryIndex index.html index.html.var
AccessFileName .htaccess
<Files ~ "^\.ht">
Order allow,deny
Deny from all
</Files>
TypesConfig /etc/mime.types
DefaultType text/plain
<IfModule mod_mime_magic.c>
MIMEMagicFile /etc/apache2/magic
</IfModule>
HostnameLookups Off
ErrorLog logs/error_log
LogLevel warn
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
LogFormat "%v %h %l %u %t \"%r\" %>s %b %T" script
LogFormat "%v %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" VLOG=%{VLOG}e" vhost
CustomLog logs/access_log common
ServerSignature On
Alias /icons/ "/var/www/localhost/icons/"
<Directory "/var/www/localhost/icons/">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
ScriptAlias /cgi-bin/ /var/www/localhost/cgi-bin/
<IfModule mod_cgid.c>
#
# Additional to mod_cgid.c settings, mod_cgid has Scriptsock <path>
# for setting UNIX socket for communicating with cgid.
#
#Scriptsock /var/run/cgisock
</IfModule>
<Directory "/var/www/localhost/cgi-bin/">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
<IfModule mod_autoindex.c>
#
# IndexOptions: Controls the appearance of server-generated directory
# listings.
#
IndexOptions FancyIndexing VersionSort
#
# AddIcon* directives tell the server which icon to show for different
# files or filename extensions. These are only displayed for
# FancyIndexed directories.
#
AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
AddIconByType (TXT,/icons/text.gif) text/*
AddIconByType (IMG,/icons/image2.gif) image/*
AddIconByType (SND,/icons/sound2.gif) audio/*
AddIconByType (VID,/icons/movie.gif) video/*
AddIcon /icons/binary.gif .bin .exe
AddIcon /icons/binhex.gif .hqx
AddIcon /icons/tar.gif .tar
AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
AddIcon /icons/a.gif .ps .ai .eps
AddIcon /icons/layout.gif .html .shtml .htm .pdf
AddIcon /icons/text.gif .txt
AddIcon /icons/c.gif .c
AddIcon /icons/p.gif .pl .py
AddIcon /icons/f.gif .for
AddIcon /icons/dvi.gif .dvi
AddIcon /icons/uuencoded.gif .uu
AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
AddIcon /icons/tex.gif .tex
AddIcon /icons/bomb.gif core
AddIcon /icons/back.gif ..
AddIcon /icons/hand.right.gif README
AddIcon /icons/folder.gif ^^DIRECTORY^^
AddIcon /icons/blank.gif ^^BLANKICON^^
#
# DefaultIcon is which icon to show for files which do not have an icon
# explicitly set.
#
DefaultIcon /icons/unknown.gif
#
# AddDescription allows you to place a short description after a file in
# server-generated indexes. These are only displayed for FancyIndexed
# directories.
# Format: AddDescription "description" filename
#
#AddDescription "GZIP compressed document" .gz
#AddDescription "tar archive" .tar
#AddDescription "GZIP compressed tar archive" .tgz
#
# ReadmeName is the name of the README file the server will look for by
# default, and append to directory listings.
#
# HeaderName is the name of a file which should be prepended to
# directory indexes.
ReadmeName README.html
HeaderName HEADER.html
#
# IndexIgnore is a set of filenames which directory indexing should ignore
# and not include in the listing. Shell-style wildcarding is permitted.
#
IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t .svn
</IfModule>
AddLanguage ca .ca
AddLanguage cs .cz .cs
AddLanguage da .dk
AddLanguage de .de
AddLanguage el .el
AddLanguage en .en
AddLanguage eo .eo
AddLanguage es .es
AddLanguage et .et
AddLanguage fr .fr
AddLanguage he .he
AddLanguage hr .hr
AddLanguage it .it
AddLanguage ja .ja
AddLanguage ko .ko
AddLanguage ltz .ltz
AddLanguage nl .nl
AddLanguage nn .nn
AddLanguage no .no
AddLanguage pl .po
AddLanguage pt .pt
AddLanguage pt-BR .pt-br
AddLanguage ru .ru
AddLanguage sv .sv
AddLanguage zh-CN .zh-cn
AddLanguage zh-TW .zh-tw
LanguagePriority en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR ru sv zh-CN zh-TW
ForceLanguagePriority Prefer Fallback
AddDefaultCharset ISO-8859-1
AddCharset ISO-8859-1 .iso8859-1 .latin1
AddCharset ISO-8859-2 .iso8859-2 .latin2 .cen
AddCharset ISO-8859-3 .iso8859-3 .latin3
AddCharset ISO-8859-4 .iso8859-4 .latin4
AddCharset ISO-8859-5 .iso8859-5 .latin5 .cyr .iso-ru
AddCharset ISO-8859-6 .iso8859-6 .latin6 .arb
AddCharset ISO-8859-7 .iso8859-7 .latin7 .grk
AddCharset ISO-8859-8 .iso8859-8 .latin8 .heb
AddCharset ISO-8859-9 .iso8859-9 .latin9 .trk
AddCharset ISO-2022-JP .iso2022-jp .jis
AddCharset ISO-2022-KR .iso2022-kr .kis
AddCharset ISO-2022-CN .iso2022-cn .cis
AddCharset Big5 .Big5 .big5
# For russian, more than one charset is used (depends on client, mostly):
AddCharset WINDOWS-1251 .cp-1251 .win-1251
AddCharset CP866 .cp866
AddCharset KOI8-r .koi8-r .koi8-ru
AddCharset KOI8-ru .koi8-uk .ua
AddCharset ISO-10646-UCS-2 .ucs2
AddCharset ISO-10646-UCS-4 .ucs4
AddCharset UTF-8 .utf8
AddCharset GB2312 .gb2312 .gb
AddCharset utf-7 .utf7
AddCharset utf-8 .utf8
AddCharset big5 .big5 .b5
AddCharset EUC-TW .euc-tw
AddCharset EUC-JP .euc-jp
AddCharset EUC-KR .euc-kr
AddCharset shift_jis .sjis
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddHandler type-map var
BrowserMatch "Mozilla/2" nokeepalive
BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
BrowserMatch "RealPlayer 4\.0" force-response-1.0
BrowserMatch "Java/1\.0" force-response-1.0
BrowserMatch "JDK/1\.0" force-response-1.0
BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
BrowserMatch "^WebDrive" redirect-carefully
BrowserMatch "^WebDAVFS/1.[012]" redirect-carefully
BrowserMatch "^gnome-vfs" redirect-carefully
<IfDefine INFO>
ExtendedStatus On
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from localhost
</Location>
</IfDefine>
<IfDefine INFO>
<Location /server-info>
SetHandler server-info
Order deny,allow
Deny from all
Allow from localhost
</Location>
</IfDefine>
Include /etc/apache2/vhosts.d/*.conf
|
|
|
Back to top |
|
 |
badchien Guru


Joined: 16 Feb 2004 Posts: 415 Location: doghouse
|
Posted: Wed Nov 23, 2005 8:48 pm Post subject: |
|
|
If Indexes are disabled you should be getting 403 Forbidden not 404's.
What is it that isn't working-- directory indexes, symlinks or both?
What does your error_log say when you try to do whatever it is you're trying that gives you the 404? |
|
Back to top |
|
 |
eekrazyk n00b

Joined: 26 Feb 2005 Posts: 36
|
Posted: Wed Nov 23, 2005 10:57 pm Post subject: |
|
|
If I restart the service and cat the error log file:
Code: |
[Wed Nov 23 17:54:26 2005] [notice] caught SIGTERM, shutting down
[Wed Nov 23 17:54:27 2005] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec2)
[Wed Nov 23 17:54:27 2005] [notice] Digest: generating secret for digest authentication ...
[Wed Nov 23 17:54:27 2005] [notice] Digest: done
[Wed Nov 23 17:54:27 2005] [notice] Apache configured -- resuming normal operations
|
I had it set up so that when someone navigates to my username
Code: |
http://apacheservername/~username/
|
it displays a directory listing. I put sym links in my public_html folder so I can share files over our LAN that way.
I'm not sure what's wrong with my configuration now. Thanks for your help. |
|
Back to top |
|
 |
badchien Guru


Joined: 16 Feb 2004 Posts: 415 Location: doghouse
|
Posted: Thu Nov 24, 2005 4:38 am Post subject: |
|
|
I still need these questions answered:
What exactly happens when you try to browse a directory at http://apacheservername/~username/ with your browser? 404 error? 403 error? something else, or what?
What exactly happens when you try to navigate to a symlinked directory at http://apacheservername/~username/somesymlinkeddirectory/ with your browser ? 404 error? 403 error? something else, or what?
Finally, what are the contents of error_log AFTER you do the above two things? |
|
Back to top |
|
 |
eekrazyk n00b

Joined: 26 Feb 2005 Posts: 36
|
|
Back to top |
|
 |
bjacobt n00b

Joined: 10 Oct 2004 Posts: 35 Location: Dallas, TX
|
Posted: Mon Nov 28, 2005 4:08 pm Post subject: |
|
|
i think you have to enable userdir in /etc/conf/apache2.conf |
|
Back to top |
|
 |
eekrazyk n00b

Joined: 26 Feb 2005 Posts: 36
|
Posted: Mon Nov 28, 2005 4:19 pm Post subject: Solved |
|
|
That was it!
/etc/apache2/httpd.conf had the following line in it
Code: |
<IfDefine USERDIR>
LoadModule userdir_module modules/mod_userdir.so
</IfDefine>
|
I didn't have USERDIR defined, so I just removed the <IfDefine> parts so the module is always loaded. Now it works again.
Thanks for your help! |
|
Back to top |
|
 |
bjacobt n00b

Joined: 10 Oct 2004 Posts: 35 Location: Dallas, TX
|
Posted: Mon Nov 28, 2005 6:46 pm Post subject: |
|
|
glad I could help  |
|
Back to top |
|
 |
|