だから私はいくつかのCSVテキストファイルからデータをロードし、顧客のための美しいGoogleチャートとテーブルを生成する素晴らしいレポートページをPHPにしました。その後、テキストファイルが共有Dropboxフォルダにある場合は、従業員がコードを復号化したりデータベースを処理したりせずにテキストファイルを更新し、オンラインでその更新を表示できるようにしたいと思いました。これは私のローカル開発ではうまく機能しますが、本番サーバーにコードをアップロードすると問題が発生します。私の考えでは、これはUnix権限の問題であり、PHPエラーです。
[Sun Apr 07 11:27:58 2013] [warn] [client 208.69.41.10] mod_fcgid: stderr: PHP Warning: file(/root/Dropbox/Reports/client-report.csv): failed to open stream: Operation not permitted in /var/www/vhosts/mydomain.com/httpdocs/my-awesome-report-page.php on line 49, referer: http://www.mydomain.com/my-awesome-report-page.php
PHPがCSVファイルをインポートできるようにする最善の方法は何ですか/root/Dropbox
?本番ではCentOS 5.8を実行しています。
サイトの httpdocs フォルダにあるファイルは mydomain:psacln に属するように見えますが、root~ にあるファイルは root:root です。
コメントで議論したように、安全な解決策を見つけたいと思います。レポートページHTMLはログイン情報の後に隠されています。
ベストアンサー1
ドキュメントルートからフォルダへのシンボリックリンクを設定します。
ln -s /var/www/reports /root/Dropbox/Reports
ファイルを読み取ることができれば、ApacheとPHPのセキュリティ設定を変更せずにファイルに直接アクセスできます。