• 締切済み

上層の.htaccessの影響回避

よろしくお願いいたします。 さくらのサーバー(スタンダードプラン)を使っていて、 .phpを.htmlで動作させるために、いろいろ調べたところ、 さくらの環境下では以下のように.htaccessを設定するのがベストだと判明しました。 [ .htaccess の内容 ] DirectoryIndex index.html index.php Action myphp-script /php.cgi AddHandler myphp-script .html .php [ 前提条件 ] cp /usr/local/php/最新のバージョン番号/bin/php-cgi /home/USERNAME/www/php.cgi のコマンドを処理しておく。 この設定で、htmlの拡張子でも、phpが正しく動作してくれるようになったのですが、 その下層にあるディレクトリで上記の.htaccessの影響を避けたい(キャンセルしたい)とき 下層に設置する.htaccessにどのような記述を行えばよいでしょうか、、 ちなみに、「none」とだけ記入した場合もNGでした。 ※質問カテゴリがふさわしくなければ申し訳ございません。 サーバーの運用(Apacheの設定)などに関する質問です。 ■以下はより詳しい質問理由です。 そもそも影響を回避したい理由は トップが http://google.com/ の場合、 http://google.com/hoge/が下層にあるとします。 さらに、http://hoge.google.com/を開いたとき http://google.com/hoge/に対してリダイレクトするように設定しています。 .htaccessになんの記述もない時は、 http://hoge.google.com/でもhttp://google.com/hoge/でも 同じページが開かれます。 (SEO等の観点からも2つURLを持つのは好ましくないのは承知ですが;) ところが.htaccessに先ほどの設定を行うと 「The requested URL /php.cgi/index.html was not found on this server.」 というエラーメッセージが出てしまいます。 php.cgiを求めているのかと思い、http://google.com/hoge/直下に コピーしたphp.cgiも置いてみましたが、今度は真っ白なページが表示されるのみです。 .htaccessに何の設定もない時にうまくいっていたので、 http://google.com/hoge/ではhttp://google.com/直下の .htaccessに影響をうけないようにしてあげたいのです。 何卒よろしくお願いいたします。

みんなの回答

  • t-okura
  • ベストアンサー率75% (253/335)
回答No.1

AddHandler で拡張子に対応付けたハンドラを 取り消すのは、RemoveHandler です。

参考URL:
http://httpd.apache.org/docs/2.2/mod/mod_mime.html#removehandler

関連するQ&A