サイトでさまざまな言語を使用しています。したがって、構造は静かでシンプルです。
root / => 404.php
=> template_404.php
root/subdir/ =>(language_xy)404.php
私の htaccess ファイルでは404.php
、ページが見つからない場合に備えてリダイレクトを使用しています。
その中で、ユーザーにエコーされる入力されたアドレスを取得するため404.php
に使用します。$_SERVER['REQUEST_URI']
デフォルトのブラウザー言語に応じ404.php
て、言語ファイルを含むサブディレクトリ フォルダーにリダイレクトされます。
したがって、次のようになります。
間違った URL が入力された => にリダイレクトする404.php
=> URL とデフォルトの言語を読み上げる => 言語の方向にリダイレクトする(language_xy)404.php
=> ルートから読み込みtemplate_404.php
、間違った URL をエコーアウトする。
今の問題は、きれいな URL のようなものが欲しいということですexample.com/langauge_xy/(language_xy)404.php
。$_GET
そのため、入力した URL を に送信するために使用したくありません(language_xy)404.php
。404.php
入力した URL を SESSION に保存して、単にエコーアウトできると考えましたtemplate_404.php
。これは初めて機能しますが、ページをリロードすると、何らかの理由で SESSION の内容が変更されました。なぜこれが起こるのか分かりません。使用$_SESSION['url']
は一度だけです。
ですから、この問題を解決する方法についてヒントをくれる人がいれば、本当に感謝しています。
どうもありがとう。