2011-07-21 8 views
0

.htaccessでリダイレクトを作成しようとしていますが、完全に機能することはありません。多分ここの誰かが私を助けることができます。私は必要なものドメイン.htaccessリダイレクトの問題

は次のとおりです。

  1. http://domain.sehttp://domain.comhttp://www.domain.comにリダイレクトします。

  2. また、http://www.domain.com/folderにリダイレクトするためにhttp://domain.se/somefolderhttp://domain.com/somefolder、およびhttp://www.domain.se/somefolderが必要です。

私はこれを自分で達成しようとしましたが、最終的には送信されないデータに関するエラーです。

答えて

1
Options +FollowSymLinks -MultiViews 
RewriteEngine On 
RewriteBase/

# folder rewrite 
RewriteRule ^somefolder$ folder [L] 

# domain redirect 
RewriteCond %{HTTP_HOST} =domain.com [OR] 
RewriteCond %{HTTP_HOST} =domain.se 
RewriteRule (.*) http://www.domain.com/$1 [R=301,L] 
  1. これは、Webサイトのルートフォルダにの.htaccessファイルに配置されます。他の場所に配置されている場合は、いくつかの調整が必要になることがあります。

  2. 最初のルールは、/somefolderから/folderへのリダイレクト(内部リダイレクト)要求を書き換えます。これを301恒久リダイレクトにする必要がある場合は、を[R=301,L]

  3. に置き換えてください。2番目のルールはドメインリダイレクトジョブを行います。ドメインがdomain.comまたはdomain.seの場合にのみ、このルールはリダイレクトされます。任意のドメイン名(Webサーバーが構成できるドメイン名)からwww.domain.comにリダイレクトしたい場合は、2つのRewriteCond行をRewriteCond %{HTTP_HOST} !=www.domain.comに置き換えます。

+0

ありがとう、これは完全に働いた! – Jonathan

+0

@Jonathan喜んで聞いてください。この場合は、この回答を承認済みとしてマークしてください – LazyOne

1
RewriteCond %{HTTP_HOST} !^www.domain.com$ 
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301] 

すべての要件を満たしている必要があります。 www.domain.comでないすべての要求は、そのURIにそのままリダイレクトされます。

+0

私は以下の記事で答えを使用しましたが、ありがとうございます! – Jonathan

+0

27分後に投稿された他のコードを使用したと言っても過言ではないのと同じ理由がありますか? –

関連する問題