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)

Другие вопросы по тегам