1

beta実際のプロジェクトをテストするための「ベータ」サブドメインがあります。このサブドメインはルート サーバーのフォルダーを指しています。usersすべてのユーザー情報を含むフォルダーもあります。

ユーザー 58 のプロファイルを表示するには、現在、次のものが必要です。 beta.domain.com/users/user58

しかし... URLの一部を非表示にして、アドレスバーに次のように表示したい: beta.domain.com/user58

同様に、内部で にリダイレクトするbeta.domain.com/user33と、アドレス バーにはこの URL と のコンテンツが表示されます。beta.domain.com/users/user33

サーバーのフォルダーに次の.htaccessファイルを作成しました。beta

DirectoryIndex default.php index.php index.html index.htm
RewriteEngine On
RewriteRule ^([A-Za-z0-9_]+)/$ users/$1 [L,NC]

しかし、何も起こりません!!! ファイルをサーバールートにコピーしようとしましたが、同じ結果になりました。

いくつかの提案をお願いします。

4

1 に答える 1

0

あなたの問題は、正規表現の最後の / だと思います。これは beta.domain.com/user33/ と一致しますが、/ なしでは一致しません。これを試して:

RewriteEngine On
RewriteRule ^([A-Za-z0-9_]+)$ users/$1 [L,NC]

? を入力することで、いつでもオプションで / を含めることができます。その後:^([A-Za-z0-9_]+)/?$

于 2012-10-31T15:22:34.440 に答える