外部ファイルを編集しようとしています。ファイルの chmod (666) を変更しました。file_get_contents を使用してファイルを読み取ることはできますが、コンテンツを配置できません。
[function.file-put-contents]: ストリームを開けませんでした: HTTP ラッパーは書き込み可能な接続をサポートしていません
どうすればその問題を解決できますか?
外部サーバー上のファイルを編集する方法はありますか? 多分あなたはより良い方法を提案することができます
外部ファイルを編集しようとしています。ファイルの chmod (666) を変更しました。file_get_contents を使用してファイルを読み取ることはできますが、コンテンツを配置できません。
[function.file-put-contents]: ストリームを開けませんでした: HTTP ラッパーは書き込み可能な接続をサポートしていません
どうすればその問題を解決できますか?
外部サーバー上のファイルを編集する方法はありますか? 多分あなたはより良い方法を提案することができます
http://us.php.net/manual/en/function.file-put-contents.phpの「メモ」セクションをチェックして、URL filespec を使用してファイルを書き込む手がかりを確認してください。tl;dr: file_get_contents() を介してリモート ファイルを読み取ると信じてしまうほど簡単ではありません。
ただし、これはセキュリティの観点からは悪い考えです。いくつかの少し良いアイデア:
ssh2_scp_send をチェックアウトし、ローカルで変更されたファイルのコピーをリモート サーバーに scp します。これには、OS ベンダーを通じて (たとえば、Debian タイプの Linux マシンの場合は「apt」、Red Hat などの場合は「yum」にインストールするなど)、または PECL から SSH2 PECL 拡張機能をインストールする必要があります。
リモート サーバー上のスクリプトに POST し、ファイルを更新します。
外部サーバー上のファイルを 0777 に CHMOD すると、外部で変更できます。
<?php
chmod("/somedir/somefile", 0777);
?>
次に、編集に使用します。
<?php
$file = fopen ("ftp://login:password@server", "w");
if (!$file) {
echo "<p>Unable to open remote file for writing.\n";
exit;
}
/* Write the data here. */
fwrite ($file, "blablabla");
fclose ($file);
?>
これにより、重大なセキュリティ リスクが発生する可能性があることに注意してください。