10秒目をつむったら…

perlで書いたCGIファイルがあるのですが、スマホ用のリダイレクトhtaccessファイルをトップディレクトリに置いた所、CGIのページが403エラーになってしまいました。
.htaccessファイルを外すと正常に表示するので、原因は.htaccessなのですが、理由が思い当たりません。
CGIのソースは出せないですが、お問い合せフォーム用のCGIです。
何かお気づきの点がありましたら助言お願い致します。

● .htaccess(トップディレクトリに設置)

<IfModule mod_rewrite.c>
RewriteEngine on

RewriteCond %{REQUEST_URI} !/sp/
RewriteCond %{HTTP_USER_AGENT} (iPhone|Android.*Mobile|Windows.*Phone)
RewriteRule ^(.*)$ sp/$1 [R]
RewriteBase /

RewriteCond %{REQUEST_URI} /sp/
RewriteCond %{HTTP_USER_AGENT} !(iPhone|Android.*Mobile|Windows.*Phone)
RewriteRule ^sp/(.*)$ $1 [R]
RewriteBase /
</IfModule>

● ディレクトリ構造
/index.html・・・トップページ
/.htaccess・・・上記内容
/contact/all/index.cgi・・・403エラーになるCGI
/contact/all/.htaccess・・・「Options ExecCGI」のみ記述
/sp/・・・スマホ用のリダイレクト先ディレクトリ(以下略)

A 回答 (1件)

エラーログには何と出ていますか?

    • good
    • 0
この回答へのお礼

すいません。自己解決しました。

403が出るディレクトリの.htaccessを

Satisfy any
order allow,deny
allow from all

Options +ExecCGI
AddHandler cgi-script .pl .cgi

としたところ、正常表示できました。

次回、同じようなことがありましたら今度はエラーログを参照したいと思います。
ありがとうございました。

お礼日時:2013/07/29 09:54

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!