尝试通过浏览器访问本地主机时出现此错误。

403 Forbidden

我使用的是 Ubuntu 14.04 LTS

这是我的配置文件:

etc/apache2.conf

 
 
    # This is the main Apache server configuration file.  It contains the 
    # configuration directives that give the server its instructions. 
    # See http://httpd.apache.org/docs/2.4/ for detailed information about 
    # the directives and /usr/share/doc/apache2/README.Debian about Debian specific 
    # hints. 
    # 
    # 
    # Summary of how the Apache 2 configuration works in Debian: 
    # The Apache 2 web server configuration in Debian is quite different to 
    # upstream's suggested way to configure the web server. This is because Debian'sA 
    # default Apache2 installation attempts to make adding and removing modules, 
    # virtual hosts, and extra configuration directives as flexible as possible, in 
    # order to make automating the changes and administering the server as easy as 
    # possible. 
 
    # It is split into several files forming the configuration hierarchy outlined 
    # below, all located in the /etc/apache2/ directory: 
    # 
    #   /etc/apache2/ 
    #   |-- apache2.conf 
    #   |   `--  ports.conf 
    #   |-- mods-enabled 
    #   |   |-- *.load 
    #   |   `-- *.conf 
    #   |-- conf-enabled 
    #   |   `-- *.conf 
    #   `-- sites-enabled 
    #       `-- *.conf 
    # 
    # 
    # * apache2.conf is the main configuration file (this file). It puts the pieces 
    #   together by including all remaining configuration files when starting up the 
    #   web server. 
    # 
    # * ports.conf is always included from the main configuration file. It is 
    #   supposed to determine listening ports for incoming connections which can be 
    #   customized anytime. 
    # 
    # * Configuration files in the mods-enabled/, conf-enabled/ and sites-enabled/ 
    #   directories contain particular configuration snippets which manage modules, 
    #   global configuration fragments, or virtual host configurations, 
    #   respectively. 
    # 
    #   They are activated by symlinking available configuration files from their 
    #   respective *-available/ counterparts. These should be managed by using our 
    #   helpers a2enmod/a2dismod, a2ensite/a2dissite and a2enconf/a2disconf. See 
    #   their respective man pages for detailed information. 
    # 
    # * The binary is called apache2. Due to the use of environment variables, in 
    #   the default configuration, apache2 needs to be started/stopped with 
    #   /etc/init.d/apache2 or apache2ctl. Calling /usr/bin/apache2 directly will not 
    #   work with the default configuration. 
 
 
    # Global configuration 
    # 
 
    # 
    # ServerRoot: The top of the directory tree under which the server's 
    # configuration, error, and log files are kept. 
    # 
    # NOTE!  If you intend to place this on an NFS (or otherwise network) 
    # mounted filesystem then please read the Mutex documentation (available 
    # at ); 
    # you will save yourself a lot of trouble. 
    # 
    # Do NOT add a slash at the end of the directory path. 
    # 
    #ServerRoot "/etc/apache2" 
 
    # 
    # The accept serialization lock file MUST BE STORED ON A LOCAL DISK. 
    # 
    Mutex file:${APACHE_LOCK_DIR} default 
 
    # 
    # PidFile: The file in which the server should record its process 
    # identification number when it starts. 
    # This needs to be set in /etc/apache2/envvars 
    # 
    PidFile ${APACHE_PID_FILE} 
 
    # 
    # Timeout: The number of seconds before receives and sends time out. 
    # 
    Timeout 300 
 
    # 
    # KeepAlive: Whether or not to allow persistent connections (more than 
    # one request per connection). Set to "Off" to deactivate. 
    # 
    KeepAlive On 
 
    # 
    # MaxKeepAliveRequests: The maximum number of requests to allow 
    # during a persistent connection. Set to 0 to allow an unlimited amount. 
    # We recommend you leave this number high, for maximum performance. 
    # 
    MaxKeepAliveRequests 100 
 
    # 
    # KeepAliveTimeout: Number of seconds to wait for the next request from the 
    # same client on the same connection. 
    # 
    KeepAliveTimeout 5 
 
 
    # These need to be set in /etc/apache2/envvars 
    User ${APACHE_RUN_USER} 
    Group ${APACHE_RUN_GROUP} 
 
    # 
    # HostnameLookups: Log the names of clients or just their IP addresses 
    # e.g., www.apache.org (on) or 204.62.129.132 (off). 
    # The default is off because it'd be overall better for the net if people 
    # had to knowingly turn this feature on, since enabling it means that 
    # each client request will result in AT LEAST one lookup request to the 
    # nameserver. 
    # 
    HostnameLookups Off 
 
    # ErrorLog: The location of the error log file. 
    # If you do not specify an ErrorLog directive within a  
    # container, error messages relating to that virtual host will be 
    # logged here.  If you *do* define an error logfile for a  
    # container, that host's errors will be logged there and not here. 
    # 
    ErrorLog ${APACHE_LOG_DIR}/error.log 
 
    # 
    # LogLevel: Control the severity of messages logged to the error_log. 
    # Available values: trace8, ..., trace1, debug, info, notice, warn, 
    # error, crit, alert, emerg. 
    # It is also possible to configure the log level for particular modules, e.g. 
    # "LogLevel info ssl:warn" 
    # 
    LogLevel warn 
 
    # Include module configuration: 
    IncludeOptional mods-enabled/*.load 
    IncludeOptional mods-enabled/*.conf 
 
    # Include list of ports to listen on 
    Include ports.conf 
 
 
    # Sets the default security model of the Apache2 HTTPD server. It does 
    # not allow access to the root filesystem outside of /usr/share and /var/www. 
    # The former is used by web applications packaged in Debian, 
    # the latter may be used for local directories served by the web server. If 
    # your system is serving content from a sub-directory in /srv you must allow 
    # access here, or in any related virtual host. 
     
            Options Indexes FollowSymLinks 
            AllowOverride None 
            Require all granted 
     
 
     
        AllowOverride None 
        Require all granted 
     
 
     
        Options Indexes FollowSymLinks 
        AllowOverride None 
        Require all granted 
     
 
    # 
    #   Options Indexes FollowSymLinks 
    #   AllowOverride None 
    #   Require all granted 
    # 
 
 
 
 
    # AccessFileName: The name of the file to look for in each directory 
    # for additional configuration directives.  See also the AllowOverride 
    # directive. 
    # 
    AccessFileName .htaccess 
 
    # 
    # The following lines prevent .htaccess and .htpasswd files from being 
    # viewed by Web clients. 
    # 
     
        Require all granted 
     
 
 
    # 
    # The following directives define some format nicknames for use with 
    # a CustomLog directive. 
    # 
    # These deviate from the Common Log Format definitions in that they use %O 
    # (the actual bytes sent including headers) instead of %b (the size of the 
    # requested file), because the latter makes it impossible to detect partial 
    # requests. 
    # 
    # Note that the use of %{X-Forwarded-For}i instead of %h is not recommended. 
    # Use mod_remoteip instead. 
    # 
    LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined 
    LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined 
    LogFormat "%h %l %u %t \"%r\" %>s %O" common 
    LogFormat "%{Referer}i -> %U" referer 
    LogFormat "%{User-agent}i" agent 
 
    # Include of directories ignores editors' and dpkg's backup files, 
    # see README.Debian for details. 
 
    # Include generic snippets of statements 
    IncludeOptional conf-enabled/*.conf 
 
    # Include the virtual host configurations: 
    IncludeOptional sites-enabled/*.conf 
 
    # vim: syntax=apache ts=4 sw=4 sts=4 sr noet 
 

apache 日志

>[Wed Jun 17 18:18:38.560856 2015] [authz_core:error] [pid 8872] [client 192.168.1.XX:XXXXX] AH01630: client denied by server configuration: /var/www/html/prestashop 

我在论坛上的配置出错了

etc/apache2/sites-enabled/prestashop.conf

 
 
     
        # The ServerName directive sets the request scheme, hostname and port that 
        # the server uses to identify itself. This is used when creating 
        # redirection URLs. In the context of virtual hosts, the ServerName 
        # specifies what hostname must appear in the request's Host: header to 
        # match this virtual host. For the default virtual host (this file) this 
        # value is not decisive as it is used as a last resort host regardless. 
        # However, you must set it for any further virtual host explicitly. 
        #ServerName www.example.com 
 
        ServerAdmin webmaster@localhost 
        DocumentRoot /var/www/html/prestashop 
 
        # Available loglevels: trace8, ..., trace1, debug, info, notice, warn, 
        # error, crit, alert, emerg. 
        # It is also possible to configure the loglevel for particular 
        # modules, e.g. 
        #LogLevel info ssl:warn 
 
        ErrorLog ${APACHE_LOG_DIR}/error.log 
        CustomLog ${APACHE_LOG_DIR}/access.log combined 
 
     
    Options All 
    AllowOverride All 
    Require all granted 
     
 
 
        # For most configuration files from conf-available/, which are 
        # enabled or disabled at a global level, it is possible to 
        # include a line for only one particular virtual host. For example the 
        # following line enables the CGI configuration for this host only 
        # after it has been globally disabled with "a2disconf". 
        #Include conf-available/serve-cgi-bin.conf 
     
 
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet 

我已经添加到 apache 并更新了服务,但总是出现同样的错误我想知道为什么它不起作用也许我想 chmod 这个网站可以在任何媒体类型上本地访问晚上好

请您参考如下方法:

我在查看配置时看到了一些东西。

您的虚拟主机配置名为

etc/apache2/sites-enabled/prestashop.config 

但这不是包含在 apache.conf 文件中的文件类型。

# Include the virtual host configurations: 
IncludeOptional sites-enabled/*.conf 

您的 apache 安装程序寻找 .conf 文件而不是 .config 所以它很可能甚至没有读取您的 vhost 文件。

此外,我会将虚拟主机设置为如下所示,并包含 Directory 指令。

    <VirtualHost *:80> 
 
      ServerName localhost 
      ServerAdmin webmaster@localhost 
      DocumentRoot /var/www/html/prestashop 
 
      <Directory /var/www/html/prestashop> 
        DirectoryIndex index.php index.html 
        Options All 
        AllowOverride All 
        Require all granted 
      </Directory> 
 
      # Available loglevels: trace8, ..., trace1, debug, info, notice, warn, 
      # error, crit, alert, emerg. 
      # It is also possible to configure the loglevel for particular 
      # modules, e.g. 
      #LogLevel info ssl:warn 
 
      ErrorLog ${APACHE_LOG_DIR}/error.log 
      CustomLog ${APACHE_LOG_DIR}/access.log combined 
 
    </VirtualHost> 

并在完成所有更改后重新启动 apache。


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!