Моя среда: Ubuntu 10.10 Desktop Edition
Итак, я пытаюсь получить доступ к файлу через свой локальный хост, а Apache выдает мне ошибку 403.
На /etc/apache2/apache2.conf
, Я добавил эту строку:
# wan27 hostel
Include "/home/francoisrv/Ubuntu One/hostel/apache2.conf"
Содержание /home/francoisrv/Ubuntu One/hostel/apache2.conf
:
Alias /hostel "/home/francoisrv/Ubuntu One/hostel/"
<Directory "/home/francoisrv/Ubuntu One/hostel/">
DirectoryIndex index.php
Options +FollowSymLinks
AllowOverride All
order deny,allow
deny from all
allow from 127.0.0.0/255.0.0.0 ::1/128
# allow from all
<IfModule mod_php5.c>
php_flag magic_quotes_gpc Off
php_flag track_vars On
php_value include_path .
</IfModule>
</Directory>
Затем убедитесь, что папка доступна для www-data на моем терминале:
chown -R www-data "/home/francoisrv/Ubuntu One/hostel"
Затем перезапустите Apache, Apache не жалуется на некоторую неправильную настройку
/etc/init.d/apache2 restart
* Restarting web server apache2 ... waiting [ OK ]
Затем в Chrome введите адрес http: //localhost/hostel/checkin.php, Я получил:
403
Forbidden
You don't have permission to access /hostel/checkin.php on this server.
Apache/2.2.16 (Ubuntu) Server at localhost Port 80
Содержание /home/francoisrv/Ubuntu One/hostel/checkin.php
:
hola
Что мне не хватает?
Вы проверили, что www-data может читать каждый из каталогов в пути? начните с директории верхнего уровня и двигайтесь вниз.
Попробуйте удалить завершающие косые черты в директивах Alias и Directory:
Alias /hostel "/home/francoisrv/Ubuntu One/hostel"
<Directory "/home/francoisrv/Ubuntu One/hostel">
Если он работает после перемещения папки общежития в другое место, проблема может заключаться в том, что вам нужно покинуть пространство:
<Directory "/home/francoisrv/Ubuntu\ One/hostel/">
..
</Directory>