2017-10-06 6 views
0

私は単純な問題があります。htaccess指示がhttps - 404と矛盾しています

私のウェブサイトはを正しく表します - URL http://example.com/mypageは - >/var/ww/html/mypage.php |簡単に言えば、基本的にURLからphp拡張子を削除することができます。

私のが意図する結果は、httpsと同じことを行うことです。しかし、私は404を返しています。したがって、私の書き換え条件はhttpsに対して正しく機能していませんが、httpでは正しく機能しています。ここで

の.htaccessファイルです。この設定で

RewriteEngine On 

Options -MultiViews 

RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule^%{REQUEST_URI}.php [L] 

、私は%{HTTPS}を指定しなければなりませんの?私は行方不明の何か他のものがありますか?

+0

HTTPSとの違いはありません。しかし... SSLはどのように構成されていますか?ポート443(あなたのSSLホスト)のVirtualHostコンテナに 'AllowOverride'がセットされていなければ' .htaccess'ファイルは処理されません。 – MrWhite

答えて

1

がうまくいけば、それが動作

RewriteCond %{HTTPS} !=on 
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]] 

"オンRewriteEngine" の後に、この2行を追加してください。これでhttp://がhttps://に置き換えられます。

+0

ネガティブ - いやいや - また、将来の参照のために、 "コードの落ちる"が目立たない...あなたのコードが何を意味しているのかを説明してみてください。**なぜあなたはそれを使用しましたか? – Zak

+0

これは何も質問と関係がありますか? ( 'RewriteRule'ディレクティブの最後に誤った']があります。) – MrWhite

関連する問題