mod_rewrite等で正しく動作させる方法はないでしょうか(rewriteで可能な場合条件を教えてください)
http://hogehoge.com/A/cgi-bin/mt.cgi
↓(再構築時)
http://hogehoge.com/cgi-bin/mt.cgi
RewriteRule ^/cgi-bin/(.*)$ http://hogehoge/A/cgi-bin/$1 [L]
でrewriteするとループになってしまいます
.htaccessに記述しているのでしょうか?
その.htaccessはどのディレクトリに設置していますか?
もし「cgi-bin」ディレクトリに置いているのでしたら、「A」ディレクトリに移動してみてください。
ルート(Aディレクトリ)に設置する場合の.htaccessの記述
RewriteEngine on RewriteBase / RewriteCond %{REQUEST_URI} !^/A/ #RewriteCond %{REQUEST_FILENAME} !-f #RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^/?cgi-bin/(.*)$ http://hogehoge.com/A/cgi-bin/$1 [L]
※RewriteCond行は、記述しなくても大丈夫かもしれません。
必要な場合は、%{REQUEST_URI}か%{REQUEST_FILENAME}のどちらかを記述すれば大丈夫です。
(前者はリクエストURLにAディレクトリが含まれない場合に、後者はファイルやディレクトリが実在しない場合にルールを適用させる為の条件です。)
http://webtech.akijapan.com/htaccess/rewrite.phtml
http://memorva.jp/memo/linux/mod_rewrite.php
※フォローが必要な場合は、コメント欄を開けて置いてくださった方がやり取りしやすいです。
ありがとうございます
すみません、質問の指摘が一部抜けていました
認証サーバのせいでhttp://hogehoge.com/A/は固定で触ることができません
通常/A/ディレクトリが付加されるのですが、MTのonclick=window.openで指定箇所のみ
この/A/が外れてしまいエラーとなってしまうのです
回答の内容で色々と試してみたのですが、どうも認証サーバ自体を触らないと不可能みたいですね。。