獲取服務器文件,無讀的權限: Server returned HTTP response code: 403 for URL: http://*******/address/temp/file3.xlsx


背景

獲取服務器端的excel文件,並解析excel文件內容,在下載的過程中出現403,403是權限不足問題。

嘗試處理

  1. connection.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
  2. 如果是服務器端禁止抓取,那么這個你可以通過設置User-Agent來欺騙服務器.
    更改配置為:
    connection.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36)");

分析原因

  1. 你的IP被列入黑名單
  2. 你在一定時間內過多地訪問此網站(一般是用采集程序),被防火牆拒絕訪問了
  3. 網站域名解析到了空間,但空間未綁定此域名
  4. 你的網頁腳本文件在當前目錄下沒有執行權限
  5. 在不允許寫/創建文件的目錄中執行了創建/寫文件操作,沒有權限讀取文件
  6. 以http方式訪問需要ssl連接的網址
  7. 瀏覽器不支持SSL 128時訪問SSL 128的連接
  8. 在身份驗證的過程中輸入了錯誤的密碼
  9. DNS解析錯誤,手動更改DNS服務器地址
  10. 連接的用戶過多,可以過后再試
  11. 服務器繁忙,同一IP地址發送請求過多,遭到服務器智能屏蔽
  12. CC強力防護

而我遇到的問題是第5個;

查看服務器文件並分析

-rwxr-xr-x 1 root root  12691 Jan  9 14:00 file1.xlsx  
-rw-r--r-- 1 root root  11612 Jan  9 13:16 file2.xlsx  
-rw------- 1 root root  13887 Jan 15 09:24 file3.xlsx  
-rwxrwxrwx 1 root root  11612 Sep  5 10:40 file4.xlsx  
-rw-r--r-- 1 root root  25109 Dec  5 19:24 file5.xlsx  
-rw------- (600)      只有擁有者有讀寫權限。
-rw-r--r-- (644)      只有擁有者有讀寫權限;而屬組用戶和其他用戶只有讀權限。
-rwx------ (700)     只有擁有者有讀、寫、執行權限。
-rwxr-xr-x (755)    擁有者有讀、寫、執行權限;而屬組用戶和其他用戶只有讀、執行權限。
-rwx--x--x (711)    擁有者有讀、寫、執行權限;而屬組用戶和其他用戶只有執行權限。
-rw-rw-rw- (666)   所有用戶都有文件讀、寫權限。
-rwxrwxrwx (777)  所有用戶都有讀、寫、執行權限。

發現要解析的文件 file3.xlsx, -rw------- ,只有擁有者有讀寫權限,故而造成獲取遠程excel報403錯誤。

處理方式

執行命令: chmod 644 file3.xlsx
結果: -rw-r--r-- 1 root root 13887 Jan 15 09:24 file3.xlsx ,再次重試,已經可以解析

參考資料

https://blog.csdn.net/u013197629/article/details/73608613
https://blog.csdn.net/u014316462/article/details/52241685


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM