2017-01-25 7 views
1

HTTPSを使用するURLの一部である場合、:80をURLから削除する必要があります。URLからhtaccess経由で「:80」を削除します

例のURL:私は試してみました.htaccessで

https://www.domain.com:80

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteCond %{HTTP_HOST} www.domain.com:80 [NC] 
RewriteRule .* https://domain.com [L,R=302] 
</IfModule> 

私も試してみました:

<IfModule mod_rewrite.c>  
RewriteCond %{SERVER_PORT} ^80$ 
RewriteRule ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L] 
</IfModule> 
+0

まず、URLにポートを追加して何を追加しますか? –

+0

私は古いphpBBフォーラム(3.0.1)を実行しています。これは、そのクライアント上に構築されているすべての拡張機能のため、直ちに最新バージョンにアップグレードできません。長期的な解決策は明らかにフォーラムソフトウェア内のバグをアップグレードまたは修正することですが、これまではhtaccessを使用してSSL証明書が機能するようにしたいと考えています。 – Anthony

+0

また、リダイレクト中にのみ追加されます(つまり、誰かが投稿にログインしたり投稿に返信したとき)。 – Anthony

答えて

1

[OK]をもあなたのことができるようにすべきですhttpsがオンで、ポートが80の場合はリダイレクトを確認します。条件の組み合わせを使用してください。これがあなたのために働くかどうか見てください。

RewriteEngine on 
RewriteCond %{SERVER_PORT} ^80$ 
RewriteCond %{HTTPS} ^on 
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=302,L] 

注このソリューションshould作品だけでなく、それはそのようにしていた場合にも同様にバーチャルホストにポート80でSSLを有効にする必要があります。

+0

これまでの運がありません。私は私のウェブホストへの私のサポートチケットにそれを含めるでしょう。 htaccessの使用を制限しているサーバーのレベルに何もないことを確認する必要があります。 – Anthony

+0

助けてくれてありがとうが、私のホストは、 "mod_rewriteが着信URL(要求)には影響しないので、htaccessは動作しないと言います。 – Anthony

+0

あなたのホストは何について話していますか?これはクライアント側ではありません。送信URL –

関連する問題