• 締切済み

mod_rewriteで静的化(PHP)

ご質問です。 例えば以下のような静的なページをmod_rewriteを使って.htaccessで作成しようとしています。 RewriteRuleの記述内容がよくわからず困っています。 また、.htaccessは、どのディレクトリに配置すればよいでしょうか。 どなたかご存知でしたら教えて下さい。 http://localhost/free/index.php?action=memberhttp://localhost/free/member http://localhost/free/index.php?action=bbshttp://localhost/free/bbs http://localhost/free/index.php?action=usrhttp://localhost/free/usr このような記述をしていますが、ご指摘お願いします。 ---------------------- DirectoryIndex index.php RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([0-9A-Za-z)]+)$ index.php?action=$1 [L] ---------------------- 宜しくお願いします。

みんなの回答

  • SeafooD3
  • ベストアンサー率75% (6/8)
回答No.1

こんにちは。 action=[値]のルールが常に固定のものであることを前提にルールを記述すると、単純に下記のようになります。 RewriteEngine on RewriteRule ^member index.php?action=member RewriteRule ^bbs index.php?action=bbs RewriteRule ^usr index.php?action=usr /http://*/memberにアクセスすると、getでactionにmemberが渡されています。 index.phpに print_r($_GET)として確認すると簡単です。 ディレクトリ構造がわからないのでなんともいえませんが.htaccessについては、該当ファイルがあるところに設置すればよろしいと思います。 その他、mod_rewriteについては、Apacheのバージョン 1.x系と2.x系で記述方法に違いがあった記憶があります。

関連するQ&A