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