那是来自apache error_log:
[Mon Oct 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
当我使用morbo开发服务器运行vokabeltrainer.pl
(Mojolicious :: Lite脚本)时,它可以工作。
有人知道我应该看看吗?
答案 0 :(得分:0)
正如Ikegami指出的那样,我的第一个问题是我没有考虑路径的/ home / mm / lib部分:lib-directory没有足够的权限所以我不得不提供所需的权利。 然后我将shebang形式的路径/ usr / local / bin / perl更改为/ usr / bin / perl,并为/ usr / bin / perl安装了Mojolicious :: Lite。
我必须做的最后一件事就是写下http://localhost:3000/vokabeltrainer.pl/random
而不是http://localhost:3000/random
的网址。
(在Pretty "Web 2.0" URLs
mojo/wiki/Apache-deployment处显示了一种保留短网址的方法