2017-12-29 39 views
1

CentOS 7、php5.4 - シェルアクセス。php mkdir権限発行

/ホーム/タム/ public_htmlの/ ..

/ホーム下のすべてのフォルダとファイルはタムです:タムと755

myuserのはvisudoをでALL PRIVました。

問題:PHPスクリプトで

(/ホーム/タム/ public_htmlの)をMKDIRしようとしている、0755、真の); 警告:mkdir():許可が拒否されました... 私は777に行ってみましたが、まだ作業はありませんでした。また、すべてのファイルをrootに変更しようとしましたが動作しませんでした。

echo whoami; - > apache

どのように私は最高の解決策だと思うので、 'whoami'はトムです。

P.S. PHPの古いバージョンをよく認識していますが、この時点ではアップグレードはできません。

+1

あなたのケースのユーザーは、ディレクトリを作成しようとしているアクセス許可を拒否しているApacheです。 –

+0

だから、私はどのようにユーザーの「apms」をユーザーのtomsに変更できますか? – TomSjogren

答えて

1

所有権をapacheユーザーに変更しようとしています。そのCentOSとして、それはapacheであり、オーナーに書き込み許可を与えるべきです。固定

sudo chown apache:apache /home/toms/public_html/ 
chmod 0755 /home/toms/public_html/ 
+0

chown www-data:www-dataが私に与えます: chown:無効なユーザー: 'www-data:www-データ' – TomSjogren

+0

私はCentOSの回答を更新しました。利用可能なすべてのユーザのリストを 'cut -d:-f1/etc/passwd'で得ることができます。 'apache'がそれらの1つであることを確認してください。 – 73ey

+0

sudo chown apache:apache/home/toms/public_html/did not도움。同じ変更を再帰的にやろうとしました。 私はtomsグループにapacheを追加しましたが、tomsはvisudo ALLを取得しましたが、まだ行っていません。 phpがCGIではなくapache APIを介して実行されることにも言及してください。 – TomSjogren

0

許可問題:/usr/lib/systemd/system/httpd.serviceで

偽PrivateTmp =(デフォルトではtrueに設定されています)

が仕上げ

セット:

systemctlデーモンリロード

systemctl restart httpd