質問
私はちょうど私の開発環境のためにMAMPを使用していますし、実際にWebサーバ上の/ var / www /のプロジェクト名/のフォルダ構造を理解していません。私はあなたがのhtdocsフォルダにWebサーバーを指すように意図しているか、プロジェクトフォルダのルートを指すようになっていますか思ったんだけど?
ライブラリは、セキュリティ目的のためのhtdocsフォルダの外に存在することを意味しているので、私が尋ねる理由があるが、どのように彼らは、Webアプリケーション自体から指されていますか? Webサーバは、Webアプリケーションのためのhtdocsフォルダを指している場合は確かに、Webアプリケーションは、htdocsにフォルダの外のフォルダにアクセスできないのでしょうか?
解決
簡単な解決策は、そのようなフォルダ構造を持つことです
/var/www/project-name/
+ webroot/
+ libraries/
DocumentRoot
ディレクトリにあなたのapache2ののwebroot
をポイントします。あなたはlibraries
ディレクトリにウェブからアクセスしたくないすべてのライブラリを保管してください。あなたのPHPコードでは、ライブラリのコードにアクセスするためにincludeディレクティブを使用します。
トリックは、PHPはそれがへの読み取りアクセス権を持つシステム上の任意のファイルを含めることができることを理解することです。あなたのウェブサイトを閲覧した人は、あなたのwebrootディレクトリ内のファイルにアクセスすることができます。
他のヒント
、それは/var/www
下のディレクトリ内の各サイトを持っているかなり一般的だし、これらのそれぞれは、ウェブルートとしてマウントされているhtdocs
フォルダを、持っています。その後、Webルート上のフォルダにログやアプリケーション固有のライブラリを持つことができます。例:ます。
/var/www/lolcats.com
/var/www/lolcats.com/htdocs
/var/www/lolcats.com/htdocs/index.php
/var/www/lolcats.com/lib
/var/www/lolcats.com/log
PHPは、Apacheサーバのユーザが適切な権限を持っているファイルシステム内のファイルにアクセスすることができます。仮想ホストなしでApacheを実行しているLinuxボックスの、は/ var / WWWのは、あなたのhtdocsディレクトリに使用する一般的な場所です。
これは、あなたのドメインの作品と同じようにディレクトリにローカルのウェブサイトをマッピングするgoogdアイデアがある。
多くの場合、あなたはセットアップを反映するために、単一のWebホスティングアカウント上で複数のWebサイトなので、セットアップの仮想ホストを持っています。
あなたの共有ホスティングの場合:
/var/www/root
/var/www/root/website1
/var/www/root/website2
/var/www/root/website3
ローカルPC上で3つのvitualホストを作成しますが、同一のファイル構造を維持します。
サイトはdeifferentlyサーバーのファイル構造に応じて、セットアップへのあなたの設定ファイルでまた、使用条件、両方のセットアップで同じ設定ファイルの動作を確認します。これは、あなたのワンステップ、ビルドプロセスを保つ意味ます。