0

私は SourceForge からダウンロードした PHP 5.25 の Web-Developer Server Suite を持っています。私のオペレーティング システムは Windows 7 Home Edition です。

Apache を最新バージョンにアップグレードしました。まもなく PHP を 5.38 にアップグレードします。

1 つの小さな問題を除けば、うまく機能します。メインの Web ルート (C:/www/vhosts) の外部にある仮想ホストは、 PHP スクリプトを表示せず、実際にはスクリプトをまったく表示しません。単純なコードだけです。すべての仮想ホストは C:/www/vhosts 内で機能しますが、仮想ホストで宣言した他の場所では機能しません。

他の場所は次のとおりです。

  • C:/www/
  • C:/www/vhosts-test/
  • C:/www/businessweb/
  • C:/www/newmediasite/public_html/

これは、 httpd-vhosts.conf で場所を宣言したにもかかわらずです!

メインのウェブルート以外の PHP と ASP.NET をサーバーに理解させるにはどうすればよいですか。

(mod_aspdotnetも追加したことに注意してください)。

これに関するアドバイスをいただければ幸いです。Web-Developer Server Suite を再インストールした後、Web サーバーを再構築し、ファイルをバックアップ (すべて PHP と MySQL) から移動するのに 1 日半を費やしました (私見ですが、初心者にはかなり適しています)。

これでどこに行くべきかはわかりませんが、関連性のために、これは厳密にはテスト用の開発サーバーであることを付け加えておきます。

4

2 に答える 2

1

スクリプトをWebrootの外部の保護されたディレクトリに配置して、訪問者がスクリプトにアクセスできないようにすることができます。

ただし、これらのスクリプトを含むスクリプトをWebrootに配置する必要があります。ほとんどのファームウェアは同様の機能を実装しています。

<?php
 require_once('/var/usr/myConfigDir/config.php');
?>

私が理解しているように、Webrootとして構成されたディレクトリのみがスクリプトを実行できます。すでにApacheは、Webrootの外部でスクリプトを実行しないためのセキュリティレイヤーを追加しています。

したがって、ターゲットがスクリプトの一部を保護することである場合は、それを行うことができます。そうでない場合、それは不可能だと思います。

于 2012-08-13T11:42:48.957 に答える
0

あなたの質問に対する私の理解から、あなたは PHP ファイルをコンピュータのどこにでも持ちたいと思っていますが、それでも実行できるようにしたいと考えています。PHPファイルは、file://foo.php/の代わりに127.0.0.1/foo.phpなどのWebサーバーを介して開かれるため、これが可能であるとは思いません

Web サーバーは /www のファイルを実行するように構成されていますが、どこかに設定がない限り (私は知りません)、すべての PHP スクリプトを /www に置く必要があります。

于 2011-12-21T12:07:07.137 に答える