認証処理を行うメインページと、ヘッダーリダイレクトを使用してリダイレクトを完了しました。私は最近、変数のいずれかを含むようにインクルードの1つを更新するまで、すべてうまくいっていました。下記参照。リダイレクトを防止するファイル送信ヘッダーが含まれています
<?php
session_start();
include "globalvariables.php";
include "../../includes/databaseconnections/$schoolName/database_connection.php";
文字列に$ schoolNameを追加するまで問題はありませんでした。私は私たちの自動化された複製システムのためにこれを必要としました。(異なる顧客のために別の学校名のページとデータベースをコピーできます)
ここには付属のファイルがあります。ものすごく単純。
<?php
$schoolName = "fakeschoolname";
?>
$ schoolNameが実際に見えない非サーバー側のデータを出力していない限り、ヘッダーがどのように送信されているかは分かりません。誰にどのようにこれを改善するための提案やアイデアがありますか?または、ページを動的にコピーして編集するより良い方法がありますか?
あなたは本当に最初にこれをしたくありません。あなたがファイルをインクルードする前に '$ schoolName'変数を注意深くチェックしない限り、そうではありません。このようにすると、* File inclusion attacks *として知られる何かに脆弱になります。ユーザーが変数を変更した場合、基本的にサーバーには想定されていないファイルを含めることができます。おそらくあなたのサーバーにアップロードされたphpファイルのように。 – icecub
さて、サイトをオンザフライで複製できるようにするにはどうすればよいでしょうか?それは単に手作業であるべきか? –
コードブロックのインデントを修正するために質問を編集しようとしていましたが、それが実際のコードにどのようにあるのかが問題になる可能性があります。 '<?php'の前に実際にスペースがありますか? –