0

ファイルでこのコードを使用してい.htaccessます:

RewriteRule ^([0-9a-zA-Z].+)\.html$ view.php?question=$1 [L,QSA,NC]

このように表示されていますwhat-is-your-name.html が、私はこのように使いたいです:

what-is-your-name?.html

どうすればこれを使用できますか?

4

1 に答える 1

0

RewriteRule ^([0-9a-zA-Z].+).html$ view.php?question=$1 [L,QSA,NC]

あなたの名前は何ですか.html

として受け取ります$1 what-is-you-name

RewriteRule を

RewriteRule ^([0-9a-zA-Z].+)$ view.php?question=$1 [L,QSA,NC]

あなたの名前は?.html

あなたは同じものを受け取ります$1(再びwhat-is-you-name、「?」なし)

ですから、フラグ [QSA] を置くと、

view.php?question=what-is-your-name&.html

そうしたくなくても、PHP で疑問符を受け取りたい場合は、それを urlencode() する必要があります。

次に、リンクは次のようになります。

あなたの名前は何ですか%3F.html

最初の RewriteRule で、php は $_GET['question'] --> "what-is-your-name?" を受け取ります。

于 2015-07-16T10:18:54.113 に答える