無法使用 ftp_connect 的原因暨修正

描述

SYF 開發代找功能上線測試時,發現伺服器無法將檔案上傳至 ftp。

問題拆解

  1. 測試各孿生機(12, 235, SYF)、本機開發環境(windows 7 xampp)
  2. 使用其他 ftp 伺服器測試是否內部 port forwarding 等設定造成;
    分析是 ftp server 問題或是 client 問題。
  3. 於 client console 測試 php process,分析是程式問題或是系統設定問題
  4. 系統設定:httpd? OS setting?

測試用檔案

echo ($conn = ftp_connect("ftp.syf.com.tw")) ? 'Success to SYF ftp!!' : 'Could not connect SYF ftp' , '<br/>';
echo ($conn = ftp_connect("myweb.ncku.edu.tw")) ? 'Success to NCKU ftp!!' : 'Could not connect NCKU ftp' , '<br/>';

結果

為 SELinux 限制 httpd 連出所造成。

# 檢查 selinux 的 httpd 連線限制參數$ getsebool httpd_can_network_connect
httpd_can_network_connect --> off

# 開啟權限並寫入設定擋$ setsebool -P httpd_can_network_connect=1
$ getsebool httpd_can_network_connect
httpd_can_network_connect --> on

檢索到的資料

  1. CentOS6 php 無法使用 ftp_connect 的解決辦法

results matching ""

    No results matching ""