Page 1 of 2 12 LastLast
Results 1 to 10 of 19

Thread: Access Forbidden! Apache - driving me nuts...

  1. #1
    Join Date
    Jun 2008
    Location
    Dublin, Ireland
    Posts
    298

    Default Access Forbidden! Apache - driving me nuts...

    Hi,

    I have just installed apache and when I go to local host I get:

    HTML Code:
    Access forbidden!
    
    You don't have permission to access the requested directory. There is either no index document or the directory is read-protected.
    
    If you think this is a server error, please contact the webmaster.
    Error 403
    localhost
    Wed Jul 2 19:27:52 2008
    Apache/2.2.8 (Linux/SUSE)

    I get this even though I have allowed from all in the httpd.conf

    In the apache error logs I get this:

    Code:
    [Wed Jul 02 19:27:49 2008] [error] [client 127.0.0.1] Directory index forbidden by Options directive: /srv/www/htdocs/
    [Wed Jul 02 19:27:50 2008] [error] [client 127.0.0.1] Directory index forbidden by Options directive: /srv/www/htdocs/
    [Wed Jul 02 19:27:51 2008] [error] [client 127.0.0.1] Directory index forbidden by Options directive: /srv/www/htdocs/
    [Wed Jul 02 19:27:51 2008] [error] [client 127.0.0.1] Directory index forbidden by Options directive: /srv/www/htdocs/
    [Wed Jul 02 19:27:51 2008] [error] [client 127.0.0.1] Directory index forbidden by Options directive: /srv/www/htdocs/
    [Wed Jul 02 19:27:51 2008] [error] [client 127.0.0.1] Directory index forbidden by Options directive: /srv/www/htdocs/
    [Wed Jul 02 19:27:52 2008] [error] [client 127.0.0.1] Directory index forbidden by Options directive: /srv/www/htdocs/
    [Wed Jul 02 19:27:52 2008] [error] [client 127.0.0.1] Directory index forbidden by Options directive: /srv/www/htdocs/
    [Wed Jul 02 19:27:52 2008] [error] [client 127.0.0.1] Directory index forbidden by Options directive: /srv/www/htdocs/
    [Wed Jul 02 19:27:52 2008] [error] [client 127.0.0.1] Directory index forbidden by Options directive: /srv/www/htdocs/

    This is my httpd.conf:


    Code:
    #
    # /etc/apache2/httpd.conf 
    #
    # This is the main Apache server configuration file.  It contains the
    # configuration directives that give the server its instructions.
    # See <URL:http://httpd.apache.org/docs-2.2/> for detailed information about
    # the directives.
    
    # httpd.conf
    #  | 
    #  |-- uid.conf  . . . . . . . . . . . . . .  UserID/GroupID to run under
    #  |-- server-tuning.conf  . . . . . . . . .  sizing of the server (how many processes to start, ...)
    #  |-- sysconfig.d/loadmodule.conf . . . . .[*] load these modules
    #  |-- listen.conf . . . . . . . . . . . . .  IP adresses / ports to listen on
    #  |-- mod_log_config.conf . . . . . . . . .  define logging formats
    #  |-- sysconfig.d/global.conf . . . . . . .[*] server-wide general settings
    #  |-- mod_status.conf . . . . . . . . . . .  restrict access to mod_status (server monitoring)
    #  |-- mod_info.conf . . . . . . . . . . . .  restrict access to mod_info
    #  |-- mod_usertrack.conf  . . . . . . . . .  defaults for cookie-based user tracking
    #  |-- mod_autoindex-defaults.conf . . . . .  defaults for displaying of server-generated directory listings
    #  |-- mod_mime-defaults.conf  . . . . . . .  defaults for mod_mime configuration
    #  |-- errors.conf . . . . . . . . . . . . .  customize error responses
    #  |-- ssl-global.conf . . . . . . . . . . .  SSL conf that applies to default server _and all_ virtual hosts
    #  |
    #  |-- default-server.conf . . . . . . . . .  set up the default server that replies to non-virtual-host requests
    #  |    |--mod_userdir.conf  . . . . . . . .  enable UserDir (if mod_userdir is loaded)
    #  |    `--conf.d/apache2-manual?conf  . . .  add the docs ('?' = if installed)
    #  |
    #  |-- sysconfig.d/include.conf  . . . . . .[*] your include files 
    #  |                                             (for each file to be included here, put its name 
    #  |                                              into APACHE_INCLUDE_* in /etc/sysconfig/apache2)
    #  |
    #  `-- vhosts.d/ . . . . . . . . . . . . . .  for each virtual host, place one file here
    #       `-- *.conf . . . . . . . . . . . . .     (*.conf is automatically included)
    #
    #
    # Files marked[*] are created from sysconfig upon server restart: instead of
    # these files, you edit /etc/sysconfig/apache2
    
    
    
    #  Filesystem layout:
    #
    # /etc/apache2/
    #  |-- charset.conv  . . . . . . . . . . . .  for mod_auth_ldap
    #  |-- conf.d/
    #  |   |-- apache2-manual.conf . . . . . . .  conf that comes with apache2-doc
    #  |   |-- mod_php4.conf . . . . . . . . . .  (example) conf that comes with apache2-mod_php4
    #  |   `-- ... . . . . . . . . . . . . . . .  other configuration added by packages
    #  |-- default-server.conf
    #  |-- errors.conf
    #  |-- httpd.conf  . . . . . . . . . . . . .  top level configuration file
    #  |-- listen.conf
    #  |-- magic
    #  |-- mime.types -> ../mime.types
    #  |-- mod_autoindex-defaults.conf
    #  |-- mod_info.conf
    #  |-- mod_log_config.conf
    #  |-- mod_mime-defaults.conf
    #  |-- mod_perl-startup.pl
    #  |-- mod_status.conf
    #  |-- mod_userdir.conf
    #  |-- mod_usertrack.conf
    #  |-- server-tuning.conf
    #  |-- ssl-global.conf
    #  |-- ssl.crl/  . . . . . . . . . . . . . .  PEM-encoded X.509 Certificate Revocation Lists (CRL)
    #  |-- ssl.crt/  . . . . . . . . . . . . . .  PEM-encoded X.509 Certificates
    #  |-- ssl.csr/  . . . . . . . . . . . . . .  PEM-encoded X.509 Certificate Signing Requests
    #  |-- ssl.key/  . . . . . . . . . . . . . .  PEM-encoded RSA Private Keys
    #  |-- ssl.prm/  . . . . . . . . . . . . . .  public DSA Parameter Files
    #  |-- sysconfig.d/  . . . . . . . . . . . .  files that are created from /etc/sysconfig/apache2
    #  |   |-- global.conf
    #  |   |-- include.conf
    #  |   `-- loadmodule.conf
    #  |-- uid.conf
    #  `-- vhosts.d/ . . . . . . . . . . . . . .  put your virtual host configuration (*.conf) here
    #      |-- vhost-ssl.template
    #      `-- vhost.template
    
    
    
    ### Global Environment ######################################################
    #
    # The directives in this section affect the overall operation of Apache,
    # such as the number of concurrent requests.
    
    # run under this user/group id
    Include /etc/apache2/uid.conf
    
    # - how many server processes to start (server pool regulation)
    # - usage of KeepAlive
    Include /etc/apache2/server-tuning.conf
    
    # ErrorLog: The location of the error log file.
    # If you do not specify an ErrorLog directive within a <VirtualHost>
    # container, error messages relating to that virtual host will be
    # logged here.  If you *do* define an error logfile for a <VirtualHost>
    # container, that host's errors will be logged there and not here.
    ErrorLog /var/log/apache2/error_log
    
    # generated from APACHE_MODULES in /etc/sysconfig/apache2
    Include /etc/apache2/sysconfig.d/loadmodule.conf
    
    # IP addresses / ports to listen on
    Include /etc/apache2/listen.conf
    
    # predefined logging formats
    Include /etc/apache2/mod_log_config.conf
    
    # generated from global settings in /etc/sysconfig/apache2
    Include /etc/apache2/sysconfig.d/global.conf
    
    # optional mod_status, mod_info
    Include /etc/apache2/mod_status.conf
    Include /etc/apache2/mod_info.conf
    
    # optional cookie-based user tracking
    # read the documentation before using it!!
    Include /etc/apache2/mod_usertrack.conf
    
    # configuration of server-generated directory listings
    Include /etc/apache2/mod_autoindex-defaults.conf
    
    # associate MIME types with filename extensions
    TypesConfig /etc/apache2/mime.types
    DefaultType text/plain
    Include /etc/apache2/mod_mime-defaults.conf
    
    # set up (customizable) error responses
    Include /etc/apache2/errors.conf
    
    # global (server-wide) SSL configuration, that is not specific to 
    # any virtual host
    Include /etc/apache2/ssl-global.conf
    
    # forbid access to the entire filesystem by default
    <Directory />
        Options None
        AllowOverride None
        Order deny,allow
        Allow from all
    </Directory>
    
    # use .htaccess files for overriding,
    AccessFileName .htaccess
    # and never show them
    <Files ~ "^\.ht">
        Order allow,deny
        Allow from all
    </Files>
    
    # List of resources to look for when the client requests a directory
    DirectoryIndex index.html index.html.var
    
    ### 'Main' server configuration #############################################
    #
    # The directives in this section set up the values used by the 'main'
    # server, which responds to any requests that aren't handled by a
    # <VirtualHost> definition.  These values also provide defaults for
    # any <VirtualHost> containers you may define later in the file.
    #
    # All of these directives may appear inside <VirtualHost> containers,
    # in which case these default settings will be overridden for the
    # virtual host being defined.
    #
    Include /etc/apache2/default-server.conf
    
    
    # Another way to include your own files
    #
    # The file below is generated from /etc/sysconfig/apache2,
    # include arbitrary files as named in APACHE_CONF_INCLUDE_FILES and
    # APACHE_CONF_INCLUDE_DIRS
    Include /etc/apache2/sysconfig.d/include.conf
    
    
    ### Virtual server configuration ############################################
    #
    # VirtualHost: If you want to maintain multiple domains/hostnames on your
    # machine you can setup VirtualHost containers for them. Most configurations
    # use only name-based virtual hosts so the server doesn't need to worry about
    # IP addresses. This is indicated by the asterisks in the directives below.
    #
    # Please see the documentation at
    # <URL:http://httpd.apache.org/docs-2.2/vhosts/>
    # for further details before you try to setup virtual hosts.
    #
    # You may use the command line option '-S' to verify your virtual host
    # configuration.
    #
    Include /etc/apache2/vhosts.d/*.conf
    
    
    # Note: instead of adding your own configuration here, consider 
    #       adding it in your own file (/etc/apache2/httpd.conf.local)
    #       putting its name into APACHE_CONF_INCLUDE_FILES in 
    #       /etc/sysconfig/apache2 -- this will make system updates 
    #       easier :)
    This is driving me bonkers I have tried everything. See my /etc/sysconfig/apache in the next post...

    Any help greatly appreciated...
    /jlar

  2. #2
    vagskarm NNTP User

    Default Re: Access Forbidden! Apache - driving me nuts...

    Have you installed also yast module for http server settings ?

    I just did the installation and setup with yast and everything works like a charm. (on opensuse 11.0 32bit)

  3. #3
    Join Date
    Jun 2008
    Location
    Finland, European Union
    Posts
    1,879

    Default Re: Access Forbidden! Apache - driving me nuts...

    You don't have Indexes option defined for the directory - hence it won't show you the contents.

    Code:
    <Directory />
        Options Indexes
        AllowOverride None
        Order deny,allow
        Allow from all
    </Directory>
    That would enable showing directory indexes.

    Of course a better idea is to make a index.html or index.php file there.

  4. #4
    Join Date
    Jun 2008
    Location
    Dublin, Ireland
    Posts
    298

    Default Re: Access Forbidden! Apache - driving me nuts...

    Hi Everyone,

    Thanks for your replys... I finally got this sorted. The config files for apache2 are all over the place since 2.2. I preferred the single config file.

    I have the following files:
    Main Config httpd.conf /etc/apache2/
    Local Config httpd.conf.local /srv/www/php-bin/
    System apache2 /etc/apache2

    The problem was that httpd.conf was including a file default-server.conf which set the document root to /srv/www/htdocs. I had noticed that in the log files, and I did suspect that another config file was being included higher up the chain but I couldn't find it. I did a grep /srv/www/ *.conf in the /etc/apache2 folder but it didn't return anything. I was expecting to get 'Seeing this instead of the website you expected?' or something at localhost... I don't if it has changed for apache 2.2.

    Thanks again,
    jlar

  5. #5
    Join Date
    Jun 2008
    Location
    Belgi
    Posts
    174

    Default Re: Access Forbidden! Apache - driving me nuts...

    I really hate how SUSE distributes the Apache files all over the filesystem and you can fix this error by just setting your web root in the configuration file. Luckily for me this is only a local installation and is one reason not to use openSUSE as server environment in production.

  6. #6
    Join Date
    Jun 2008
    Location
    UTC+10
    Posts
    9,686
    Blog Entries
    4

    Default Re: Access Forbidden! Apache - driving me nuts...

    You don't understand the logic behind the organisation of the config files that's all. In practice only the files in vhosts.d need to be created/edited, and VirtualHosts enabled in listen.conf.

    You just have to remember a few things. Modules are enabled in /etc/sysconfig/apache2. VirtualHosts are added by putting a config file in vhosts.d. Hardly anything else needs to be touched.

    I recommend always going for VirtualHosts from the start even if you have only one site (you can make that the default site). It nicely generalises to more than one site.

    All that stuff about LoadModule isn't needed. If you install the appropriate apache module from a SUSE RPM, all you have to do is enable it in /etc/sysconfig/apache2.

  7. #7
    Join Date
    Jun 2008
    Location
    Finland, European Union
    Posts
    1,879

    Default Re: Access Forbidden! Apache - driving me nuts...

    Quote Originally Posted by EarthMind View Post
    Luckily for me this is only a local installation and is one reason not to use openSUSE as server environment in production.


    If you happen to actually be running in a REAL production environment, not your 2 site vhost configuration at your fathers basement, having a distributed seperate distinct configuration files for each site is a blessing.

    The SuSE configuration layout is a breeze - you have /etc/sysconfig/apache2 defining startup parameters, default-server for the primary server, conf.d for handler/type configs and vhost.d for virtual hosts.

  8. #8
    alangb NNTP User

    Default Re: Access Forbidden! Apache - driving me nuts...

    Hi Guys, I'm running OpenSuSe 11 64 bit, and have the same problem, but I can't solve it (Normally install out of the box, ru yast ans off we go!).

    I've followed all the advice I can find - allowing from all in the global conf etc, but I still get the same Access Forbidden message even with a chmod of 0777. Funnily enough, public_html is no problem!

    Is there an idiots guide somewhere that could help with a basic config to allow access to the default server (/srv/www/htdocs) and another directory on the root of the system (/data/)?

    I didn't have this problem with SuSE 10.3, and those config files give me exactly the same problem when put in place of the SuSE 11 apache config files.

    Many thanks for reading.

  9. #9
    Join Date
    Jan 2008
    Location
    Kenton, TN USA
    Posts
    1,023

    Default Re: Access Forbidden! Apache - driving me nuts...

    Thread moved to Network/Internet
    opensuse.org.help.network-internet
    Last edited by kastorff; 20-Jul-2008 at 09:40.
    Keith Kastorff

  10. #10
    Join Date
    Jun 2008
    Location
    Dublin, Ireland
    Posts
    298

    Default Re: Access Forbidden! Apache - driving me nuts...

    Ok, make sure you have a file called index.html in your document root. This is the file that should be served up when you got to http://localhost. For Apache 2.2 it should serve up 'It Works!' By default Apache denys access to everything in your httpd.conf. You need to allow access to particular directories using v.host/vhost.conf. Post your httpd.conf and vhost.conf

Page 1 of 2 12 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •