Ubuntu デスクトップ ローカル Web サーバー上の /var/www への書き込み権限の設定

Ubuntu デスクトップ ローカル Web サーバー上の /var/www への書き込み権限の設定

ここ 3 日間、必死に苦労していますが、何が間違っていたのかわかりません...

編集 3: 私の質問は思っていたよりも具体的だと思うので、ここに新しいスレッドを作成しました:https://askubuntu.com/questions/631303/make-owner-of-newly-create-files-and-folders-www-data-instead-of-superuser-admin

私の設定は次のとおりです:

  • Ubuntu デスクトップと LAMP がインストールされたコンピューター。固定 IP は使用していないことに注意してください。フィリピンでの接続は非常に遅いため、チームと共同で Web サイトをローカルに作成できるようにするためだけに使用しています。したがって (間違っていなければ)、問題が解決するのであればすべてを 777 に設定してもかまいませんが、今後の参考のために正しい設定方法を習得しておきたいと思います。

  • 私は 5 人の「ユーザー」を作成しました。これらはすべて www-data グループ内 (および新しい方法を探していたため、新たに www-pub グループも作成しました... 両方を確認しました) で、Samba Share を使用して /www/var フォルダーに接続します。

これまであらゆることを試しましたが、成功しませんでした。

  • 再帰的に -R を使用して find コマンドで chmod および chown を実行します。
  • umaskを0002に変更する

しかし、さまざまなスレッドで見つけた chmod/chown コマンドラインをもう一度実行しない限り、すべての新しいディレクトリとファイルは依然として書き込み可能ではありません。

私は Ubuntu とサーバー/コマンド ラインなどに関してはまったくの初心者ですが、習得はかなり速いです。

質問:

  • 本番環境用ではあるものの、世界にアクセスできないので、単純な chmod 777 ルールを使用できますか (また、それを実行する正確な方法は何ですか)?

  • これを実行するための段階的なプロセスは何ですか?

  • それは単に何か他のものでしょうか? Apache の設定でしょうか? 常に参照する必要がありますか?

迷っています !

前もって感謝します

編集: これは役に立つかもしれないと思いました:

ls -l /var/www
    total 4
    drwxrwsr-x 8 www-data www-data 4096 Jun  2 17:56 html
    -rw-rw-r-- 1 www-data www-data    0 May 27 01:40 Untitled Document~

ls -l /var
    total 52
    drwxr-xr-x  2 root     root     4096 Jun  2 10:29 backups
    drwxr-xr-x 21 root     root     4096 May 28 12:49 cache
    drwxrwsrwt  2 root     whoopsie 4096 May 28 11:56 crash
    drwxr-xr-x 71 root     root     4096 May 27 11:23 lib
    drwxrwsr-x  2 root     staff    4096 Apr 18 05:34 local
    lrwxrwxrwx  1 root     root        9 May 11 23:05 lock -> /run/lock
    drwxrwxr-x 16 root     syslog   4096 Jun  2 17:53 log
    drwxrwsr-x  2 root     mail     4096 Apr 22 20:13 mail
    drwxrwsrwt  2 root     whoopsie 4096 Apr 22 20:19 metrics
    drwxr-xr-x  2 root     root     4096 Apr 22 20:13 opt
    lrwxrwxrwx  1 root     root        4 May 11 23:05 run -> /run
    drwxr-xr-x  9 root     root     4096 May 26 18:46 spool
    drwxrwxrwt 12 root     root     4096 Jun  2 17:59 tmp
    drwx------  2 root     bin      4096 Jun  2 10:21 webmin
    drwxrwsr-x  4 www-data www-data 4096 May 29 15:37 www 

編集2:

私のウェブサイトがあるフォルダ (/var/www/html) で ls -l を実行したときに奇妙な現象が見られました。もっとヒントがあるかもしれません。今日作成された新しいものは www-data ではなく、サーバーのメイン管理者 ("boris") が所有しています。

ls -l /var/www/html
drwxrwsr-x 2 boris    www-data  4096 May 29 15:38 Agama
drwxrwsr-x 6 www-data www-data  4096 May 27 18:21 calima
drwxrwsr-x 6 www-data www-data  4096 May 27 23:19 calima2
drwxrwsr-x 6 boris    www-data  4096 Jun  2 17:21 cheche
drwxrwsr-x 9 boris    www-data  4096 Jun  2 18:17 Cheche1
-rw-rw-r-- 1 www-data www-data 11321 May 26 18:19 index.html
-rw-rw-r-- 1 www-data www-data    20 May 27 01:41 index.php
drwxr-sr-x 2 boris    www-data  4096 Jun  2 17:56 Test

答え1

別のディレクトリへのシンボリックリンクを使用します:

ln -s <target> <link>

編集: より正確に言うと、次のようにすることができます:

ln -s /var/www /path/to/link

これを行うと、ルートディレクトリは読み取り専用のまま (ユーザーとして) なので、システムが保護されます。ホームパスのどこかにシンボリックリンク ディレクトリを用意しておくと、プロジェクトをいじるときに安全です。ただし、実稼働システムには使用しません。

関連情報