0

デフォルトの .htaccess 設定で、wordpress ブログに取り組んでいます。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

私のワードプレスのブログでは、「mypage」というページを作成しました。私の書き換え設定を使用すると、アドレスバーに として表示されますhttp://www.mysite.com/mypage

カスタム ページ テンプレートを使用しており、GET 変数の使用を含むいくつかの処理を行っています。例えば:

if (isset($_GET='word')) { echo $_GET['word]; }

ということで、http://www.mysite.com/mypage?word=dog「犬」を表示します。

私が抱えている問題は、次のように URL を書き直すことです: http://www.mysite.com/mypage/dog、まだ GET 変数として「犬」にアクセスできます。

そもそも mod_rewrite ルールが苦手なのですが、wordpress のインストール内から作業を行うと、余計な変化球が投げかけられます。

これを達成するために .htaccess に何を追加する必要があるか知っている人はいますか?

ありがとうございました!

4

1 に答える 1

1

次のことを試してください。

RewriteRule ^mypage/([^/])/?$ mypage?word=$1 [L,QSA]

L フラグは、ルールの処理を停止するように .htaccess に指示します。URL の末尾に他の GET パラメータがある可能性があるため、QSA はクエリ文字列を追加します。

Mod_Rewrite ドキュメント

于 2012-06-10T01:21:29.457 に答える