回答:
私自身は、ユーザーをwww-data
グループに追加します...
sudo adduser {username} www-data
シンプルで効果的。設定ファイルや権限をいじることはありません。
次のファイルをルートとして編集します。/ etc / apache2 / envvars
コマンドを使用して:
sudo nano /etc/apache2/envvars
ユーザーが1人だけの場合は、ユーザーとグループを自分自身に変更し、アクセス許可の問題が再び発生しないようにします。
IE、ユーザー 'big_dog'としてのみログインしてサーバーを実行している場合:
export APACHE_RUN_USER=big_dog
export APACHE_RUN_GROUP=big_dog
ヘック、その問題については、そのユーザーを現在のユーザーに変更することができます。次に、user_dirをインストールします。すべてのWebを所有しているだけで、完全に制御できます(これを変更しない限り)。
サーバーを再起動し(不明な場合は、再起動するかgooleするだけ)、すぐに使用できます。
sudo chown big_dog.big_dog /var/lock/apache2
sudo chown big_dog.big_dog -R /var/log/apache2
/etc/apache2/uid.conf
export APACHE_RUN_USER=#$(id -u)
ユーザーIDを指定し、同様id -g
にグループで使用し、最後に実行するためにapacheを呼び出しました。
なぜあなたはこれを行うのですか、私は過去にそのパーマの問題に苦労していましたが、これは今日からの私の開発プロセスです:
sudo apt-get install lamp-server^
プロシージャを実行してランプを点灯しますプロジェクトが次のようなホームディレクトリにsymリンクを作成します。
ln -s /home/user/html /var/www/html
ホスト設定ファイルへのsymリンクを作成します
ln -s /home/user/html/Apache-VirtualHosts.conf /etc/apache/sites-enabled/000-default
それでおしまい :)
それはアスペクトとして機能し、ユーザーのパーマやapacheサーバーと同様の問題はありません。mysqlのプロセスはもう少しです。
乾杯
「これを行うべきです」という問題を回避して、次のコマンドを実行することで、Apacheのユーザーが設定されている場所を見つけることができます。
grep www- /etc/apache2/apache2.conf
次に、これらのインスタンスを編集し/etc/apache2/apache2.conf
、Apache(sudo /etc/init.d/apache2 reload
)をリロードします。
apache2.conf
www-
私のために含まれていない
grep -HR "www-" /etc/apache2/
。すでにapache2.confにあることがわかっている場合は、そのファイルを編集します。私の場合、それはそこにありませんでしたが、エリックの答えが指摘するように/ etc / apache2 / envvarsにあります。
apache.conf
ためルックス${APACHE_RUN_USER}
と${APACHE_RUN_GROUP}
。www-data
直接ではありません。
新しいユーザーグループwebdev
を作成し、それにwww-data
ユーザーを追加します。
sudo addgroup webdev
sudo adduser www-data webdev
次に、そのグループにユーザーを追加し、yorユーザーのデフォルトグループにします。
sudo adduser {your-user} webdev
sudo addgroup webdev
最後に行うことは、グループwebdevがファイルに対するrwx権限を持っていることを確認することです
sudo chmod 775 -R /path/to/project
発生する可能性があるのは、たとえばwww-dataが新しいログファイルを作成し、rwxできないことです。
www-data
特に開発環境について話しているので、自分のユーザーをグループに追加するだけでなく、これの利点は何ですか?