28

簡単な質問ですが、何らかの理由で Google で正確な答えを見つけることができませんでした:

Slicehost に Ubuntu を新しくインストールしましたが、ホーム ディレクトリにパブリック ディレクトリを作成して、多数の静的 HTML ファイルを含む単純な Web サイトを作成したいと考えています。どうすればいいですか?入力してアクセス許可を設定するだけの問題mkdir public_htmlですか、それともよりクリーンな方法がありますか? (以前、ファイルを public_html ディレクトリにコピーするたびに、そのパーミッションを手動で設定する必要があり、非常にイライラするという問題があったことを覚えています。)

4

3 に答える 3

38

すでに apache がインストールされていると仮定して、次の手順を実行します。

sudo a2enmod userdir
sudo service apache2 reload

最初のコマンドは、userdir apache mod を有効にします。これはまさにあなたが望むことを行います。2 番目は、Apache 構成をリロードして、新しい構成の使用を開始します。

apache2 をインストールするには:

sudo apt-get install apache2

もちろん、public_html フォルダーのアクセス許可によって、www-data ユーザーがそこにあるファイルを参照できるようにする必要もあります。通常は 755 で問題ありません。これをする:

mkdir ~/public_html
chmod -R 755 ~/public_html

これは、再帰的に (-R) public_html を通過し、パーミッションを 755 (所有者 rwx、およびグループと他の rx、rx) に設定します。

于 2009-02-09T00:38:50.667 に答える
11

他の回答は で正しい軌道に乗っていますがmod_userdir、それを使用すると、Web サイトにベース URL が与えられます。http://www.yourdomain.com/~username/たとえば、ファイル/home/username/public_html/index.htmlは としてアクセスできますhttp://www.yourdomain.com/~username/index.html。たとえば、ドメインルートの下でファイルにアクセスできるようにするhttp://www.yourdomain.com/index.html場合は、ディレクティブを配置する必要があります

DocumentRoot /home/username/public_html

Apache 構成ファイル内。

于 2009-02-09T00:44:10.937 に答える
2

Apache にはmod_userdirを使用する必要があります。それ以外の場合は/var/www/、どこからでもシンボリック リンクを設定する必要があります。

パーミッションの問題は、Apache がファイルへの読み取りアクセス権を持っていないためです。への読み取りアクセスを許可する必要がありますwww-data(またはユーザーが何であれ、ディストリビューション固有)。

于 2009-02-09T00:27:57.650 に答える