apacheのURLのrewrite機能を使用して想定のURLから(http://IPアドレス/hello.html)アクセスされたら
cgiを作動させる設定を記載してみたいのですが何度やっても
Forbidden
You don't have permission to access this resource.
こちらが表示されます。
設定を一部記載します。
apahe
1 2Define SRVROOT "c:/Apache24" 3ServerRoot "${SRVROOT}" 4<Directory /> 5 AllowOverride none 6 #Require all denied 7</Directory> 8 9DocumentRoot "${SRVROOT}/htdocs" 10<Directory "${SRVROOT}/htdocs"> 11 Options Indexes FollowSymLinks ExecCGI 12 Options +FollowSymLinks 13 AllowOverride None 14 Require all granted 15</Directory> 16 17<Directory "${SRVROOT}/cgi-bin"> 18 AllowOverride None 19 Options ExecCGI 20 Options None 21 Require all granted 22 Options +FollowSymLinks 23</Directory> 24 25 26 27AddHandler cgi-script .cgi .py 28 29#<IfModule mod_deflate.c> 30#AddOutputFilrerByType DEFLATE text/html 31#</IfModule> 32 33 34<IfModule mod_rewrite.c> 35RewriteEngine On 36RewriteRule ^/(hello|input|).html$ ${SRVROOT}/cgi-bin/$1.cgi 37</IfModule>
ネットで調べると
転送先のディレクトリにOptions -FollowSymLinksを追加すればいいという記載が目立ちましたが
転送先のcgiが格納されているディレクトリに
Options -FollowSymLinksを追加しても結果は変わりませんでした。
エラーログを見ると
以下のような記載がありました。
error
1[Sat Jun 19 03:11:14.983200 2021] [core:notice] [pid 16480:tid 564] AH00094: Command line: 'c:\Apache24\bin\httpd.exe -d C:/Apache24' 2[Sat Jun 19 03:11:14.983200 2021] [mpm_winnt:notice] [pid 16480:tid 564] AH00418: Parent: Created child process 3084 3[Sat Jun 19 03:11:15.888913 2021] [mpm_winnt:notice] [pid 3084:tid 476] AH00354: Child: Starting 64 worker threads. 4[Sat Jun 19 03:11:16.890977 2021] [mpm_winnt:notice] [pid 5448:tid 508] AH00364: Child: All worker threads have exited. 5[Sat Jun 19 03:11:19.894098 2021] [cgi:error] [pid 3084:tid 1052] [client IPアドレス] AH02809: Options ExecCGI is off in this directory: C:/Apache24/cgi-bin/hello.cgi
以下の記載でcgiが動作できるようになっているはずがどうしてoffになっているのでしょうか?
<Directory "${SRVROOT}/cgi-bin">
AllowOverride None
Options ExecCGI
Options None
Require all granted
Options +FollowSymLinks
</Directory>
回答1件
あなたの回答
tips
プレビュー