危険に聞こえるかもしれませんが、ユーザーが自分の Web サイトで独自の PHP プログラムを作成できるようにしたいと考えています。
ユーザーが自分のファイルを投稿するときに、既存のファイルを削除または編集しないようにコードを作成する方法はありますか?おそらくRegExpを使用していますか?
ありがとう
危険に聞こえるかもしれませんが、ユーザーが自分の Web サイトで独自の PHP プログラムを作成できるようにしたいと考えています。
ユーザーが自分のファイルを投稿するときに、既存のファイルを削除または編集しないようにコードを作成する方法はありますか?おそらくRegExpを使用していますか?
ありがとう
php.ini ディレクティブを見てください。disable_functions
単純に機能を無効にしたいphp.ini
場合を除き (特に、ユーザーが PHP ファイルをアップロードして管理できるようにしている場合は、独自のスクリプトが制限されます)、この規模のコードのモデレーション スクリプトは恐ろしく複雑になります。少なくとも、作成されたすべてのファイルまたは操作を監視し、まだ作成されていないものへの呼び出しをキャンセルする必要があります。
PHP は、HTML や XML などを解析するのに十分な問題を抱えているため、生の PHP を使用して人々が独自のスクリプトを実行できるようにすることは避けたいと思います。
サーバー管理に精通していれば、おそらく何かを理解できるでしょう。サーバー障害でこれを尋ねたいと思うかもしれません。正しいパーミッション (おそらく 550) を持つ 1 つのディレクトリにファイルをコピーすると、スクリプトは何も書き込めなくなると思いますが、よくわかりません。
実行時間を短くするために、すべてのスクリプトの先頭に set_time_limit() を追加することをお勧めします。また、サーバーが破壊されないように、一度に非常に多くの実行しか許可しないスクリプトをセットアップします。