0

.htaccess:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{HTTP_HOST} ^site\.com$ [NC]
RewriteRule ^(.*)$ http://www.site.com/$1 [L,R=301]
RewriteRule ^new/?$ index.php?section=new

これはうまく機能しますが、最近、ディレクトリm.site.comから読み取るサブドメインを実装しました。/mobileアクセスするm.site.com/newと、サーバーエラーを返す以外は何も表示されません。この問題を修正するにはどうすればよいですか?

基本的に欲しいhttp://m.site.com/new

と同じ効果を達成するためにhttp://www.site.com/new

4

1 に答える 1

1

をポイントm.site.comして/、次のことができます。

RewriteEngine On
RewriteBase /


RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{HTTP_HOST} ^site\.com$ [NC]
RewriteRule ^(.*)$ http://www.site.com/$1 [L,R=301]

# here i added [L] flag to stop rules matching
RewriteRule ^new/?$ index.php?section=new [L]

# everything that is not in new/* will still get redirected to the "old" mobile site
RewriteCond %{HTTP_HOST} ^m\.site\.com$
RewriteRule (.*) /mobile/$1 [L,QSA]
于 2012-07-04T08:11:49.590 に答える