web-dev-qa-db-ja.com

同じ場所にあるphpファイルを使用して、ウェブサーバー上のファイルを編集/変更するにはどうすればよいですか?

サーバーにXMLファイルがあります。同じディレクトリに、XMLのコンテンツを変更して保存するPHPファイルがあります。これでは、保存部分は機能しません。私の知る限り、コードは大丈夫で、問題はファイルアクセスの許可にあります。

ここで利用可能な詳細: https://stackoverflow.com/questions/3351652/how-to-save-an-xml-file-on-the-web-server-using-php (コードに問題はありません。より多くの洞察を与えるために提供しました。問題はアクセス許可にあるようです)

XMLファイルの権限は、rw-r--r--(644)です。

私の質問は、私はそれを正しくやっていますか?同じディレクトリ内のファイルを変更するにはどうすればよいですか?

4
San

答えは、そのファイルの権利を誰が所有しているかによって変わります。たとえば、FTPクライアント(filezilla)を使用してサーバー上にファイルを作成する場合、所有者はFTPアカウントのユーザー名ですが、PHPを使用してファイルを作成する場合、所有者はwww-dataです。

それはあなたの権利を見ることで言われていますが、私は所有者だけがあなたのファイルに書き込む権利を持ち、グループと他の人は読み取りアクセス権しか持っていません。これは、chmodコマンド(http://www.onlineconversion.com/html_chmod_calculator.htm)に与える権利を計算するためによく使用する計算機です。それはかなり直感的ですが、グループへの書き込みアクセス権を与える必要があると思います。

それが役立つことを願っています:)

0
Gazillion

多分何かを見落としているかもしれませんが、PHP/Webserverのユーザー以外の可能性が既に確立されているため、書き込み権限を与えられていない所有者にのみ書き込みアクセス権を与えているようです。

ユーザーが「www-data」グループ(またはWebサーバーが使用しているグループ)に属していることを確認し、グループ「chmod g + w filename.xml」に書き込み許可を追加することができます。

または、「chown www-data:www-data filename.xml」で「www-data」グループにそのファイルを配置できます

0
dmsnell