<?xml version="1.0" encoding="utf-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><title>油拉林</title><link>http://blog.hiastro.com.tw/</link><description>VB6 ASP zBlog web captcha 網站技術 天文地理 占星 八字</description><item><title>OpenSSL 將 .pfx 轉換成 .pem</title><link>http://blog.hiastro.com.tw/webtechs/OpenSSL_legacy_pfx_pem_nginx</link><description>&lt;p&gt;OpenSSL 將 .pfx 轉換成 .pem，本來以為幾個指令能解決，沒想到還是踩了坑。在此紀錄一下。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;OpenSSL 可以使用3.2最新版，以下URL可下載：&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://slproweb.com/products/Win32OpenSSL.html&quot; _src=&quot;https://slproweb.com/products/Win32OpenSSL.html&quot;&gt;https://slproweb.com/products/Win32OpenSSL.html&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;在Windows下，執行openssl 內的start.bat&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;單純使用以下指令是會出錯的, Error outputting keys and certificates&lt;/p&gt;&lt;pre class=&quot;prism-highlight prism-language-actionscript&quot;&gt;openssl&amp;nbsp;pkcs12&amp;nbsp;-in&amp;nbsp;filename.pfx&amp;nbsp;-nocerts&amp;nbsp;-out&amp;nbsp;key.pem&lt;/pre&gt;&lt;p&gt;必須另外指定legacy模式，也就是&amp;nbsp; -legacy -provider-path &amp;quot;/path/to/legacy_library/dir&amp;quot; -provider default，其中的&amp;quot;/path/to/legacy_library/dir&amp;quot;，指的是legacy的路徑，一般也在openssl\bin內。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;還有，也有需求指定.pem檔案不加密，不產生密碼。指令開關為 -nodes，也就是 no DES 的意思。我使用nignx讀取，不想設定密碼。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;完整範例如下：&lt;/p&gt;&lt;pre class=&quot;prism-highlight prism-language-actionscript&quot;&gt;openssl&amp;nbsp;pkcs12&amp;nbsp;-in&amp;nbsp;filename.pfx&amp;nbsp;-nocerts&amp;nbsp;-nodes&amp;nbsp;-out&amp;nbsp;key.pem&amp;nbsp;-legacy&amp;nbsp;-provider-path&amp;nbsp;&amp;quot;c:\Program&amp;nbsp;Files\OpenSSL-Win64\bin&amp;quot;&amp;nbsp;-provider&amp;nbsp;default&lt;/pre&gt;&lt;p&gt;公鑰轉換範例：&lt;/p&gt;&lt;pre class=&quot;prism-highlight prism-language-actionscript&quot;&gt;openssl&amp;nbsp;pkcs12&amp;nbsp;-in&amp;nbsp;filename.pfx&amp;nbsp;-clcerts&amp;nbsp;-nokeys&amp;nbsp;-out&amp;nbsp;cert.pem&lt;/pre&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;有時還會出現另一種報錯，Mac verify error，這是製作.pfx時出現的空白密碼等不明因素，可以再使用指令開關 -passin pass: 略過。&lt;/p&gt;&lt;p&gt;範例如下：&lt;/p&gt;&lt;pre class=&quot;prism-highlight prism-language-actionscript&quot;&gt;openssl&amp;nbsp;pkcs12&amp;nbsp;-in&amp;nbsp;filename.pfx&amp;nbsp;&amp;nbsp;-nocerts&amp;nbsp;-nodes&amp;nbsp;-passin&amp;nbsp;pass:&amp;nbsp;-out&amp;nbsp;key.pem&amp;nbsp;-legacy&amp;nbsp;-provider-path&amp;nbsp;&amp;quot;c:\Program&amp;nbsp;Files\OpenSSL-Win64\bin&amp;quot;&amp;nbsp;-provider&amp;nbsp;default&lt;/pre&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Wed, 31 Jan 2024 21:05:40 +0800</pubDate></item><item><title>安裝 VB6 在 Windows 10 (WIN10) 64位元系統</title><link>http://blog.hiastro.com.tw/webtechs/VB6-WIN10-64bit-install</link><description>&lt;p&gt;安裝 VB6 在 Windows 10 (WIN10) 64位元系統 / Windows Server 2019 1809 64位元系統&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://blog.hiastro.com.tw/zb_users/upload/2022/05/202205251653469812499351.jpg&quot; title=&quot;vb6WIN10.jpg&quot; alt=&quot;vb6WIN10.jpg&quot; style=&quot;width: 992px; height: 636px;&quot; width=&quot;992&quot; height=&quot;636&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;ol class=&quot; list-paddingleft-2&quot; style=&quot;list-style-type: decimal;&quot;&gt;&lt;li&gt;&lt;p&gt;準備事項：&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;ul class=&quot; list-paddingleft-2&quot; style=&quot;list-style-type: disc;&quot;&gt;&lt;li&gt;&lt;p style=&quot;text-indent: 0em;&quot;&gt;關閉UAC&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p style=&quot;text-indent: 0em;&quot;&gt;建立零長度的&amp;nbsp;MSJAVA.DLL，放在C:\Windows內。目的是為了讓安裝過程跳過JAVA的安裝。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p style=&quot;text-indent: 0em;&quot;&gt;安裝 DirectX 7&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p style=&quot;text-indent: 0em;&quot;&gt;安裝 VB6 控制項 (VB6 Common Control)，&lt;a href=&quot;http://www.microsoft.com/en-us/download/details.aspx?id=10019&quot; target=&quot;_blank&quot;&gt;微軟&lt;/a&gt;這裡有。&lt;/p&gt;&lt;p&gt;寫稿時候，沒有看到繁體版，在此補充繁體版VB6 控制項 (VB6 Common Control)&lt;br/&gt; 
 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;a href=&quot;http://blog.hiastro.com.tw/zb_users/upload/2022/05/VisualBasic6-KB896559-v1-CHT.exe&quot; target=&quot;_blank&quot;&gt;http://blog.hiastro.com.tw/zb_users/upload/2022/05/VisualBasic6-KB896559-v1-CHT.exe&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;font-size: 18px;&quot;&gt; 主要安裝過程&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 放入VB6安裝光碟&lt;br/&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 取消「自動播放」&lt;br/&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 瀏覽光碟主目錄&lt;br/&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 右鍵點擊setup.exe，設定以管理者身份執行&lt;br/&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 出現相容性警告時，繼續執行安裝。&lt;br/&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 安裝選項，選擇「自訂安裝」&lt;br/&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 選擇安裝的項目，如：Microsoft Visual Basic 6.0, ActiveX, Data Access, Graphics，都可以自行選擇。但是必需進入Data Access (資料存取) 選項。進入後，把「ADO和RDS」的打勾取消。之後，按照一般安裝，一直到完成整個安裝過程。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&quot;font-size: 18px;&quot;&gt;IDE 相容性設定&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 調整WIN10下的VB開發環境（IDE），得先將VB6執行檔找出來，一般在 C:\Program Files (x86)\Microsoft Visual Studio\VB98\，右鍵點擊，選擇相容性頁籤，設定：&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;以系統管理員的身份執行此程式&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://blog.hiastro.com.tw/zb_users/upload/2022/05/202205251653471163697734.jpg&quot; title=&quot;vb6WIN10-2.jpg&quot; alt=&quot;vb6WIN10-2.jpg&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;另外，VB6 SP6 在&lt;a href=&quot;https://www.microsoft.com/zh-tw/download/details.aspx?id=50722&quot; target=&quot;_blank&quot;&gt;這裡&lt;/a&gt;&lt;/p&gt;</description><pubDate>Wed, 25 May 2022 17:03:10 +0800</pubDate></item><item><title>安裝 VB6 在 Windows 7 (WIN7) 64位元系統</title><link>http://blog.hiastro.com.tw/webtechs/VB6-WIN7-64bit-install</link><description>&lt;p&gt;安裝 VB6 在 Windows 7 (WIN7) 64位元系統&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;ol class=&quot; list-paddingleft-2&quot; style=&quot;list-style-type: decimal;&quot;&gt;&lt;li&gt;&lt;p&gt;準備事項：&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;ul class=&quot; list-paddingleft-2&quot; style=&quot;list-style-type: disc;&quot;&gt;&lt;li&gt;&lt;p style=&quot;text-indent: 0em;&quot;&gt;關閉UAC&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p style=&quot;text-indent: 0em;&quot;&gt;建立零長度的&amp;nbsp;MSJAVA.DLL，放在C:\Windows內。目的是為了讓安裝過程跳過JAVA的安裝。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p style=&quot;text-indent: 0em;&quot;&gt;安裝 DirectX 7&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p style=&quot;text-indent: 0em;&quot;&gt;安裝 VB6 控制項 (VB6 Common Control)，&lt;a href=&quot;http://www.microsoft.com/en-us/download/details.aspx?id=10019&quot; target=&quot;_blank&quot;&gt;微軟&lt;/a&gt;這裡有。&lt;/p&gt;&lt;p style=&quot;text-indent: 0em;&quot;&gt;&lt;br/&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ol class=&quot; list-paddingleft-2&quot; style=&quot;list-style-type: decimal;&quot;&gt;&lt;li&gt;&lt;p&gt;主要安裝過程&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;ul class=&quot; list-paddingleft-2&quot; style=&quot;list-style-type: disc;&quot;&gt;&lt;li&gt;&lt;p&gt;放入VB6安裝光碟&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;取消「自動播放」&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;瀏覽光碟主目錄&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;右鍵點擊setup.exe，設定以管理者身份執行&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;出現相容性警告時，繼續執行安裝。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;安裝選項，選擇「自訂安裝」&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;選擇安裝的項目，如：Microsoft Visual Basic 6.0, ActiveX, Data Access, Graphics。其他選項不必選，繼續安裝。一直到完成整個安裝過程。&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ol class=&quot; list-paddingleft-2&quot; style=&quot;list-style-type: decimal;&quot;&gt;&lt;li&gt;&lt;p&gt;IDE 相容性設定&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;ul class=&quot; list-paddingleft-2&quot; style=&quot;list-style-type: disc;&quot;&gt;&lt;li&gt;&lt;p&gt;調整WIN7下的VB開發環境（IDE），得先將VB6執行檔找出來，一般在&amp;nbsp;C:\Program Files\Microsoft Visual Studio\VB98\，右鍵點擊，選擇相容性頁籤，設定：&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;以「XP相容模式執行」&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;取消「圖形主題」&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;停用桌面轉譯緩衝處理&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;在高DPI設定時，停用顯示調整值&lt;/p&gt;&lt;p&gt;如圖所示&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://blog.hiastro.com.tw/zb_users/upload/2015/10/2015101602742091.png&quot; title=&quot;QQ截图20151016004459.png&quot;/&gt;&lt;br/&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color: #C0504D;&quot;&gt;*** 2018-7-6 修正&lt;/span&gt;&lt;/p&gt;&lt;p&gt;使用&amp;quot;XP相容模式執行&amp;quot;，在VB IDE內，design runtime時候，datediff的函數功能會失常，是故，建議此時應該不使用&amp;quot;XP相容模式執行&amp;quot;，如下圖所示：&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://blog.hiastro.com.tw/zb_users/upload/2018/07/201807061530885038319317.png&quot; title=&quot;VB6-not-compatible-mode.png&quot; alt=&quot;VB6-not-compatible-mode.png&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;另外，VB6 SP6 在&lt;a href=&quot;http://www.microsoft.com/en-us/download/details.aspx?id=5721&quot; target=&quot;_blank&quot;&gt;這裡&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Fri, 06 Jul 2018 21:52:46 +0800</pubDate></item><item><title>修正「安全通道支援發生錯誤 (an error occurred in the secure channel support)」 Part II</title><link>http://blog.hiastro.com.tw/webtechs/VB6-win2008-winhttp-ServerXMLHTTP-TLS-SSL-CIPHER-IISCrypto</link><description>&lt;p&gt;相隔幾個月後，我又遇見了「安全通道支援發生錯誤 (an error occurred in the secure channel support)」的問題。前文，Part One, 改用TLS 1.2已經可以解決的問題，在這次，有新的變化。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;由於部分網站採用的SSL加密，是更高強度的 RSA 2048 key，而非前文在cloudflare.com所使用的 EC 256bits key。即使同樣是tls 1.2，仍碰到問題。經過研究後，對比了不同網站採用的SSL加密KEY。如下圖，一般cloudflare.com的加密KEY編碼為：&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://blog.hiastro.com.tw/zb_users/upload/2018/04/201804191524130036930679.png&quot; title=&quot;cloudflareKEY.png&quot; alt=&quot;cloudflareKEY.png&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;然而另一家網站，例如，&lt;a href=&quot;http://sukebei.nyaa.si/&quot; _src=&quot;http://sukebei.nyaa.si/&quot;&gt;http://sukebei.nyaa.si/&lt;/a&gt; , 同樣採用tls 1.2 但不同加密KEY為 RSA 2048 bits，如下圖：&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://blog.hiastro.com.tw/zb_users/upload/2018/04/201804191524130444314087.png&quot; title=&quot;sukebeiKEY.png&quot; alt=&quot;sukebeiKEY.png&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;得知是 winhttp與ServerXMLHTTP所採用的加密KEY演算法有不同順序，必須調整順序才能讓winhttp與ServerXMLHTTP正確連上。這裡所要介紹的就是這一個工具，&lt;a href=&quot;https://www.nartac.com/Products/IISCrypto&quot; target=&quot;_blank&quot; title=&quot;IIS Crypto&quot;&gt;IIS Crypto&lt;/a&gt;, &lt;br/&gt;&lt;/p&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;img src=&quot;https://www.nartac.com/images/IISCrypto/Screenshot1.png&quot; style=&quot;width: 653px; height: 643px;&quot; width=&quot;653&quot; height=&quot;643&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;使用 Best Practices 按鈕，採用了建議設定，然後apply，重新開機。加密KEY演算法的順序經過調整，修正之後，Windows Server 2008 R2機器上的VB6，Classic ASP又能正常使用winhttp, ServerXMLHTTP了。&lt;br/&gt;&lt;/p&gt;</description><pubDate>Thu, 19 Apr 2018 17:09:11 +0800</pubDate></item><item><title>zBlogPHP 如何在Nginx，捕抓過期舊網址，跳轉301</title><link>http://blog.hiastro.com.tw/webtechs/zblogphp-nginx-rewrite-301</link><description>&lt;p&gt;為了因應SEO，或者是轉換zBlogASP至zBlogPHP，總有一些偽靜態的網址不再適用。就是在IIS環境的zBlogASP，轉換成NGINX的zBlogPHP中，所發現的問題方生本文。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;例如，我在IIS環境的zBlogASP的過期舊網址為：&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://blog.hiastro.com.tw/2015/webtechs/iis-URL-Rewrite-space-resolve/1234.html&quot; _src=&quot;http://blog.hiastro.com.tw/2015/webtechs/iis-URL-Rewrite-space-resolve/1234.html&quot;&gt;http://blog.hiastro.com.tw/2015/webtechs/iis-URL-Rewrite-space-resolve/1234.html&lt;/a&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;NGINX中，捕抓過期舊網址，跳轉301的作法，則是在nginx.conf 的&amp;nbsp;location / {} 內，新增指令如下：&lt;/p&gt;&lt;pre class=&quot;prism-highlight prism-language-bash&quot;&gt;rewrite&amp;nbsp;^\/\d+\/(.+)\/(.+)\/\d+\.html$&amp;nbsp;/$1/$2&amp;nbsp;permanent;&lt;/pre&gt;&lt;p&gt;轉換跳轉301結果為 &lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://blog.hiastro.com.tw/webtechs/iis-URL-Rewrite-space-resolve&quot; _src=&quot;http://blog.hiastro.com.tw/webtechs/iis-URL-Rewrite-space-resolve&quot;&gt;http://blog.hiastro.com.tw/webtechs/iis-URL-Rewrite-space-resolve&lt;/a&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;依舊正常偽靜態中&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;以下是zBlog偽靜態在NGINX設定範例&lt;br/&gt;&lt;/p&gt;&lt;pre class=&quot;prism-highlight prism-language-bash&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;#provide&amp;nbsp;by&amp;nbsp;zblog
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rewrite&amp;nbsp;^\/\d+\/(.+)\/(.+)\/\d+\.html$&amp;nbsp;/$1/$2&amp;nbsp;permanent;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;(-f&amp;nbsp;$request_filename/index.html){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rewrite&amp;nbsp;(.*)&amp;nbsp;$1/index.html&amp;nbsp;break;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;(-f&amp;nbsp;$request_filename/index.php){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rewrite&amp;nbsp;(.*)&amp;nbsp;$1/index.php;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;(!-f&amp;nbsp;$request_filename){
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rewrite&amp;nbsp;(.*)&amp;nbsp;/index.php;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/pre&gt;&lt;p&gt;&lt;br/&gt; &lt;/p&gt;</description><pubDate>Sat, 30 Dec 2017 02:01:40 +0800</pubDate></item><item><title>IIS rewrite 强制 http 導向https</title><link>http://blog.hiastro.com.tw/webtechs/IIS-rewrite-https</link><description>&lt;p&gt;只需要在網站設置中，「配置文件」配置一下就行了&lt;/p&gt;&lt;pre class=&quot;brush:xml;toolbar:false;&quot;&gt;&amp;lt;?xml&amp;nbsp;version=&amp;quot;1.0&amp;quot;&amp;nbsp;encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;
&amp;lt;configuration&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;system.webServer&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;rewrite&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;rules&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;rule&amp;nbsp;name=&amp;quot;HTTP&amp;nbsp;to&amp;nbsp;HTTPS&amp;nbsp;redirect&amp;quot;&amp;nbsp;stopProcessing=&amp;quot;true&amp;quot;&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;match&amp;nbsp;url=&amp;quot;(.*)&amp;quot;&amp;nbsp;&amp;gt;&amp;lt;/match&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;conditions&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;add&amp;nbsp;input=&amp;quot;{HTTPS}&amp;quot;&amp;nbsp;pattern=&amp;quot;^OFF$&amp;quot;&amp;nbsp;&amp;gt;&amp;lt;/add&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/conditions&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;action&amp;nbsp;type=&amp;quot;Redirect&amp;quot;&amp;nbsp;url=&amp;quot;https://{HTTP_HOST}/{R:1}&amp;quot;&amp;nbsp;redirectType=&amp;quot;Permanent&amp;quot;&amp;nbsp;&amp;gt;&amp;lt;/action&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/rule&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/rules&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/rewrite&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/system.webServer&amp;gt;
&amp;lt;/configuration&amp;gt;&lt;/pre&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Sun, 10 Dec 2017 14:26:33 +0800</pubDate></item><item><title>CentOS 7 虛擬主機設定懶人包</title><link>http://blog.hiastro.com.tw/webtechs/CentOS7-setting-VMware</link><description>&lt;p style=&quot;margin: 0px 0px 1em; padding: 0px; color: rgb(68, 68, 68); font-family: arial, &amp;#39;Century Gothic&amp;#39;; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: 0.65px; line-height: 22.1px; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255);&quot;&gt;&lt;span style=&quot;font-size:22px&quot;&gt;【Linux】CentOS 7 虛擬主機設定懶人包&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 0px 0px 1em; padding: 0px; color: rgb(68, 68, 68); font-family: arial, &amp;#39;Century Gothic&amp;#39;; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: 0.65px; line-height: 22.1px; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255);&quot;&gt;&lt;span style=&quot;font-size:22px&quot;&gt;【Linux】CentOS 7&amp;nbsp;Virtual Machine Settings Overview&lt;/span&gt;&lt;/p&gt;&lt;p style=&quot;margin: 0px 0px 1em; padding: 0px; color: rgb(68, 68, 68); font-family: arial, &amp;#39;Century Gothic&amp;#39;; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: 0.65px; line-height: 22.1px; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255);&quot;&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size:20px&quot;&gt;&lt;strong&gt;1. 設定網路：&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size:20px&quot;&gt;cd /etc/sysconfig/netwotk-scripts/ &amp;nbsp;(進入目錄)&lt;br/&gt;ls &amp;nbsp;(查看內容，尋找網卡名稱，看得到網卡名稱為 ifcfg-eno16777984 )&lt;br/&gt;sudo vi ifcfg-eno16777984 &amp;nbsp;(修改網卡設定)&lt;br/&gt;當然如果您本來就知道網卡名稱，可以直接輸入：&lt;br/&gt;sudo vi /etc/sysconfig/netwotk-scripts/ifcfg-eno16777984&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;span style=&quot;font-size:20px&quot;&gt;以下是預設的設定內容，請根據需求自行修改設定。(按 &amp;nbsp;&lt;strong&gt;&lt;span style=&quot;color:#FF0000&quot;&gt;Insert&lt;/span&gt;&lt;/strong&gt; 進入編輯模式)&lt;br/&gt;如：IPADDR、PREFIX、GATEWAY、DNS。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size:20px&quot;&gt;TYPE=&amp;quot;Ethernet&amp;quot;&lt;br/&gt;BOOTPROTO=&amp;quot;none&amp;quot;&lt;br/&gt;DEFROUTE=&amp;quot;yes&amp;quot;&lt;br/&gt;IPV4_FAILURE_FATAL=&amp;quot;yes&amp;quot;&lt;br/&gt;IPV6INIT=&amp;quot;yes&amp;quot;&lt;br/&gt;IPV6_AUTOCONF=&amp;quot;yes&amp;quot;&lt;br/&gt;IPV6_DEFROUTE=&amp;quot;yes&amp;quot;&lt;br/&gt;IPV6_FAILURE_FATAL_&amp;quot;no&amp;quot;&lt;br/&gt;NAME=&amp;quot;eno16777984&amp;quot;&lt;br/&gt;UUID=&amp;quot;XXXXXXXXXX&amp;quot;&lt;br/&gt;DEVICE=&amp;quot;eno16777984&amp;quot;&lt;br/&gt;ONBOOT=&amp;quot;yes&amp;quot;&lt;br/&gt;HWADDR=&amp;quot;XXXXXXXXXX&amp;quot;&lt;br/&gt;IPADDR=&amp;quot;&lt;span style=&quot;color:#FF0000&quot;&gt;192.168.101.102&lt;/span&gt;&amp;quot;&lt;br/&gt;PREFIX=&amp;quot;&lt;span style=&quot;color:#FF0000&quot;&gt;24&lt;/span&gt;&amp;quot;&lt;br/&gt;GATEWAY=&amp;quot;&lt;span style=&quot;color:#FF0000&quot;&gt;192.168.101.254&lt;/span&gt;&amp;quot;&lt;br/&gt;DNS1=&amp;quot;&lt;span style=&quot;color:#FF0000&quot;&gt;X.X.X.X&lt;/span&gt;&amp;quot;&lt;br/&gt;DNS2=&amp;quot;&lt;span style=&quot;color:#FF0000&quot;&gt;X.X.X.X&lt;/span&gt;&amp;quot;&lt;br/&gt;IPV6_PEERDNS=&amp;quot;yes&amp;quot;&lt;br/&gt;IPV6_PEERROUTES=&amp;quot;yes&amp;quot;&lt;br/&gt;IPV6_PRIVACY=&amp;quot;no&amp;quot;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;span style=&quot;font-size:20px&quot;&gt;上述動作修改完成以後，按 &lt;span style=&quot;color:#FF0000&quot;&gt;&lt;strong&gt;Esc&lt;/strong&gt;&lt;/span&gt; ，再輸入 &lt;strong&gt;&lt;span style=&quot;color:#FF0000&quot;&gt;:wq&lt;/span&gt;&lt;/strong&gt; (寫入&amp;amp;離開)，及完成設定 。&lt;br/&gt;sudo ifdown ifcfg-eno16777984 &amp;amp;&amp;amp; sudo ifup ifcfg-eno16777984 (重啟網卡)&lt;br/&gt;ping 8.8.8.8 (測試網路是否有通)，若網路有通，就可以按 &lt;strong&gt;&lt;span style=&quot;color:#FF0000&quot;&gt;Ctrl + C&lt;/span&gt;&lt;/strong&gt; 終止。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;span style=&quot;font-size:20px&quot;&gt;&lt;strong&gt;2. 安裝VMware Tools：&lt;/strong&gt;&lt;br/&gt;在VMware虛擬主機 摘要(Summary) 畫面點選 &amp;nbsp;安裝 VMware Tools (插入光碟片)&lt;br/&gt;掛接 (Mount)&lt;/span&gt;&lt;br/&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size:20px&quot;&gt;進入虛擬主機畫面後，輸入以下指令：&lt;br/&gt;sudo mkdir /mnt/cdrom (新增目錄)&lt;br/&gt;sudo mount /dev/cdrom /mnt/cdrom (掛載)&lt;br/&gt;ls /mnt/cdrom (查看檔案是否存在)&lt;br/&gt;tar xzvf /mnt/cdrom/VMwareTools-9.4.5-1734305.tar.gz -C /tmp/ (解壓縮到/tmp下，大小寫需一致)&lt;br/&gt;cd /tmp/vmware-tools-distrib/ (到該目錄底下)&lt;br/&gt;sudo ./vmware-install.pl -d (安裝)&lt;br/&gt;這裡會發現有錯誤，因為有些套件未安裝，因此需要安裝以下套件(需要有網路環境)：&lt;br/&gt;sudo yum -y install perl gcc make kernel-headers kernel-devel&lt;br/&gt;sudo yum install net-tools&lt;br/&gt;輸入 y&lt;br/&gt;完成以上套件以後，再開始重新安裝即可成功：&lt;br/&gt;sudo ./vmware-install.pl -d (安裝)&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size:20px&quot;&gt;sudo reboot (重新開機)&lt;br/&gt;重新開機完成後，再去查看虛擬主機 摘要(Summary) 畫面，會發現已經安裝完成了。&lt;br/&gt;( 如果沒有，請重新整理網頁 )&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size:20px&quot;&gt;&lt;strong&gt;3. 安裝更新：&lt;/strong&gt;&lt;br/&gt;sudo yum update&lt;br/&gt;y&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size:20px&quot;&gt;&lt;strong&gt;4. 安裝及設定SSH：&lt;/strong&gt;&lt;br/&gt;sudo yum -y install &amp;nbsp;openssh* (安裝)&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size:20px&quot;&gt;sudo vi /etc/ssh/sshd_config (設定)&lt;br/&gt;找到以下文字將註解取消，及改設定值(no/yes)。&lt;br/&gt;PermitRootLogin &lt;span style=&quot;color:#FF0000&quot;&gt;&lt;strong&gt;no&lt;/strong&gt;&lt;/span&gt; (禁止Root帳號SSH登入)&lt;br/&gt;PasswordAuthentication &lt;strong&gt;&lt;span style=&quot;color:#FF0000&quot;&gt;yes&lt;/span&gt;&lt;/strong&gt; (允許使用者帳號使用密碼SSH登入)&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size:20px&quot;&gt;sudo service sshd restart (SSH重啟)&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;span style=&quot;font-size:20px&quot;&gt;&lt;strong&gt;5. 新增使用者：&lt;/strong&gt;&lt;br/&gt;sudo useradd -m -s /bin/bash &lt;span style=&quot;color:#FF0000&quot;&gt;&lt;span style=&quot;background-color:#C0C0C0&quot;&gt;username&lt;/span&gt;&lt;/span&gt; (新增帳號)&lt;br/&gt;sudo passwd &lt;span style=&quot;color:#FF0000&quot;&gt;&lt;span style=&quot;background-color:#C0C0C0&quot;&gt;username&lt;/span&gt;&lt;/span&gt; (設定密碼)&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;span style=&quot;font-size:20px&quot;&gt;&lt;strong&gt;6. 設定管理者權限：&lt;/strong&gt;&lt;br/&gt;sudo &amp;nbsp;vi /etc/sudoers&lt;br/&gt;在&amp;quot;root ALL=(ALL:ALL) ALL&amp;quot;起下面添加：&lt;br/&gt;&lt;span style=&quot;color:#FF0000&quot;&gt;&lt;span style=&quot;background-color:#C0C0C0&quot;&gt;username&lt;/span&gt;&lt;/span&gt; ALL=(ALL:ALL) ALL (一定要一字不差的打對，不然會無法使用sudo)&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size:20px&quot;&gt;上述動作修改完成以後，按&lt;strong&gt;&lt;span style=&quot;color:#FF0000&quot;&gt; Esc &lt;/span&gt;&lt;/strong&gt;，再輸入 &lt;strong&gt;&lt;span style=&quot;color:#FF0000&quot;&gt;:wq!&lt;/span&gt;&lt;/strong&gt; (強制寫入&amp;amp;離開)，即完成設定 。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size:20px&quot;&gt;或是&lt;br/&gt;sudo vi /etc/group&lt;br/&gt;將要管理者權限的使用者帳號加入wheel群組&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size:20px&quot;&gt;wheel:x:10:&lt;span style=&quot;color:#FF0000&quot;&gt;&lt;span style=&quot;background-color:#C0C0C0&quot;&gt;username&lt;/span&gt;&lt;/span&gt; &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;span style=&quot;font-size:20px&quot;&gt;&lt;strong&gt;7. 測試：&lt;/strong&gt;&lt;br/&gt;使用新建立的帳號用putty連線，測試是否順利連線，並且可以重開機。&lt;br/&gt;sudo reboot&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size:20px&quot;&gt;&lt;strong&gt;8. 關機：&lt;/strong&gt;&lt;br/&gt;sudo shutdown -h now&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size:20px&quot;&gt;END&lt;/span&gt;&lt;/p&gt;</description><pubDate>Sun, 10 Dec 2017 09:23:29 +0800</pubDate></item><item><title>修正「安全通道支援發生錯誤 (an error occurred in the secure channel support)」</title><link>http://blog.hiastro.com.tw/webtechs/VB6-win2008-winhttp-ServerXMLHTTP</link><description>&lt;p&gt;
    最近的cloudflare.com改了https的認證為 TLS 1.2，造成 Windows Server 2008 R2 很多機器，因為預設值&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;Segoe UI&amp;quot;, &amp;quot;Segoe UI Web&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;BBAlpha Sans&amp;quot;, &amp;quot;S60 Sans&amp;quot;, Arial, sans-serif; font-size: 15px; background-color: rgb(255, 255, 255);&quot;&gt;DefaultSecureProtocols 並非TLS 1.2，VB6與 classic ASP的winhttp,ServerXMLHTTP 相繼無法正常運作，會有報錯：安全通道支援發生錯誤 (an error occurred in the secure channel support)。&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
    &lt;span style=&quot;font-family: &amp;quot;Segoe UI&amp;quot;, &amp;quot;Segoe UI Web&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;BBAlpha Sans&amp;quot;, &amp;quot;S60 Sans&amp;quot;, Arial, sans-serif; font-size: 15px; background-color: rgb(255, 255, 255);&quot;&gt;&lt;br/&gt;&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
    &lt;span style=&quot;font-family: &amp;quot;Segoe UI&amp;quot;, &amp;quot;Segoe UI Web&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;BBAlpha Sans&amp;quot;, &amp;quot;S60 Sans&amp;quot;, Arial, sans-serif; font-size: 15px; background-color: rgb(255, 255, 255);&quot;&gt;首先，得檢查目標網站的HTTPS所使用規格。使用此&lt;a href=&quot;https://www.ssllabs.com/ssltest/index.html&quot; target=&quot;_blank&quot; title=&quot;網站工具&quot;&gt;網站工具&lt;/a&gt;&amp;nbsp;，得知：&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
    &lt;span style=&quot;font-family: &amp;quot;Segoe UI&amp;quot;, &amp;quot;Segoe UI Web&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;BBAlpha Sans&amp;quot;, &amp;quot;S60 Sans&amp;quot;, Arial, sans-serif; font-size: 15px; background-color: rgb(255, 255, 255);&quot;&gt;&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
    &lt;img src=&quot;http://blog.hiastro.com.tw/zb_users/upload/2017/10/2017103076461313.png&quot;/&gt;
&lt;/p&gt;
&lt;p&gt;
    &lt;span style=&quot;font-family: &amp;quot;Segoe UI&amp;quot;, &amp;quot;Segoe UI Web&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;BBAlpha Sans&amp;quot;, &amp;quot;S60 Sans&amp;quot;, Arial, sans-serif; font-size: 15px; background-color: rgb(255, 255, 255);&quot;&gt;&lt;br/&gt;&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
    &lt;span style=&quot;font-family: &amp;quot;Segoe UI&amp;quot;, &amp;quot;Segoe UI Web&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;BBAlpha Sans&amp;quot;, &amp;quot;S60 Sans&amp;quot;, Arial, sans-serif; font-size: 15px; background-color: rgb(255, 255, 255);&quot;&gt;cloudflare.com採用 TLS 1.2，也就是本文所強調，Windows Server 2008 R2 預設值並非TLS 1.2，Microsoft 有提供簡單修正檔，&lt;a href=&quot;https://support.microsoft.com/en-us/help/3140245/update-to-enable-tls-1-1-and-tls-1-2-as-a-default-secure-protocols-in&quot; target=&quot;_blank&quot;&gt;https://support.microsoft.com/en-us/help/3140245/update-to-enable-tls-1-1-and-tls-1-2-as-a-default-secure-protocols-in&lt;/a&gt; &lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
    &lt;br/&gt;
&lt;/p&gt;
&lt;p&gt;
    修正之後，&lt;span style=&quot;font-family: &amp;quot;Segoe UI&amp;quot;, &amp;quot;Segoe UI Web&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;BBAlpha Sans&amp;quot;, &amp;quot;S60 Sans&amp;quot;, Arial, sans-serif; font-size: 15px; background-color: rgb(255, 255, 255);&quot;&gt;Windows Server 2008 R2機器上的VB6，Classic ASP又能正常使用&lt;span style=&quot;font-family: &amp;quot;Segoe UI&amp;quot;, &amp;quot;Segoe UI Web&amp;quot;, &amp;quot;Segoe UI Symbol&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, &amp;quot;BBAlpha Sans&amp;quot;, &amp;quot;S60 Sans&amp;quot;, Arial, sans-serif; font-size: 15px; background-color: rgb(255, 255, 255);&quot;&gt;winhttp, ServerXMLHTTP了。&lt;/span&gt;&lt;/span&gt;
&lt;/p&gt;</description><pubDate>Mon, 30 Oct 2017 20:47:52 +0800</pubDate></item><item><title>class ASP 包含 VB DLL 移植至 Windows Server 2008 R2 64位元系統</title><link>http://blog.hiastro.com.tw/webtechs/ASP-VB-DLL-Windows-Server-2008-R2</link><description>&lt;p&gt;傳統的ASP移植到WINDOWS SERVER 2008-2012 系統，網路上已經有很多文件說明。因為傳統ASP是32位元程式，在64位元系統，IIS 7 裡面的 appPool都要調整成允許32位元程式執行運作。ODBC 也得使用 SYSWOW64 裡面的 odbcad32.exe 進行設定。&lt;br/&gt;&lt;/p&gt;&lt;p&gt;不過，很少人提到以前的3-tier架構的ASP網站，都還有中間層 middle-tier，一般都是COM DLL，或稱COM元件。&lt;/p&gt;&lt;p&gt;以下就是我的例子，移植一個傳統ASP 3-tier 網站至Windows Server 2008 R2 64位元作業系統:&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;傳統ASP 3-tier 網站，原先架構於 Windows 2003 Server, IIS 6, COM DLL 為VB6撰寫，安裝在server 2003的「元件服務」上。&lt;/p&gt;&lt;p&gt;目的server為Windows Server 2008 R2 64位元&lt;/p&gt;&lt;p&gt;首先，ASP部分，本身物理路徑的讀寫權限，需搭配IUSER身份，或是自行指定IIS使用者，嚴格限制權限等等，就是一般的操作流程。我是建立新帳號，專門給這網站使用，給予該帳號讀寫該目錄及其以下所有目錄，檔案權限。等下也會用此新帳號，指定IIS 的APPPOOL 以及 COM DLL使用。此新帳號掛在IIS_Power Group 內統一指揮。&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://blog.hiastro.com.tw/zb_users/upload/2016/5/2016053161050241.jpg&quot; title=&quot;圖片&amp;nbsp;1.jpg&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;IIS 7 裡面，應用程式集區 appPool，新建一個 傳統，unmanaged&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://blog.hiastro.com.tw/zb_users/upload/2016/5/2016053161641457.png&quot; title=&quot;QQ截图20160531170554.png&quot;/&gt;&lt;/p&gt;&lt;p&gt;IIS 7 站台內，基本設定，相對應新的帳號與集區名稱為：&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://blog.hiastro.com.tw/zb_users/upload/2016/5/2016053161750441.png&quot; title=&quot;QQ截图20160531170831.png&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;匿名驗證認證，相對應新的帳號為：&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://blog.hiastro.com.tw/zb_users/upload/2016/5/2016053161824957.png&quot; title=&quot;QQ截图20160531170944.png&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;「元件服務」的內容為：&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://blog.hiastro.com.tw/zb_users/upload/2016/5/2016053162023785.png&quot; title=&quot;QQ截图20160531171312.png&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;「元件服務」的識別碼內容，使用新帳號，為：&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://blog.hiastro.com.tw/zb_users/upload/2016/5/2016053162156301.png&quot; title=&quot;QQ截图20160531171507.png&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;重點就在這裡，本來沒有這步驟，就造成ASP一直報錯--&amp;gt;伺服器物件 錯誤 &amp;#39;asp 0178 : 80070005&amp;#39; , &lt;br/&gt;&lt;/p&gt;&lt;p&gt;權限認證失敗，查到一篇&lt;a target=&quot;_blank&quot; href=&quot;http://stackoverflow.com/questions/15506912/server-createobject-failed-on-com-component-creation-from-classic-asp-on-iis?rq=1&quot;&gt;文章&lt;/a&gt;所提，跟著做設定，果然成功執行。這步驟卡了我半天。&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://blog.hiastro.com.tw/zb_users/upload/2016/5/2016053162340349.png&quot; title=&quot;QQ截图20160531171845.png&quot;/&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;ODBC 也要因應32，64位元系統的變換，而做調整。&lt;/p&gt;&lt;p&gt;請到 c:\Windows\SysWOW64 ，執行這支ODBC的32位元程式設定 &lt;br/&gt;&lt;/p&gt;&lt;p&gt;odbcad32.exe&lt;/p&gt;&lt;p&gt;&lt;img src=&quot;http://blog.hiastro.com.tw/zb_users/upload/2016/5/2016053162579225.png&quot; title=&quot;QQ截图20160531172241.png&quot;/&gt;&lt;/p&gt;&lt;p&gt;舊畫面，很熟悉。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;當然，林林總總地，還有很多細節不及詳載，在此作為一個簡單筆記，希望日後遇到問題的朋友也能順利移植。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Tue, 31 May 2016 16:32:38 +0800</pubDate></item><item><title>zblog插件開發文檔</title><link>http://blog.hiastro.com.tw/webtechs/zblog-plugin-pattern</link><description>&lt;p&gt;&amp;nbsp;插件開發文檔&lt;/p&gt;&lt;p&gt;1.說明&lt;/p&gt;&lt;p&gt;插件採用系統提供的各種接口，用來實現一些高級定制功能，讓Z-Blog變的更加強壯和有趣(Very Good,Very Strong.)。&lt;/p&gt;&lt;p&gt;2.目錄及命名要求&lt;/p&gt;&lt;p&gt;插件是放在系統的Plugin目錄下的，插件必須有自己的目錄名且不與其它插件同名。&lt;/p&gt;&lt;p&gt;插件目錄名即是插件的ID名稱，系統也以此做為識別。&lt;/p&gt;&lt;p&gt;插件必須設定正確的plugin.xml文件，系統依賴此文件對插件進行管理。&lt;/p&gt;&lt;p&gt;plugin.xml文件裡的&amp;amp;rdquo;&amp;lt;id&amp;gt;&amp;amp;ldquo;節點一定要設定為插件的ID名稱(即插件的目錄名稱)，這非常重要。&lt;/p&gt;&lt;p&gt;更多的提示與技巧 :&lt;/p&gt;&lt;p&gt;1.提示注意&lt;/p&gt;&lt;p&gt;在公共區（例如include.asp）定義常量、變量和函數名時，一定要加上插件ID做前綴，防止衝突。&lt;/p&gt;&lt;p&gt;插件管理頁面在頭部要CheckPluginState(&amp;amp;ldquo;插件ID名稱&amp;amp;rdquo;)來檢查插件是否已啟用，插件未啟用則一定要中止執行。&lt;/p&gt;&lt;p&gt;一定要注意安全問題，注意檢查用戶權限，如果對遊客開放的注意檢查提交的數據，以免被注入。&lt;/p&gt;&lt;p&gt;系統接口中有兩個接口是禁止使用的：Action_Plugin_System_Initialize和Action_Plugin_System_Initialize_WithOutDB，在系統初始化前運行插件，有可能接管整個系統。&lt;/p&gt;&lt;p&gt;插件優先等級的問題，優先被啟用的插件優先等級就高，可以第一時間處理所掛接口的數據，但是在同一接口處掛接的其它插件將會排隊繼續處理數據，這一點也要注意。&lt;/p&gt;&lt;p&gt;插件中函數的參數要設定好是ByRef還是ByVal，(ByVal是傳遞值 源數據不會被修改，你可以把這個值當作自己的局部變量來使用；ByRef是傳遞地址，源數據可能被修改，你對這個變量的操作將對你傳入的那個變量產生影響，就像指針的感覺。 )防止出現一些莫名其妙的干擾問題。&lt;/p&gt;&lt;p&gt;2.相關技巧&lt;/p&gt;&lt;p&gt;插件機制是公開和公用的，如果某個插件本身帶有屬於自己的接口申明及調用的話，別的插件同樣可以掛接到這個插件的接口上來。&lt;/p&gt;&lt;p&gt;主題中所帶的插件的優先等級為0級，最高且不可調整，只要使用該主題，其中的插件就自動被啟用。&lt;/p&gt;&lt;p&gt;接口是可以間接掛接的，打個比方，你可以在掛接一個Action接口時加入掛接另一個Filter接口的代碼，這樣會十分的靈活。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;3.plugin.xml格式規範說明&lt;/p&gt;&lt;p&gt;樣例文檔&lt;/p&gt;&lt;pre class=&quot;brush:xml;toolbar:false&quot;&gt;&amp;lt;?xml&amp;nbsp;version=&amp;quot;1.0&amp;quot;&amp;nbsp;encoding=&amp;quot;UTF-8&amp;quot;&amp;nbsp;standalone=&amp;quot;yes&amp;quot;?&amp;gt;
&amp;lt;plugin&amp;gt;
&amp;lt;id&amp;gt;BackupDB&amp;lt;/id&amp;gt;
&amp;lt;name&amp;gt;BackupDB&amp;lt;/name&amp;gt;
&amp;lt;note&amp;gt;Z-Blog的數據庫備份及升級程序&amp;lt;/note&amp;gt;
&amp;lt;type&amp;gt;inline&amp;lt;/type&amp;gt;
&amp;lt;path&amp;gt;main.asp&amp;lt;/path&amp;gt;
&amp;lt;include&amp;gt;include.asp&amp;lt;/include&amp;gt;
&amp;lt;level&amp;gt;1&amp;lt;/level&amp;gt;
&amp;lt;author&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;name&amp;gt;Sipo&amp;lt;/name&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;url&amp;gt;http://www.dc9.cn/&amp;lt;/url&amp;gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;email&amp;gt;&amp;lt;/email&amp;gt;
&amp;lt;/author&amp;gt;
&amp;lt;version&amp;gt;1.1&amp;lt;/version&amp;gt;
&amp;lt;modified&amp;gt;2007-12-26&amp;lt;/modified&amp;gt;
&amp;lt;/plugin&amp;gt;&lt;/pre&gt;&lt;p&gt;節點說明&lt;/p&gt;&lt;p&gt;plugin, 表示此文檔為插件信息.&lt;/p&gt;&lt;p&gt;id, 插件ID, 即存放該插件的目錄名.&lt;/p&gt;&lt;p&gt;name, 插件名稱, 中英文均可.&lt;/p&gt;&lt;p&gt;note, 插件簡介.&lt;/p&gt;&lt;p&gt;type, 無須接口調用的插件設置為outline,其它的設為inline.&lt;/p&gt;&lt;p&gt;path, 插件管理頁的名稱，無管理頁的插件可刪除此節點.&lt;/p&gt;&lt;p&gt;include, 插件接口掛接頁面,常規約定為include.asp,無須接口調用的插件可刪除此節點.&lt;/p&gt;&lt;p&gt;level, 插件要求管理權限,1為管理員,2為高級用戶,3為中級用戶,4為普通用戶,5為遊客.&lt;/p&gt;&lt;p&gt;author, 插件作者.&lt;/p&gt;&lt;p&gt;name, 作者名稱.&lt;/p&gt;&lt;p&gt;url, 作者網址.&lt;/p&gt;&lt;p&gt;email, 作者電郵.&lt;/p&gt;&lt;p&gt;version, 插件的版本號.&lt;/p&gt;&lt;p&gt;modified, 最後更新日期.&lt;/p&gt;&lt;p&gt;4.接口分類與調用&lt;/p&gt;&lt;p&gt;接口共分三大類，具體請看接口分類與API。Z-Blog的API共分為三大類，分別是&lt;/p&gt;&lt;p&gt;行為類接口：Action Api&lt;/p&gt;&lt;p&gt;過濾器接口：Filter Api&lt;/p&gt;&lt;p&gt;純輸出接口：Response Api&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;針對三大類的接口，系統提供了3種接口的掛接方式，分別是：&lt;/p&gt;&lt;p&gt;動作接口的調用過程&lt;/p&gt;&lt;p&gt;Call Add_Action_Plugin(&amp;quot;API名&amp;quot;,&amp;quot;要執行的代碼段&amp;quot;)過濾器接口的調用過程&lt;/p&gt;&lt;p&gt;Call Add_Filter_Plugin(&amp;quot;API名&amp;quot;,&amp;quot;要掛接的函數名&amp;quot;)純輸出接口的調用過程&lt;/p&gt;&lt;p&gt;Call Add_Response_Plugin(&amp;quot;API名&amp;quot;,&amp;quot;要輸入的字符串&amp;quot;)5.插件的註冊&lt;/p&gt;&lt;p&gt;Z-Blog系統的插件是採用主動插入方式來通知系統。所以必須在include.asp文件中調用RegisterPlugin函數才能讓插件進入系統的插件體系。&lt;/p&gt;&lt;p&gt;&amp;#39;註冊插件&lt;/p&gt;&lt;p&gt;Call RegisterPlugin(&amp;quot;插件ID名稱&amp;quot;,&amp;quot;ActivePlugin_插件ID名稱&amp;quot;)還必須在&amp;amp;rdquo;ActivePlugin_插件ID名稱&amp;amp;rdquo;函數中完成對接口的掛接工作，例如：&lt;/p&gt;&lt;p&gt;&amp;#39;具體的接口掛接&lt;/p&gt;&lt;pre class=&quot;brush:vb;toolbar:false&quot;&gt;Function&amp;nbsp;ActivePlugin_插件ID名稱()
&amp;nbsp;&amp;nbsp;Call&amp;nbsp;Add_Action_Plugin(&amp;quot;目標接口&amp;quot;,&amp;quot;具體執行代碼&amp;quot;)
End&amp;nbsp;Function&lt;/pre&gt;&lt;p&gt;6.插件的激活和禁用執行函數&lt;/p&gt;&lt;p&gt;系統設定每個插件可以提供兩個特殊的函數來執行激活和禁用過程中的一次性的任務。&lt;/p&gt;&lt;p&gt;如果你的插件有這種需求，請在include.asp裡使用這兩個函數，系統會在啟用和禁用這個插件時自動執行相應函數。&lt;/p&gt;&lt;pre class=&quot;brush:vb;toolbar:false&quot;&gt;Function&amp;nbsp;InstallPlugin_插件ID名稱()
&amp;#39;代碼
End&amp;nbsp;Function

Function&amp;nbsp;UninstallPlugin_插件ID名稱()
&amp;#39;代碼
End&amp;nbsp;Function&lt;/pre&gt;&lt;p&gt;7.主題裡的插件&lt;/p&gt;&lt;p&gt;主題可包含一個插件，這個插件的ID名稱就等於主題的ID名稱。&lt;/p&gt;&lt;p&gt;主題裡的插件文件必須直接放置在主題目錄下的Plugin目錄裡。&lt;/p&gt;&lt;p&gt;主題裡的插件無plugin.xml，其信息全部記錄在了主題的配置文件theme.xml文件的plugin節點裡。&lt;/p&gt;&lt;p&gt;theme.xml文件裡的plugin節點的配置方法與獨立插件的plugin.xml方法完全一致。&lt;/p&gt;&lt;p&gt;主題裡的插件的優先級最高且不可調整，只要啟用這個主題，插件自動激活，直到切換其它主題為止。&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Sat, 05 Dec 2015 17:59:10 +0800</pubDate></item></channel></rss><!--20.80 ms , 6 query , 1293kb memory , 0 error-->