在整合SiteFactory 和 Oblog 的時(shí)候,發(fā)現(xiàn)由于兩者所采用的加密方式不一至,導(dǎo)致注冊(cè)中文用戶名時(shí)出現(xiàn)如下錯(cuò)誤:
oblog46(1):安全碼驗(yàn)證未通過!
請(qǐng)仔細(xì)閱讀論壇幫助文件,確保您有相應(yīng)的操作權(quán)限。
為了讓支持中文,我們只有修改Oblog的加密方式,讓Oblog采有新的md5加密方式
(注意:對(duì)于存在中文密碼的用戶,可能出現(xiàn)密碼不正確)
我們直接使用 動(dòng)網(wǎng)的inc/md5.asp 來修改,先復(fù)制動(dòng)網(wǎng)文件:inc/md5.asp
1.將下面 //第7行
Private m_l2Power(30) Dim Md5OLD |
Private m_l2Power(30) Dim iLength '增加部份 Dim Md5OLD |
2.將下面 //第 198行
Public Function MD5(sMessage,stype) m_lOnBits(0) = CLng(1) |
改為:
Public Function MD5(sMessage) Md5OLD=0 m_lOnBits(0) = CLng(1) |
3.將下面 //382行
if stype=32 then MD5 = LCase(WordToHex(a) & WordToHex(b) & WordToHex(c) & WordToHex(d)) else MD5=LCase(WordToHex(b) & WordToHex(c)) end if |
改為:
If iLength = 32 Then MD5 = LCase(WordToHex(a) & WordToHex(b) & WordToHex(c) & WordToHex(d)) Else MD5 = LCase(WordToHex(b) & WordToHex(c)) End If |
然后把這個(gè)文保存后復(fù)蓋Oblog inc 下的 md5.asp ,其他修改按照整合教程修改。
二、完成上面修改之后,可以實(shí)現(xiàn)中文注冊(cè),但是登錄時(shí)可能出現(xiàn)如下問題:
中文用戶名在SiteFactory登錄成功,在oblog能同步登錄。而在Oblog登錄成功,在SiteFactory卻不能同步登陸。
出現(xiàn)這樣的情況主要是中文在url的編碼問題。接下來我們還要修改Oblog的登錄文件,在Oblog的文件夾下找到Login.asp:
將下面//159行
turl=strUrl&"?syskey="&MD5(UserName&oblog_Key)&"&username="&UserName&"&password="&PassWord&"&savecookie="&CookieDate & "@@@"& turl '修改部份 |
改為
turl=strUrl&"?syskey="&MD5(UserName&oblog_Key)&"&username="&Server.urlencode(UserName)&"&password="&PassWord&"&savecookie="&CookieDate & "@@@"& turl '修改部份 |
保存文件即可。
新聞熱點(diǎn)
疑難解答
圖片精選