2018年12月10日 星期一

廣論內容查詢


可進入:https://cse.google.com/cse/ 完成自訂的 google 查詢設定

目前只設定了

福智官網
https://www.blisswisdom.org

以及
https://www.theqi.com/buddhism

方便學習使用

2018年11月7日 星期三

dropzone 檔案上傳失敗

使用 dropzone 元件處理多檔上傳時,自己電腦的開發環境下測試沒問題,但搬到上線主機時,多檔上傳時會隨機發生上傳失敗的問題。在瀏覽器-開發人員工具(F12)模式下,發現執行上傳檔案的對應程式,出現 404 的錯誤。但實際去連該網址,卻是活著的。

這就讓我懷疑是否因為上傳的檔案太大,直接被 IIS 擋掉了。但我實際檢查 web.config,卻明白寫著:


<system.web>

   <!--設定最大檔案傳輸流量,單位:KB-->
   <httpRuntime maxRequestLength="1000000"/>

</system.web>

這不是很諷刺嗎?可以上傳約 1G 呢。

但當我看了 https://forums.iis.net/t/1150009.aspx 論壇後,終於了解了。

在 IIS7 以後,不能僅僅在 httpRuntime 設定  maxRequestLength 而已,還要加上

<system.webServer>
  <security>
   <requestFiltering>
    <requestLimits maxAllowedContentLength="1000000000" />
   </requestFiltering>
  </security>
</system.webServer>

此外還要注意, maxAllowedContentLength 的單位是 Byte,也就是 1M =1*1024*1024
跟  maxRequestLength 預設是 KB 不一樣

Ref:


2018年7月4日 星期三

Python 取得 today

要在 Python 取得 today 日期,可以用下面語法:

from datetime import date
NowDate=date.today()

#印出 20180704
print(NowDate.strftime('%Y%m%d'))
#印出 2018-07-04
print(NowDate.strftime('%Y-%m-%d'))


關於 date 這物件,有提供 replace 方法,可以讓你針對 year / month / day 做調整。
如果只是針對 year 做修改(例如  +1 年),應該沒甚麼問題;但如果針對 month 或 day 修改,就要考慮會不會出現 13月 、 32日 這種超出界線的問題。實際上,replace 這方法並不會自動幫我們處理跳到下個月或下一年的事情,但他會去檢查 replace 後的日期是否正確。

#故意讓 day 超出界線
NextDaty=NowDate.replace(day=NowDate.day+31)

執行結果的錯誤訊息會是:day is out of range for month

如果想要對 month 或 day 做調整,可以用  timedelta 來完成
但要記得先 import  datetime

from datetime import date
import datetime
NowDate=date.today()
date_1 = datetime.datetime.strptime(NowDate.strftime('%m/%d/%y'), "%m/%d/%y")
#end_date 就會是 31 天之後的日期
end_date = date_1 + datetime.timedelta(days=31)


參考:
01.Adding 5 days to a date in Python
https://stackoverflow.com/questions/6871016/adding-5-days-to-a-date-in-python

02.Getting today's date in YYYY-MM-DD in Python?
https://stackoverflow.com/questions/32490629/getting-todays-date-in-yyyy-mm-dd-in-python