首页 文章

Ubuntu / Apache2 / Forbidden / Permission错误

提问于
浏览
3

我安装了带灯泡的Ubuntu 11.10

我无法从我的网站目录“/ var / www”访问一些文件

http://localhost/banner/banner.html我收到一个错误:

禁止您无权访问此服务器上的/banner/banner.html . Apache / 2.2.20(Ubuntu)服务器位于localhost端口80

我可以正常访问/var/www/index.php,因为我也可以通过我的浏览器浏览/ var / www / banner

这是一个小小的和平:

a1a4a@A1A4a:~$ ls -l /var/www
    total 7088
    -rwxrwxrwx  1 root root     916 2011-11-25 20:49 access-controlled.php
    -rw-r--r--  1 root root   22163 2011-12-16 22:28 account_info.php
    -rw-r--r--  1 root root   22126 2011-12-16 22:27 account_info.php~
    -rw-r--r--  1 root root   16585 2011-12-16 21:32 acount_info.php
    -rw-r--r--  1 root root       0 2011-12-16 21:28 acount_info.php~
    drwxrwxrwx  5 root root    4096 2011-12-09 23:03 banner
    drwxrwxrwx  2 root root    4096 2011-12-09 23:03 css

a1a4a@A1A4a:~$ ls -l /var/www/banner
    total 20
    -rw--w---- 1 root root 2564 2011-11-25 20:51 banner.html
    drwx-w---- 4 root root 4096 2011-12-09 23:03 examples
    drwx-w---- 2 root root 4096 2011-12-09 23:03 lib
    drwx-w---- 4 root root 4096 2011-12-09 23:03 skins
    -rw--w---- 1 root root 1431 2011-11-25 20:51 style.css

这是我的配置:

<VirtualHost *:80>
ServerAdmin webmaster@localhost

DocumentRoot /var/www
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
<Directory /var/www/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
    AllowOverride None
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
    Order allow,deny
    Allow from all
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog ${APACHE_LOG_DIR}/access.log combined

Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
    Options Indexes MultiViews FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
    Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>

 </VirtualHost>

我的“nano /etc/apache2/apache2.conf”设置为默认值...

如何从浏览器访问我的所有/ var / www文件(文件夹和子文件夹和文件),就像我在使用Wamp的Windows机器上一样...

P.S:我将在Windows机器上托管该网站,我正在使用ubuntu进行编码 .

3 回答

  • 1

    运行apache deamon的用户,在ubuntu这个www-data(就像在大多数基于debian的系统中一样),至少需要对文件的读取权限 . 但是,由于您只发布了所有者 root 并且组 root 具有读取权限 .

    实际上所有者 rootrw group rootr .

    因此,实际运行Web服务器(www-data)的用户属于其他没有权限的用户权限 .

    要么 chmod -R o+r /var/www/banner/*chown -R www-data /var/www/banner 来解决这个问题 .

  • 3

    我总是忘记,虽然子目录和文件需要读权限,但子目录也需要执行权限 .

    chmod a+x banner
    

    当我使用Chrome或Firefox以“网页,完整”格式保存网页然后尝试在localhost下提供服务时,这往往会出现,我经常在为客户构建模型时这样做 .

  • 0

    可能是您的 banner.html 权限存在问题 - apache的用户甚至无权读取它 .

相关问题