iT邦幫忙

0

Raspbian apache php fopen 寫入檔案到windows 共用資料夾

ini_set('display_errors','1');
error_reporting(E_ALL);

$file = fopen('\\\\192.168.1.155\\files\\1234567890_201804111108.txt',"w");
if($file){
    fwrite($file,date("Y-m-d H:i:s"));
    fclose($file);
}

上述程式碼在windows系統跑很順利的可以將檔案寫入到對方的windows共用資料夾
前提有在甲乙雙方都建立相同使用者與密碼,傳送方Apache也改以該使用者執行

目前問題是這功能要轉移至樹梅派作業系統上,應該算基於Linux核心吧@@?
我有新增一個與Windows相同使用者與密碼,並且Apache執行USER也變更了
但在樹梅派的LAMP執行上述程式碼無法正常寫入檔案到遠端資料夾...

小弟不才...已爬文兩三天,頭毛都掉幾千根了,跪求有相關經驗大大不吝指導...

看更多先前的討論...收起先前的討論...
runan5678 iT邦新手 2 級 ‧ 2018-05-25 11:54:12 檢舉
安裝smbclient 會符合需求?
froce iT邦高手 1 級 ‧ 2018-05-25 12:05:06 檢舉
1.windows理解網芳協定URI的功能室內建的,linux要靠 smbclient 這隻程式,不自己裝是沒有的,也不是只寫「\\」開頭就能被理解。

2.幫你查到php有 libsmbclient-php
https://github.com/eduardok/libsmbclient-php

3.或是乾脆就把他mount起來成為一個資料夾或搞懂smbclient用命令來做。
badbayz iT邦新手 4 級 ‧ 2018-05-25 14:02:58 檢舉
感謝樓上,我對Linux比較陌生,已開始往您提點方向爬文,解決後再分享給大家^_^
badbayz iT邦新手 4 級 ‧ 2018-05-26 01:19:05 檢舉
已經解決了,硬體為Raspberry Pi 3 Model B +,OS為Raspbian環境下
安裝下面所需
sudo apt-get install libsmbclient
sudo apt-get install php-smbclient
我安裝時有出現錯誤說找不到來源檔案
這時候就上網找debian的源加入到/etc/apt/sources.list
然後再執行安裝指令一次
沒錯誤後重開機看phpinfo就會看到可愛的smbclient
樹梅派系統內PHP寫入windows共用資料夾語法範例如下
$file = fopen('smb://共用的帳號:密碼@192.168.1.3/共用資料夾名稱/writetest.txt',"w");
if($file){
fwrite($file,date("Y-m-d H:i:s"));
fclose($file);
}

尚未有邦友回答

立即登入回答