wackey回答ポイント 70ptウォッチ 1

.htaccessでパラメータをディレクトリ名にしようと下記のように書いています。


RewriteEngine On
RewriteRule ^([一-龠]+|[ぁ-ん]+|[ァ-ヴー]+|[a-zA-Z0-9]+|[a-zA-Z0-9]+)/([0-9a-zA-Z\-]+)/$ kekka.php?word=$1&itemno=$2 [L]

ディレクトリの一階層目は日本語を含んだアイテム名、ディレクトリの二階層目はアイテムID(半角英数字)で考えています。

つまり、
http://設置URL/アイテム名(日本語URLエンコード済)/アイテムID/
という形式でアクセスしたときに
http://設置URL/kekka.php?word=アイテム名&itemno=アイテムID
となることを想定しています。

とりあえずこれで動いたのですが、アイテム名が一部条件で動きませんでした。
それは、
・アイテム名に「+(半角)」など半角記号を含んだ時
・アイテム名に「&(半角)」を含んだ時
です。

これを回避する方法があれば、教えてください。

※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。
ログインして回答する

ベストアンサー

その他の回答

この質問へのコメント

コメントはありません

この質問への反応(ブックマークコメント)

質問の情報

登録日時
2009-06-13 23:48:10
終了日時
2009-06-18 12:43:06
回答条件
回答にURL必須 1人2回まで

この質問のカテゴリ

この質問に含まれるキーワード

.htaccess519PHP7798エンコード551ディレクトリ1525パラメータ533URL11376

人気の質問

メニュー

PC版