CentOS Web サーバーの仮想ディレクトリ内で PHP スクリプトを実行するのに苦労しています。サーバーには LAMP インストールと phpMyAdmin があります。
サーバーには仮想ディレクトリがあります。これらの仮想ディレクトリは /home/sitename にあります。例えば。/home/site1 /home/site2 /home/site3
シンプルな phpinfo スクリプトが実行されます。
<?php phpinfo();
しかし、実行しようとすると:
<?php
passthru(id);
?>
また:
<html>
<head>
<title>TEST WRITE FILE</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?php
$myFile = "test.txt";
$fh = fopen($myFile, 'w') or die("can't open file");
$stringData = "TEST1\n";
fwrite($fh, $stringData);
$stringData = "TEST2\n";
fwrite($fh, $stringData);
fclose($fh);
?>
</body>
</html>
彼らは何もすることを拒否します。
www-hosting という名前のグループを作成しました。このグループは、すべての /home/sitename ディレクトリの所有者です。PHP がユーザー apache として実行しようとしていることを確認しました。ユーザー apache をグループ www-hosting に追加しました。テストの一環として、グループ www-hosting rwx を許可するために /home/site1 の権限を 775 に変更しましたが、それでも PHP スクリプトは実行されません。
オンラインで検索しましたが、PHP が実行されない理由についての答えが見つかりませんでした。
これはある種の権限の問題であると確信しています。誰かがこれを適切に実行するための回答を手伝ってくれれば、とても感謝しています。