2016-09-03 6 views
0

私は、以下の3つの小さな目標を達成するために基本リダイレクトの代わりにRewriteRuleを使用しようとしています。htaccessを使ってスクリプトにリダイレクトしようとしていません -

1)にwww.example.comをリダイレクト:

http://www.example.com/cgi-bin/b/c/d/myScript.pl

訪問者がexample.comに来るときに、Perlスクリプト "myScript.plは、" ページを提供しています。すべてが完全なパスで正常に動作します。 htaccessに自動的にリダイレクトする必要があります。私は現在index.htmlでリダイレクトを使用していますが、htaccessを使用することをお勧めします。

2)サブフォルダ "cgi-bin/b/c/d"を表示から削除します。

3)スクリプト

から「.plの」接尾辞を削除する私は、これらの項目を達成するためにhtaccessファイルに構文が正しいように見えることはできません。

ご了承ください。リダイレクト限り働い

答えて

1

このルールを試してみてください、

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-l 
RewriteRule ^myScript$ cgi-bin/b/c/d/myScript.pl [L] 
+0

、ありがとうございました! cgi-bin/b/c/dを隠してwww.example.com/myScript.plだけを表示する方法はありますか? – adpinc

+0

あなたは 'www.example.com/myScript'を直接使うことができます。残りのディレクトリパスは表示されません。 –

+0

申し訳ありませんが、実際には機能しませんでした。私はそれを正しくテストしたと思った。次のエラーが表示されます。禁止: このサーバーにアクセスする権限がありません。 さらに、ErrorDocumentを使用して要求を処理しようとしているときに、403 Forbiddenエラーが発生しました。 – adpinc

関連する問題