apache2: как узнать, почему я получаю ошибку 403?
Это из apache error_log:
[Пн 17 окт. 17:55:42 2011] [ошибка] [клиент 127.0.0.1] (13) Отказано в доступе: доступ к /index.html запрещен
В /etc/apache2/vhosts.d
Я создал этот файл:
<VirtualHost 127.0.0.1:3000>
DocumentRoot "/home/mm/lib/vokabeltrainer"
ServerName localhost:3000
<Directory "/home/mm/lib/vokabeltrainer">
Options FollowSymLinks ExecCGI
AddHandler cgi-script .pl
IndexIgnore *
RewriteEngine on
RewriteCond %{DOCUMENT_ROOT}/public/%{REQUEST_URI} -f
RewriteRule ^(.*) public/$1 [L]
RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_URI} !-f
RewriteRule ^(.*) vokabeltrainer.pl [L]
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
/etc/apache2/listen.conf
выглядит так:
Listen 127.0.0.1:3000
NameVirtualHost 127.0.0.1:3000
Для тестирования я изменил папку как chmod -R 0777 /home/mm/lib/vokabeltrainer
Когда я бегу vokabeltrainer.pl
(Скрипт Mojolicious::Lite) с сервером разработки morbo это работает.
У кого-нибудь есть подсказка, куда мне смотреть?
1 ответ
Как указал Икегами, моей первой проблемой было то, что я не рассматривал часть пути / home / mm / lib: у каталога lib не было достаточно прав, поэтому мне пришлось объявить необходимые права. Затем я изменил путь в форме shebang / usr / local / bin / perl на / usr / bin / perl и установил Mojolicious::Lite для /usr/bin/perl.
Последнее, что я должен был сделать, это написать URL-адрес, как это http://localhost:3000/vokabeltrainer.pl/random
вместо http://localhost:3000/random
,
(В Pretty "Web 2.0" URLs
в mojo / wiki / Apache-deploy показывается способ сохранить короткий URL)