2

現時点では、Apache の mod_rewrite を使用して、すべての html リクエストを http(s)://domain.com/blah ではなく http(s)://www.domain.com/blah にリダイレクトしています。

domain.com:8080 で tomcat に接続する場合を除いて、すべて正常に動作します。私が行ったのは、単純に同じ .htaccess ファイルを /opt/tomcat-7/webapps/ROOT ディレクトリに配置したことだけですが、うまくいかないようです。

私は実際に、私が上で試したこととは軌道に乗っていないことを望んでおり、新しい .htaccess ファイルをすべてのwebappディレクトリですが、そうでない場合、上記で何が間違っていますか?

私はGoogle全体を検索して、Tomcatでこの問題を抱えている他の人を探しましたが、役に立ちませんでした。

記録のために、私の .htaccess ファイルは次のとおりです。

RewriteEngine on
RewriteCond %{HTTP_HOST} !^$
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

乾杯、ベン。

4

2 に答える 2

6

Tomcatは.htaccessファイルに対して何もしません。それはApachehttpdのことです。

ここにいくつかのオプションがあります:

  1. Webアプリへのアクセスに使用されるホスト名をチェックし、必要な「www」がない場合はリダイレクトするフィルターを作成します。プレフィックス。
  2. conf / server.xmlファイルに2つの<Host>を配置します。1つはホスト名「blah.com」、もう1つはホスト名「www.blah.com」です。ここで「blah.com」がデフォルトです。次に、Webアプリを「www.blah.com」にのみデプロイし、単純なWebアプリを「blah.com」にデプロイして、すべてを目的のホスト名にリダイレクトします。http://www.tuckey.org/urlrewrite/を使用して、実際の作業を行うことができます。
于 2012-05-31T11:44:57.963 に答える