我安装了带灯泡的Ubuntu 11.10
我无法从我的网络目录访问一些文件" / var / www"
http://localhost/banner/banner.html 我收到一个错误:
禁止您无权访问此服务器上的/banner/banner.html。 位于localhost端口80的Apache / 2.2.20(Ubuntu)服务器
我可以正常访问/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>
我的&#34; nano /etc/apache2/apache2.conf"设置为默认值...
如何从浏览器访问我的所有/ var / www文件(文件夹和子文件夹和文件),就好像我在使用Wamp的Windows机器上...
P.S:我将在Windows机器上托管该网站,我正在使用ubuntu进行编码。
答案 0 :(得分:3)
运行apache deamon的用户,在ubuntu上这是www-data(就像在大多数基于debian的系统中一样),至少需要对文件的读取权限。
但是,由于您只发布了所有者root
而群组root
具有阅读权限。
实际上,所有者root
已将rw
群组root
设为r
。
因此,实际运行网络服务器(www-data)的用户属于其他权限,但没有。
执行chmod -R o+r /var/www/banner/*
或chown -R www-data /var/www/banner
来解决此问题。
答案 1 :(得分:1)
我总是忘记,虽然子目录和文件需要读取权限,但子目录也需要执行权限。
chmod a+x banner
当我使用Chrome或Firefox以“网页,完整”格式保存网页时,这种情况往往会出现,然后尝试在localhost下提供服务,我经常在为客户构建模型时这样做。
答案 2 :(得分:0)
可能是您的banner.html
权限存在问题 - apache的用户甚至没有阅读权限。