- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:htaccessの上書き方法について)
htaccessの上書き方法について
このQ&Aのポイント
- htaccessでindex.htmlなしに設定し、CGIがエラーを返すことがあったため、特定のディレクトリに別のhtaccessを使ってトップディレクトリのhtaccessの設定を上書きする方法について質問します。
- 失敗した結果は、URLの正規化(index.html無し)の設定が成功したが、CGIページでエラーが出たということです。
- 下層ページで上書きできなかったため、新たにhtaccessでindex.htmlありに、上書きできないかと考えましたが、結果はエラーでした。特定のディレクトリに別のhtaccessを使ってトップディレクトリに設置したhtaccessの設定を上書きする方法があるかどうか質問します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
CGIが入っているディレクトリを hoge と名づけた場合、以下のような設定をトップディレクトリの.htaccessに書けばいいと思います。 RewriteEngine on RewriteCond %{REQUEST_URI} ^.*/index.html RewriteCond %{REQUEST_URI} !^/hoge/.* RewriteRule ^(.*)index.html$ http://scinex-fw.co.jp/$1 [R=301,L]
その他の回答 (1)
- t_ohta
- ベストアンサー率38% (5238/13705)
回答No.2
> これは何が原因なんでしょうか? 同じCGIが手元にある訳では無いので、何とも答えようがありません。 同じCGIを動かしてエラーログなどを調べれば分かるかもしれませんが... > 以前の.htaccessでは「Options FollowSymLinks」を最初に記述していましたが、そちらが何か関係してるのでしょうか? このオプションは、ドキュメントルート内のシンボリックリンクを辿って表示を行うかどうかというモノですので関係無いと思いますが、これもCGIの中身を見てみないと何とも言えませんね。
質問者
お礼
t_ohtaさん。 返答が遅れてしましい、申し訳ございません。 アドバイスありがとうございます。 結果的に問題なく動いていますので、万々歳です! 本当にありがとうございました!
お礼
t_ohtaさん。 いろいろとアドバイスをいただきありがとうございました。本当に助かりました(^^)
補足
t_ohtaさん! 毎度ありがとうございます! t_ohtaさんの方法で解決いたしました! 長い時間かけて調べていましたので、 無事解決できてよかったです( ;∀;) 一点だけお聞きしたいのですが、 テスト中に上記の hoge の行を外してアップしたのですが、そちらでもなぜかうまくCGIが動きました。 もちろんindex.htmlも無しになりました。 これは何が原因なんでしょうか? 以前の.htaccessでは「Options FollowSymLinks」を最初に記述していましたが、そちらが何か関係してるのでしょうか? ▼こちらでCGIが動きました。 RewriteEngine on RewriteCond %{REQUEST_URI} ^.*/index.html RewriteRule ^(.*)index.html$ http://scinex-fw.co.jp/$1 [R=301,L]