0

サイトでさまざまな言語を使用しています。したがって、構造は静かでシンプルです。

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.php404.php入力した URL を SESSION に保存して、単にエコーアウトできると考えましたtemplate_404.php。これは初めて機能しますが、ページをリロードすると、何らかの理由で SESSION の内容が変更されました。なぜこれが起こるのか分かりません。使用$_SESSION['url']は一度だけです。

ですから、この問題を解決する方法についてヒントをくれる人がいれば、本当に感謝しています。

どうもありがとう。

4

1 に答える 1