apache2.4 httpsでhtaccessを有効化するときハマった
訂正
サーバーコンフィグ内で
<Location />
RewriteEngine On
...
</Location>
こんな感じでLocationに RewriteEngine On
書いていたのが原因だった模様。
除去したら通常通り動きました。
この状態で下記のようにVirtualHost内に RewriteOptions Inherit
を書くと、ドキュメントルート内の.htaccessがLocation内に書いてあるのと同じような挙動をするようになってしまう。
RewriteRule (.*)index\.html test.html_$1 [R,L]
とかかいて実験してみた。
/index.html
にアクセスすると、 /test.html_/var/www/html
にリダイレクトした。要注意。
Locationディレクティブにリダイレクトを書くのはやめましょうということですね。
tldr;
<VirtualHost>
セクション内に
RewriteEngine On
RewriteOptions Inherit
を記述すること。
解説
apache2.2では上記の記述がなくてもいいっぽい。(試してない)
<Directory>
セクションを別の場所で書いていて、そこでAllowOverride Allをしていた場合にはまることがある。
参考
Author And Source
この問題について(apache2.4 httpsでhtaccessを有効化するときハマった), 我々は、より多くの情報をここで見つけました https://qiita.com/ir-yk/items/a56cb787b0fae1345ee7著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .