masakichi-code

独学エンジニアの技術ブログ

日本語のURLから英語URLへリダイレクトする書き方

  • htaccess
  • WordPress

2023.06.26(月)

日本語のURLから英語URLへリダイレクトする書き方
『日本語のURLから英語に直したURLへリダイレクトできない』
『htaccessに日本語URLはどう書いたらいいの?』

こういった疑問に答えます。

本記事の内容

  • 日本語URLから英語URLへリダイレクトする書き方
  • もしリダイレクトできなかったら

Webエンジニア歴1年
WordPressの運営&立ち上げ70サイト以上かかわっている

こういった私が解説していきます。

1. 日本語URLから英語URLへリダイレクトする書き方

  • その①:日本語URLをそのまま記載する
  • その②:日本語URLをそのまま記載してもダメだった
  • その③:『%』を『\x』に書き換える

その①:日本語URLをそのまま記載する

・htaccessにリダイレクトを書く

リダイレクトは下記のようにして書きます。

上記を参考にリダイレクトしたコードの例が下記です。

その①:日本語URLをそのまま記載してもダメだった

・なんでそのまま記載してもダメなのか

先ほどの方法でリダイレクトを記載してもだめでした。
実は私が、リダイレクト前のURLはエンコーディングされていないURLを記載すると勘違いしていたためでした。
正しくは、URLエンコーディングされたものに書き換える必要があります。
日本語URLをコピーして貼り付けたときにできる文字の羅列がそうですね。

・エンコーディングされた日本語URLでもダメ

そのままURLを貼り付けてもリダイレクト失敗でした。。。
実はApacheを使っているサーバー(大体使ってる)だと、『%』が『x』に変換されてしまうのが原因です。

□その②:『%』を『\x』に書き換える
なんと、『%』を『\x』と書き直してあげると、読み込んでくれるらしい…
一発置換で『%』を『\x』にした例が下記です。

随分と長いコードになりましたが、これで解決できました。

2. もしリダイレクトできなかったら

  • その①:htaccessの上の行に書く
  • その②:それでもダメなら

その①:htaccessの上の行に書く

・htaccessは上から順にコードを読んでいく

例えば、下記のように全体をリダイレクトする記述がある場合、上に書いてみてください。

『www』や『SSL』のリダイレクトが先に効いている場合があります。

その②:それでもダメなら

・お問い合わせからご相談ください

私がエンジニアになりたての頃、htaccessの設定で苦戦したことがあります。
困っている方の力に少しでもなりたいので、無料でアドバイスやコードの調整をしたいと思っています。
ぜひ、一緒に解決していきましょう。

以上、日本語のURLから英語URLへリダイレクトする書き方をご紹介しました。
ではまた。