2011-08-16 7 views
0

コメントアウトされたGoogleリダイレクトは機能していますが、残りのルールはまったく機能しません。1and1 htaccess errors

自動的に私に500の内部サーバーエラーが表示されます。これは1and1サーバーでのみ発生します。

RewriteEngine On 
Options FollowSymLinks 

# RewriteRule ^(.*)$ http://www.google.com/$1 [r=301,nc] 

RewriteRule ^(ajax)/([a-zA-Z0-9-z\-]+)$ http://mysite.com/index.php?ajax=$2 [r=301,nc] 

RewriteRule ^([a-zA-Z0-9-z\-]+)/([a-zA-Z0-9-z\-]+)$ http://mysite.com/index.php?page=$1&subPage=$2 
RewriteRule ^([a-zA-Z0-9-z\-]+)/([a-zA-Z0-9-z\-]+)/$ http://mysite.com/index.php?page=$1&subPage=$2 

RewriteRule ^repairs/([a-zA-Z0-9-z\-]+)/([a-zA-Z0-9-z\-]*)$ http://mysite.com/repairs-engine.php?page=repairs&subPage=$1&pitem=$2 

RewriteRule ^([a-zA-Z0-9-z\-]+)$ http://mysite.com/index.php?page=$1 
RewriteRule ^([a-zA-Z0-9-z\-]+)/$ http://mysite.com/index.php?page=$1 

おかげ

+0

あなたはすべて大文字と小文字のASCII文字を含むことを意味している可能性が1and1 –

答えて

0

あなたは、charクラスのブロック内の最後のダッシュをエスケープしないようにしようとしましたか?このような

^([-ZA-Z0-9 - ] +)正確なエラーの説明については$

+0

の非常に残念サービス、0から9までの数字とダッシュ、多分アンダースコアがあまりにもこのような便利になります: –

+0

^([A -zA-Z0-9 _-] +)$ –

+0

これで500エラーが修正されましたが、現在DNSページが見つからないため、comcastにリダイレクトされていますか?cat = dnsr&con = ds&url = http – asdfasdf

1
  1. あなたは、Apacheのエラーログを確認する必要があります。

  2. このパターンはどういう意味ですか?[a-zA-Z0-9-z\-] ??間違っているそれは[a-zA-Z0-9\-] - である必要があります私はかなりこれは理由はのエラーであると確信しています。

NOTES:

  1. [NC]フラグを使用している場合、a-zA-Z持ってする必要 - ちょうどa-zは十分ではないでしょう。

  2. リダイレクト(内部リダイレクト、ブラウザのアドレスバーでURLが変更された場合)と適切なリダイレクト(301,302など)が行われない場合、フルドメイン名を使用する必要はありません。

  3. いずれにしても、すべてのルールに[L]フラグを追加することをお勧めします。処理が高速になります。

関連する問題