Global Business: [email protected]

chien-yeon logo svp

Hello,It’s Help

 

Try to search「 Custom Product Page ButtonCan't upload images on Woo App?Whiat is 'XML-RPC'?

Woo App無法上傳圖片/開啟媒體庫

近期遇到的一個狀況是客人的網站,在使用電腦的情況下可以下單,但使用手機版App打開媒體庫卻會跳出”Media Library:There was a problem when trying to access your media. Please try again later.”這串錯誤訊息,連上傳手機內部的圖片也跳出”無法上傳圖片,請再試一次”的錯誤訊息。
此錯誤訊息並不是因為Woocommerce發生問題,而是因為您的主機端或是網站(通常是主機端)停用了”xmlrpc.php”這個檔案。

“xmlrpc.php”(XML-RPC)是什麼?

XML-RPC是早期WordPress(約版本3.5之前)針對行動App與網站之間的通訊所開發的一種API介面,XML-RPC透過HTTP協定來傳輸資料,使用XML進行函數封裝、編碼。XML-RPC的主要功能是提供網站能與外部系統/網站進行互動,例如在行動裝置上撰寫/發佈文章、上傳/發佈商品;或是在其它部落格(例如Blogger,Pingback)進行文章撰寫與發佈等。

為什麼會禁用?

XML-RPC通常作為攻擊網站使用的其中一種方法之一,攻擊者可透過不間斷的帳號密碼試錯來讓目標網站癱瘓;或是利用XML-RPC的pingpack功能不斷發出DDos攻擊使網站癱瘓, 因此部分部分主機商或是WordPress主題會預先禁用xmlrpc.php。

Jetpack與XML-RPC的關係

如果您使用Woocommerce App,那麼您一定會註冊一組WordPress.com的帳號來讓您的網站與Jetpack連結,Jetpack與網站建立連結後,您就可以透過WordPress.com的帳號來登入您的Woocommerce App。(尚未開始使用Woocommerce App嗎?點此教學)
而Jetpack與WordPress的大部分資料都是透過XML-RPC協定進行資料傳輸,其中就包括了Woocommerce App的商品圖片上傳功能(Woocommerce App是由Jetpack開發的),因此,若要解決無法上傳圖片與開啟媒體庫的問題,就要設法啟用網站的xmlrpc.php。
為了確定您的問題是由xmlrpc.php問題所引起,請在您的官網網址後方加入/xmlrpc.php,例如https://www.your-site.com/xmlrpc.php,若您無法正常開啟此畫面,則表示您的xmlrpc.php被禁用。若您能看到”XML-RPC server accepts POST requests only.”這串文字,代表您的xmlrpc.php處於啟用狀態,則本篇解決方法將不適合您。
目前我們所知,主機商Cloudway預設會停用xmlrpc.php,要啟用請參照下列步驟進行啟用。

啟用xmlrpc.php(適用Cloudway主機)

1.登入您的Cloudway帳戶。
2.請點選Applications(應用程式),並點擊要啟用xmlrpc.php的網站。

3.請點選左側選單的Application Setting選項,並選取GENERAL標籤。

4.在GENERAL畫面的右側往下滑,您會看到XMLRPC ACCESS的開關選項,預設是Disable,請將開關切換至Enable即可。

現在我們完成啟用xmlrpc.php了,為了確認是否成功啟用,請在您的官網網址後方加入/xmlrpc.php,例如https://www.your-site.com/xmlrpc.php,進入後若您成功看到下方的訊息,即表示您啟用成功了。
成功訊息:XML-RPC server accepts POST requests only.

結論

若進入後網頁依然呈現404頁面或是無法正常開啟,請聯絡謙妍-快速支援,我們將盡快為您服務。

Go to Top