0

.htaccessにこのルールがあります

RewriteRule ^([^/\.]+)/?$ ?page=user&id=$1 [L]

次のようなURLを書き換えます

http://sitename.ext/nickname

http://sitename.ext/?page=user&nickname

http://sitename.ext/nick.name.test問題は、私が404エラーを受け取るようなドットのあるURLを使用することです。

正規表現が苦手です。

4

2 に答える 2

3

それは、書き直されていないからです。を除外するよう具体的に指示しましたが.、それが実行されています。

個人的には、次のようなものが好きです。

RewriteRule user/(.+) ?page=user&id=$1 [L]
于 2012-06-13T22:04:28.517 に答える
1

スラッシュ以外の任意の文字と一致させたい場合、正規表現は です[^/]。これにより、\.ドットも一致しなくなるためです。

あなたのルールは

RewriteRule ^([^/]+)/?$ ?page=user&id=$1 [L]

このサイトが役に立つかもしれません。

于 2012-06-13T22:04:52.437 に答える