2017-07-01 18 views
1
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-l 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule (?!^infos/)^(.+?)/?$ /dl.php?f=$1 [L,QSA,NC] 

このルールはCloudflareでhttps/SSLに切り替えた後に機能しなくなりました。理由はわかりません。クラウドフレアとURLの書き換えがSSL

私がhttpsのない、まったく同じURLのしよう://の部分をルールがなく、唯一の非セキュアなURLの

答えて

1

のためのHTTPとHTTPSの変種ということを覚えて働いているので、ページは、accessiblesありますドメインは、httpサーバの観点から、完全に別々の2つのホストによって提供されます。つまり、別々の設定があることを意味します。ほとんどの場合、sslホストはではなく、では動的構成ファイル( ".htaccess")の解釈を有効にしています。あなたは常にhttpサーバの内部でこのようなルールを置くことを好む必要があります代わりに、動的な構成ファイルを使用しての(バーチャル)ホストの設定(.htaccessスタイルファイル:...


と一般的なヒントをapacheのAllowOverrideディレクティブを見てみましょう)。これらのファイルは悪名高いエラーが発生しやすく、デバッグが難しく、サーバーの速度が遅くなります。彼らは、あなたがホスト構成(本当に安いホスティングサービスプロバイダを読む)を持っていないか、独自の書き換えルールを書くことに頼っているアプリケーションを持っている場合にのみ、最後のオプションとして提供されます(これは明白なセキュリティの悪夢です)。

+0

私は設定ファイルにアクセスできません。AllowOverride Allを.htaccessファイルで切り替える方法はありますか?それは個人的な管理セクションのために私はあまりにもパフォーマンスのヒットは心配していませんが、それは本当に良い情報です。他のライブWebサイトでたくさんの.htaccessを使用しています。私が知っている – comdex

+0

nevermind、私はちょうどこれがhtaccessの問題ではないことに気づいた。静的ファイルも404エラーを返す、私の悪い... Cloudflare SSL doesntは私のISPConfigサーバーが好きだと思われる:( – comdex

+0

@comdexこれらのファイル自体の '.htaccess'スタイルファイルの解釈... – arkascha