【问题标题】:apache2: how to find out why I get a 403 error?apache2:如何找出我收到 403 错误的原因?
【发布时间】:2011-10-17 16:31:32
【问题描述】:

那是来自apache error_log:

[Mon Oct 17 17:55:42 2011] [error] [client 127.0.0.1] (13)Permission denied: access to /index.html denied

/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 脚本)时,它可以工作。

有人知道我应该去哪里看吗?

【问题讨论】:

  • 您在浏览器中输入的网址是什么?是http://localhost:3000/...吗?
  • 你检查/home/mm/lib/home/mm/home了吗?
  • 这似乎过于复杂了。你试过mojolicio.us/perldoc/Mojolicious/Guides/Cookbook#Apache2FCGI 吗?
  • @Jim Garrison:是的,我试过这种方式或http://127.0.0.1:3000/...
  • @tempire:我在https://github.com/kraih/mojo/wiki/Apache-deployment 上找到了这个。但也许我会试试你的建议。

标签: perl apache mojolicious


【解决方案1】:

正如 Ikegami 所指出的,我的第一个问题是我没有考虑路径的 /home/mm/lib 部分:lib 目录没有足够的权限,所以我必须添加所需的权限。 然后我将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" URLsmojo/wiki/Apache-deployment 中显示了一种保留短网址的方法)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-10-06
    • 1970-01-01
    • 1970-01-01
    • 2019-07-29
    • 1970-01-01
    • 2015-05-28
    • 2019-03-20
    • 1970-01-01
    相关资源
    最近更新 更多