2018年4月3日 星期二

Windows Server 2008 R2 建立新網站,出現 “HTTP 錯誤 500.21 - Internal Server Error”

最近要在新建的 Windows Server 2008 R2 上移轉舊的ASP .NET網站,該網站使用 .NET Framework 4.0,安裝前檢查系統內已安裝了Microsoft .NET Framework 4.7.1



該 Windows Server 2008 R2 是由VM環環中共用預設產出,所以並未安裝 IIS 7.5,於是先完成了 “網頁伺服器(IIS)” 角色的新增。



接著開啟 “Internet Information Services (IIS) 管理員”建立新網站,先查看目前狀況



建立新網站 Billing Report,並在應用程式集區中將 .NET Framework 改為 v4.0




看似完成了所有設定,但該網站確無法正常的被啟動,執行後出現以下錯誤

HTTP 錯誤 500.21 - Internal Server Error
處理常式 "PageHandlerFactory-Integrated" 的模組清單中有錯誤的模組 "ManagedPipelineHandler"



錯誤訊息中提到最有可能的原因第一點 “使用Managed處理常式,卻未安裝ASP.NET,或安裝不完整”,此案例真正問題原因是系統在啟用 IIS 之前安裝 .NET Framework 4,安裝的前後順序造成ASP.NET在 IIS 上無法正常運作。

此時需透過 ASP.NET IIS 註冊工具 (Aspnet_regiis.exe) 重新在網際網路資訊服務 (IIS) 註冊 ASP.NET 應用程式。透過ASP.NET IIS 註冊工具,重新在 IIS 註冊 .NET Framework4,並建立使用 .NET Framework 4 的應用程式集區。

需到.NET Framework4的對應路徑 C:\Windows\Microsoft.NET\Framework64\v4.0.30319 並執行 aspnet_regiis.exe -i



這個執行會重新安裝 ASP.NET 4,並更新現有的應用程式以使用應用程式集區的 ASP.NET 4 版本。也會在 IIS Metabase 中同時更新 IIS 傳統模式及 IIS 整合模式的處理常式與指令對應。

這個修正過後網站恢復正常了


2018年3月19日 星期一

Sysprep 執行時出現 “嘗試對電腦執行 sysprep 時發生嚴重錯誤”

使用 sysprep 工具來一般化映像檔時,sysprep 將刪除所有特定於系統的資訊並重置電腦。電腦在下次重新開機時,可以通過全新體驗 (OOBE) ,將計算機重新啟動到Windows歡迎模式。“歡迎使用Windows”使最終用戶能夠自定義其Windows操作系統,創建用戶帳戶,命名計算機和其他任務。

而 “一般化” 選項會刪除Windows安裝中的唯一的 安全性識別碼 security ID (SID),清除任何系統還原點,並刪除事件日誌;這個動件可使你在不同的電腦上重新使用該映像檔。下次啟動Windows映像時,將重新產生新的 security ID (SID)。



但是 sysprep 工具執行是有次數(3次)限制的,達到限制次數時,執行 sysprep 將會出現錯誤訊息:“嘗試對電腦執行 sysprep 時發生嚴重錯誤”



此時你可以執行以下三個動作

  1. 修改機碼
    • HKEY_LOCAL_MACHINE\SYSTEM\Setup\Status\SysprepStatus\
      將GeneralizationState 改為7


  2. 刪除 Log
    • 將 C:\Windows\System32\sysprep\Panther 目錄下的檔案刪除
    • 刪除前次執行產出的檔案
    • 將 C:\Windows\System32\sysprep\ 目錄下的Sysprep_succeeded.tag檔案刪除(如果有被留下來)


執行上述修改後再次重啟電腦,完成重啟後即可再次執行sysprep

2018年3月16日 星期五

iOS APP 調用App Store 評論與評分 方式

如果你的 iOS APP 需要使用者在APP 使用後,可在APP中幫你的APP執行 "評論與評分",你可以使用以下方法

方法一、(更新 僅試用iOS 10(含)以前的版本)

itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=appleID

如果你的 appleID 為 123456789,範例如下

itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=123456789

注意:
1. appleID 是iTunes Connect 當你提交 APP 時iTunes Connect 自動產生並指定給 App 的 ID,這個appleID是該APP在 apple的唯一的ID。
2. 這個方法在 iOS 11 會出現 “無法連接App Store” 的情形,原因是App Store於 iOS 11 改版了,但如果你使用的是 iOS 10(含)以前的版本,這個連結仍可使用

方法二、

iOS 11 如何調用APP Store 的 評論與評分

itms-apps://itunes.apple.com/cn/app/idappleID?mt=8&action=write-review

如果你的 appleID 為 123456789,範例如下

itms-apps://itunes.apple.com/cn/app/id123456789?mt=8&action=write-review