2017-03-16 14 views
0

私のサイトの一部のページをリダイレクトしたい。私は次の形式にこれらのページをリダイレクトしたい xxxx.html(4桁までのx =桁)、例えば1.html、24.html、6875.htmlなど :htaccessファイルを使用してページのリダイレクトを制限する

これらのページには、次のような形式を持っています: index.php?id = xxxx。私はすでに適用されている

ソリューションのhtaccessファイルに次の行です:

RewriteRule ([0-9]+)\.html$ /index.php?id=$1 [R=302,QSA,L] 

、リダイレクトは完璧に動作しますが、問題は、私は、最大4桁の数字を持っているページに対してこのルールを制限したいということです例:6789.html、234.html。 たとえば、55555.htmlページにルールを適用したくありません。

答えて

1

これは、あなたが探しているものはおそらくです:

RewriteEngine on 
RewriteRule ^/?([0-9]{1,4})\.html$ /index.php?id=$1 [R=302,QSA,L] 

わずかに変更されたパターンは、httpサーバのホスト構成で、同様に動的構成ファイル(.htaccessスタイルファイル)で動作すること。


と一般的なヒント

:あなたは、常に動的な設定ファイル(「.htaccessファイル」)を使用するのではなく、HTTPサーバのホスト設定内のこのようなルールを置くことを好む必要があります。これらのファイルは悪名高いエラーが発生しやすく、デバッグが難しく、サーバーの速度が遅くなります。彼らは、あなたがホスト構成(本当に安いホスティングサービスプロバイダを読む)を持っていないか、独自の書き換えルールを書くことに頼っているアプリケーションを持っている場合にのみ、最後のオプションとして提供されます(これは明白なセキュリティの悪夢です)。

+0

どうもありがとう!! – George

関連する問題