.htaccessでRewriteを用いて、サイトのURLをシンプルにしようとしています。
今回はsample/01/鈴木 にアクセスした際に、sample.php?num=01&name=鈴木 に接続したいと思い、以下をhtaccessに記載しました。
RewriteRule ^sample/(.*)/(.*)$ sample.php?num=$1&name=$2
結果として、name部分が英語の場合(例: sample/01/suzuki)は正しく接続できるのですが、name部分が日本語の場合(例: sample/01/鈴木)正しく接続できません。
後者だとそもそもsample.phpにアクセスしていないので、正規表現の条件に引っかかってすらいないのだと思われます。
いくつかサイトを巡って調べてみても、正規表現のマッチは日本語も英語と同様に動かせているようなサンプルがあり、こうなってしまう理由がわかりません。何に問題があるのでしょうか・・・。
追記:ローカル環境だと動かなかったのですが、本番環境だと日本語も正しく拾いました。何らかの設定が問題の可能性が高そうです・・・。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/12/29 01:36
2017/12/29 02:09 編集
2017/12/29 04:09