PHPでURLの末尾スラッシュを削除したいのですが、パラメータがあるときにはどのようにしたらよろしいでしょうか? つまり次の変更だけでなく、

PHP64閲覧xmlns="http://www.w3.org/2000/svg">25

ベストアンサー

0

ありがとうございます。 そちらを.htaccesに、ということですよね? 実は今回スラッシュなしで統一したいというのは ➀サイト訪問時のURL ➁ajaxでPOSTされるURL の2つがございまして、 なので.htaccessへの記述では➁についての解決が難しそうです。(.htaccesはサイト訪問時だけ効くやつですよね?) また、.htaccessに次のように記述したものの、➀の方についてもスラッシュなしにはなってくれないようでした。

その他の回答(2件)

0

> PHPでURLの末尾スラッシュを削除したい > つまり次の変更だけでなく、 > さらに次のような変更もしたい > パスの数などで条件分岐をしたい PHPでの処理で、例示の様な文字列から、パスの部分だけ取り出したいって事ですよね? つまり、リダイレクトは既に済んでいるって事ですよね? __書いて無ければ __既存のモノ以外の全てのアクセスは特定のスクリプトに渡す __てのを書けば良いんじゃないの? で、どんなアクセスできたのかは、$_SERVER['REQUEST_URI'] でドメイン以降が取得できるので、それを parse_url()を通せば、パス部のみを取得できます。 https://www.php.net/manual/ja/function.parse-url.php パス部のみを取得したら、末尾の / を削除してから / で explode()するか、 / を数えればやりたい事を満たせるように思うけど? > PHPでURLの末尾スラッシュを削除したい とあるのに、リダイレクトの話ばかりだけど? 本当にリダイレクトの方法が知りたいの? shimixさんの > https://example.com/search/?q=bbb > これは実質的に > https://example.com/search/index.php?q=bbb > ですよね? から、/search/index.php が実在する事に流れていってるけど、WordPressの中で / 云々の話はやりたかったんじゃないの? 完全に質問意図を読み間違えているかもしれないけれど、強く疑問を感じたので...

この返信は削除されました

0

phpフレームワークなら、 https://example.com/search/?q=bbb https://example.com/search?q=bbb は基本的に同じことです。 searchクラスのコントローラのデフォルトメソッド(たいていはindex)が呼ばれ、クエリ文字列も正常に処理されます。 レスポンスのつけ方も自由なので、HTMLでもjsonでもjsでも返せます。

ありがとうございます。 おしゃる通りかと思いますが、今回は「パスの数などで条件分岐をしたい」と考えています ので、条件分岐の前にまず「スラッシュなしで統一しておきたい」という意図がございまして…