自分のマシンにUbuntu9.10サーバーエディションをインストールしたばかりで、同じLAN内の他のユーザーと自分の個人用ローカルサーバーを実行したいと考えています。
まず、Webルートに最適なフォルダディレクトリ構造は何か疑問に思いました。
私はただ使うべきですか:
/var/www/
そこにWebドキュメントをスローし始めますか、それとも別の場所(ホームディレクトリなど)にフォルダを作成する必要がありますか?
第二に、
/var/www/
rootユーザーのみがそこにドキュメントを作成できるディレクトリですが、他のユーザーがドキュメントrootにファイルを作成し、FTP経由でアップロードできるようにしたいと思います。権限またはwww/
フォルダーを変更する必要がありますか?または、別の権限で別の場所にドキュメントルートを作成する必要がありますか?これを行う最も安全な方法は何ですか?
ここでWarnerに同意しません。singleサイトでは/var/www
を使用しますが、より複雑な場合は/srv/www
にサブディレクトリを作成します。
あなたの質問から、大まかなガイドは次のとおりです。
aptitude install Apache2
chmod g+w /var/www
adduser USER www-data
(ユーザーごと)次に、ユーザーにSCPを使用してもらい(FTPは使用しないでください)、ファイルをアップロードします。 GUIクライアントが必要な場合は、FileZillaをご覧ください。
通常、プロのIT環境など、役割専用の少数の大規模サイトのみにサービスを提供するサーバーの場合、サーバーは/var/www
内に含まれます。
個別のサイトごとにサブディレクトリを作成します。例えば:
/var/www/example.com
/var/www/testing.com
/var/www/anotherexample.com
あなたが説明していることは、共有ホスティング環境に似ているように聞こえます。共有サーバーでは、通常、public_html内のホームディレクトリ内に各ユーザーのWebサイトを構成します。複数のドメインがある場合は、上記と同様の規則に従いますが、このディレクトリ内にあります。また、ErrorLog
とCustomLog
をホームディレクトリ内で、Webツリーの外に分離します。
SuExec および mod_suphp は、ユーザーのデータがシステム上の他のユーザーに公開されないようにし、脆弱なユーザーのWebサイトの範囲を制限することもお勧めします。
ユーザーがドメインを持っていない場合は、プライマリドメイン内のサブドメインまたは mod_userdir を使用できます。
より組織化されたアプローチを採用したくない場合は、サブディレクトリ、グループ、および/ var/www内のSGIDビットを使用することをお勧めします。それにもかかわらず、それはほとんどすべての状況で理想的なアプローチではありません。