というわけで今回得た事としては
- RewriteRuleは複雑な方から。
- phpファイルは静的URLに巻き込まれない場所に置く。
でしょうか。
今回の例を挙げるならば、
http://example.com/iddy/iddy_tool.php
の様に設置して、.htaccessを
RewriteRule ([A-Za-z0-9]+)$ iddy_tool.php?id=$1 [L]
RewriteRule ([A-Za-z0-9]+)/([-_A-Za-z0-9]*)$ iddy_tool.php?id=$1&elem=$2 [L]
の様にすると、RewriteRuleの一つめにしか引っかからず、その上、iddy_tool.phpも呼び出せない状態になります。
その為、
http://example.com/iddy_tool.php
の様に設置して、.htaccessを
RewriteRule ([A-Za-z0-9]+)/([-_A-Za-z0-9]*)$ ../iddy_tool.php?id=$1&elem=$2 [L]
RewriteRule ([A-Za-z0-9]+)$ ../iddy_tool.php?id=$1 [L]
の様にすることで先程の失敗を両方共に引っかからなくなります。
そんな感じ。
0 件のコメント:
コメントを投稿