Ubuntu / Apache2 / Запрещено / Ошибка разрешения - PullRequest
3 голосов
/ 19 декабря 2011

У меня Ubuntu 11.10 с установленной лампой

Есть некоторые файлы, к которым я не могу получить доступ из моего веб-каталога "/ var / www"

http://localhost/banner/banner.html Я получаю сообщение об ошибке:

Запрещено. У вас нет прав доступа к /banner/banner.html на этом сервере. Сервер Apache / 2.2.20 (Ubuntu) на локальном хосте Порт 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 файлы (папки, подпапки и файлы) доступными из моего браузера, как если бы я был на компьютере с Windows, используя Wamp ...

P.S .: Я буду размещать сайт на машине с Windows, я использую Ubuntu только для кодирования.

Ответы [ 3 ]

3 голосов
/ 19 декабря 2011

пользователю, работающему с Apache deamon в Ubuntu, который использует www-данные (как в большинстве систем на основе Debian), необходимы как минимум разрешения на чтение файлов. Но так как вы разместили только владелец root и группа root имеет права на чтение.

На самом деле владелец root имеет rw группу root имеет r.

Таким образом, пользователь, на самом деле работающий с веб-сервером (www-data), получает права других пользователей, у которых их нет.

Либо сделайте chmod -R o+r /var/www/banner/* или chown -R www-data /var/www/banner, чтобы исправить это.

1 голос
/ 11 сентября 2012

Я всегда забываю, что хотя подкаталогам и файлам требуется разрешение на чтение, подкаталогам также необходимо разрешение на выполнение.

chmod a+x banner

Это имеет тенденцию появляться, когда я сохраняю веб-страницув формате «веб-страница, полная» в Chrome или Firefox, а затем пытаюсь обслужить его с помощью localhost, что я часто делаю при создании макетов для клиентов.

0 голосов
/ 19 декабря 2011

Может быть, это проблема с вашими banner.html разрешениями - у пользователя apache нет прав даже на чтение.

...