共用方式為


WebMatrix 1.0 發布讀我檔案

2011 年 1 月 13 日

目錄

注意

本讀我檔案適用於 WebMatrix 1.0 版本。

概觀

Microsoft WebMatrix 1.0 是一個免費的 Web 開發堆疊,只需幾分鐘即可安裝。 它將 Web 伺服器與程式庫和程式設計架構整合在一起,以建立單一的整合體驗。 您可以使用 WebMatrix 簡化編碼、測試和發布自己的 ASP.NET 或 PHP 網站的方式,也可以使用 WebMatrix 使用流行的開源應用程式 (如 DotNetNuke、Umbraco、WordPress 或 Joomla) 建立新網站。 WebMatrix 使用與在網際網路上執行您的網站相同的強大 Web 伺服器、程式庫引擎和架構環境,這使得從開發到生產的過渡順利、無縫。

安裝

若要安裝 WebMatrix 1.0,您必須先安裝 Microsoft Web Platform Installer 3.0。 安裝 Web 平台安裝程式後,您可以使用它來安裝 WebMatrix。

如果您在安裝過程中遇到問題,請參閱 Microsoft Web Platform Installer 問題疑難排解

如何發布應用程式

請參閱發布應用程式的逐步說明

變化和問題

WebMatrix 1.0 安裝問題

問題:WebMatrix 1.0 僅在支援 Microsoft .NET Framework 4 的平台上可用

WebMatrix 需要 .NET Framework 版本 4。 在某些情況下,WebMatrix 1.0 安裝程式將允許您嘗試在不屬於支援的設定集的平台上進行安裝。 特別是,沒有 SP1 更新的 Windows Vista 將允許您開始安裝 WebMatrix,但 .NET Framework 4 元件將失敗並阻止您的安裝。

因應措施
在支援的平台上安裝,其中包括:

  • Windows 7
  • Windows Server 2008
  • Windows Server 2008 R2
  • Windows Vista SP1 (含) 以後版本
  • Windows XP SP3
  • Windows Server 2003 SP2

問題:如果在未安裝 Microsoft Visual Studio 2008 SP1 的情況下安裝 Microsoft Visual Studio 2008,則無法安裝 WebMatrix 1.0

因應措施
從 Microsoft 下載中心安裝 Microsoft Visual Studio 2008 Service Pack 1

問題:GAC 中未安裝 SQL Server Compact 4.0 的某些元件

當您在 64 位元電腦上安裝 SQL Server Compact 4.0 且該電腦僅安裝了 .NET Framework 3.5 SP1 用戶端設定檔時,SQL Server Compact 4.0 的託管元件不會放置在全域元件快取 (GAC) 中。 未安裝在 GAC 中的託管元件有:

  • System.Data.SqlServerCe.dll (ADO.NET 提供者)
  • System.Data.SqlServerCe.Entity.dll (ADO.NET實體架構)

因應措施
卸載 SQL Server Compact 4.0。 從下列位置下載並安裝完整版本的 .NET Framework 3.5 SP1:

Microsoft .NET Framework 3.5 Service pack 1 (完整套件)

然後重新安裝 SQL Server Compact 4.0。

問題:無法使用命令列卸載 SQL Server Compact

在此版本中,無法使用命令列選項卸載 SQL Server Compact。

因應措施
使用 Windows 控制台中的程式和功能卸載 Microsoft SQL Server Compact 4.0。

ASP.NET Web Pages

本文件的本節介紹使用 Razor 語法的 ASP.NET 網頁 1.0 版本的新功能、變更和已知問題。

新功能

新增內容:新增組態設定以停用套件管理器

web.config 檔案中的<appSettings>元素有一個新asp:AdminManagerEnabled金鑰,它可以讓您完全停用套件管理器。 該元素的預設值為 true,這表示如果它未包含在 web.config 檔案中,則啟用套件管理器。 若要停用套件管理器,請將下列元素新增至網站根目錄下的 web.config 檔案:

<configuration>
  <appSettings>
    <add key="asp:AdminManagerEnabled" value="false"/>
  </appSettings>
</configuration>

變更

更改:「webPages:AdminFolderVirtualPath」金鑰重新命名為「asp:AdminFolderVirtualPath」

可以新增至 web.config 檔案以指定套件管理器位置的webPages:AdminFolderVirtualPath金鑰已重新命名為使用asp:命名空間而不是webPages命名空間。 如果您已使用此元素,則必須在設定檔中重新命名它。

已知問題

問題:會員用戶的密碼不再被識別

建立和儲存會員 (登入) 密碼的演算法已變更為更加安全。 因此,為在 ASP.NET Razor Beta 版本中建立的成員 (使用者) 儲存的密碼將無法被辨識。

解決方法如果網站尚未投入生產,請從會員資格程式庫中刪除使用者記錄。 如果程式庫處於活動狀態,則以程式設計方式重新產生成員資格程式庫中的現有密碼。

問題:使用自訂使用者表格作為會員資格時出現意外行為

若要初始化 ASP.NET Razor 網站的成員資格提供程序,請呼叫 WebSecurity.InitializeDatabaseConnection 方法。 (在 WebMatrix 中,入門網站範本在 _AppStart.cshtml 檔案中包含對此方法的呼叫。) 如果此方法的 autoCreateTables 參數設為 true (預設情況下,在入門網站範本中設為 true),並且如果將無法辨識的表名傳遞給該方法 (第二個參數),該方法不會拋出錯誤。 相反,它會自動建立資料表。

如果您打算使用自訂使用者表作為成員資格,但將錯誤的表名稱傳遞給 WebSecurity.InitializeDatabaseConnection 方法,這可能會出現問題。 由於預設情況下,如果您指定的表不存在,該方法不會引發錯誤,而是會建立一個新資料表,因此應用程式看起來似乎正在執行。 但是,依賴自訂使用者資料表 (及其中的欄位) 的應用程式程式碼最終可能會因意外錯誤而失敗。

因應措施
確保 InitializeDatabaseConnection 方法中傳遞的名稱與成員資格程式庫中的使用者設定檔表匹配,或確保 autoCreateTables 參數設定為 false。

問題:錯誤訊息「管理模組需要存取 ~/App_Data」

在某些情況下,嘗試建立使用者或以其他方式使用 ASP.NET 成員資格系統可能會導致頁面顯示錯誤管理模組需要存取 ~/App_Data。 如果執行 IIS 或 IIS Express 的帳戶沒有建立和寫入網站根目錄下的 App_Data 資料夾的權限,則會發生這種情況。

解決方法手動為網站建立 App_Data 資料夾。 然後確保應用程式執行所在的 Windows 帳戶 (通常是 NETWORK SERVICE) 具有應用程式根資料夾和子資料夾 (例如 App_Data) 的讀取/寫入權限。 更多詳細資訊請參閱 SQL Server Express 使用者執行個體問題和 ASP.net Web 應用程式專案。

問題:「無法產生 SQL Server 的使用者實例」錯誤

如果 WebMatrix Web 應用程式使用 SQL Server Express 並在 Windows 7 或 Windows Server 2008 R2 上執行 IIS 7.5,您可能會看到錯誤,指示 SQL Server 在執行時間無法擷取使用者的本機應用程式路徑。

解決方法確保執行應用程式的 Windows 帳戶 (通常是 NETWORK SERVICE) 具有應用程式根資料夾和子資料夾 (例如 App_Data) 的讀取/寫入權限。 更多詳細資訊請參閱 SQL Server Express 使用者執行個體問題和 ASP.net Web 應用程式專案。

問題:包含套件管理器資源或套件管理器密碼的檔案可在 IIS 6.0 及更早版本下使用

如果您部署使用 RC2 版本構建的 ASP.NET 網頁 (Razor) 應用程式,並且該應用程式在 /App_Data/admin 下包含 password.txtpackagesources.txt 文件,則 IIS 6.0 將根據請求提供該文件,可能會暴露您的套件管理器實例的密碼。

解決方法password.txtpackagesources.txt 檔案重新命名為 password.configpackagesources.config。預設情況下,IIS 6.0 不提供副檔名為 .config 的檔案。 (在 IIS 7 中,App_Data 資料夾中不提供任何文件,因此您無需重命名這些文件。)

問題:解除安裝使用 Beta 3 版本安裝的軟體套件不會完全移除軟體套件元件

如果您使用 Beta 3 版本中的套件管理器安裝了某個套件,然後嘗試使用目前版本卸載它,則該套件不會完全卸載。 使用套件管理器的卸載按鈕會刪除一些元件,但會保留套件的庫程式碼,並且不會更新 package.config 檔案。

因應措施
執行以下步驟:

  1. 刪除 App_Data\packages 資料夾。 這將刪除所有套件。
  2. 刪除網站根目錄下的 packages.config 檔案。

問題:在 Visual Studio 中,呼叫基於 Web 的套件管理器會使應用程式離線

如果您在Visual Studio (而不是WebMatrix) 中工作並使用 _admin 功能啟動套件管理器,Visual Studio 會使應用程式離線並將app_offline.htm 發佈到網站根目錄中,這會破壞您使用套件管理器的能力。

注意

儘管在使用基於 Web 的套件管理器介面時您通常會看到此行為,但如果您新增、刪除或修改 App_Data 資料夾中的任何文件,也會發生相同的行為。

因應措施
若要在 Visual Studio 中使用套件,請使用 NuGet 擴充功能而不是基於 Web 的套件管理器。 關於資訊,請參閱 NuGet 文件。 如果您正在使用 App_Data 資料夾中的其他文件,請考慮將文件保留在其他位置以避免此問題。 如果這不可行,請手動刪除 app_offline.htm 檔案或等待網站自動恢復線上 (預設情況下,30 秒後)。

問題:Visual Studio IntelliSense 和專案範本僅在 ASP.NET MVC 版本 3 中可用

安裝 ASP.NET 網頁不會同時安裝 Visual Studio 工具,例如 IntelliSense 和 ASP.NET 網頁應用程式的專案範本。

解決方法若要在 Visual Studio 中對 ASP.NET 網頁應用程式使用 IntelliSense 和專案模板,請透過 Web 平台安裝程式或獨立安裝程式安裝 ASP.NET MVC 3 RC。

問題:透過代理伺服器讀取提要或其他外部數據

如果執行網站的伺服器位於代理伺服器後面,您可能需要在 web.config 檔案中設定代理訊息,以便能夠讀取來自網站外部的資訊。 例如,如果您使用協助程式,則 ReCaptcha 協助程式會與 reCAPTCHA 服務進行通信,但可能會被您的代理伺服器封鎖。 同樣,ASP.NET 網頁中使用的提要 (例如套件管理器使用的提要) 可能需要代理程式設定。

如果您在使用外部服務或使用套件來源時遇到問題,請將下列元素放入應用程式的根 web.config 檔案中:

<system.net>
  <defaultProxy>
    <proxy autoDetect="False" 
       proxyaddress="[proxy URL]"/>
  </defaultProxy>
</system.net>

有關設定<代理伺服器>的詳細資訊,請參閱 MSDN 網站上的代理元素 (網路設定)

問題:解除安裝 .NET Framework 版本 4 會停用具有 Razor 語法的 ASP.NET 網頁

如果解除安裝 .NET Framework 版本 4 然後重新安裝,則使用 Razor 語法的 ASP.NET 網頁將會被停用。 擴展名為 .cshtml 的頁面無法正常運作。 ASP.NET 網頁在電腦根 web.config 檔案中註冊程式集,刪除 .NET Framework 也會刪除該檔案。 重新安裝 .NET Framework 將安裝新版本的設定文件,但不會新增對 ASP.NET 網頁元件的參考。

解決方法重新安裝 .NET Framework 後,使用 Razor 語法重新安裝 ASP.NET 網頁。 這會將以下元素新增至電腦根目錄中的 web.config 檔案中,該檔案通常位於下列位置:

C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config (32-bit)
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config (64-bit)

<compilation>
  <assemblies>
    <add assembly="System.Web.WebPages.Configuration, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />

    <-- Additional assemblies here. -->

  </assemblies>
</compilation>

問題:無副檔名 URL 在 IIS 7 或 IIS 7.5 上找不到 .cshtml/.vbhtml 文件

在 IIS 7 或 IIS 7.5 上,具有以下 URL 的請求無法找到具有 .cshtml.vbhtml 副檔名的頁面:

http://www.example.com/ExampleSite/ExampleFile

出現此問題的原因是 IIS 7 或 IIS 7.5 預設未啟用 URL 重寫。 最可能的情況是,您在使用 IIS Express 進行本地測試時沒有發現問題,但在將網站部署到託管網站時卻遇到了問題。

因應措施

問題:將應用程式部署到未安裝 SQL Server Compact 的電腦

包含 SQL Server Compact 程式庫的應用程式可以在未安裝 SQL Server Compact 的電腦上執行。 Microsoft WebMatrix 1.0 會自動為您複製這些二進位檔案並執行適當的 web.config 檔案轉換。

解決方法如果您需要複製這些文件並手動更改 web.config 檔案,請執行以下操作:

  1. 將程式庫引擎元件複製到目標電腦上應用程式的 Bin 資料夾 (和子資料夾):

    • 複製 C:\Program Files\Microsoft SQL Server Edition\v4.0\Desktop\System.Data.SqlServerCe.dll
      \Bin
    • 複製 C:\Program Files\Microsoft SQL Server Compact Edition\v4.0\Private\x86\ \Bin\x86
    • C:\Program Files\Microsoft SQL Server Compact Edition\v4.0\Private\amd64\* 複製到 \Bin\amd64
  2. 在網站的根資料夾中,建立或開啟 web.config 檔案。 (在 WebMatrix 1.0 中,如果按一下選擇檔案類型對話方塊中的全部,則此檔案類型可用。)

  3. 加入以下元素作為 <configuration> 元素的子元素 (不在 <system.web> 元素內部):

    <system.data>
      <DbProviderFactories>
        <remove invariant="System.Data.SqlServerCe.4.0"></remove>
        <add name="Microsoft SQL Server Compact Data Provider" 
          invariant="System.Data.SqlServerCe.4.0" 
          Description=".NET Framework Data Provider for Microsoft SQL Server Compact" 
          type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/>
      </DbProviderFactories>
    </system.data>
    

問題:「程式庫」和「WebGrid」協助程式在 Visual Basic 的「中等信任」中不起作用

如果您使用 Visual Basic (建立 .vbhtml 檔案),並且應用程式設定為使用中等信任,則 DatabaseWebGrid 協助程式將無法運作。

因應措施
如果您使用 Visual Studio 2010,則可以透過安裝 Service Pack 1 版本來解決此問題。 在 SP1 的最終版本發布之前,您可以從 Microsoft 下載中心的 Microsoft Visual Studio 2010 Service Pack 1 頁面下載 SP1 的測試版。

如果這不切實際,或者您不使用 Visual Studio 2010,則可以將應用程式暫時設定為使用完全信任。

問題:「ApplicationPart」資源可從外部存取

如果元件包含從 ApplicationPart 類別派生的對象,則該元件的資源將由 ResourceRouteHandler 類別公開。 例如,請考慮下列 URL:

~/r.ashx/System.Web.WebPages.Administration/Resources/AdminResources.resources

此要求下載 System.Web.WebPages.Administration.dll 程式集中的所有資源字串。 所有嵌入資源 (甚至那些不打算用作靜態內容的資源) 都會被下載。 如果嵌入的資源包含敏感資訊,則可能存在安全風險。

因應措施
如果建立 ApplicationPart 對象,請確保與該 ApplicationPart 物件的元件關聯的嵌入資源不包含敏感資訊。

WebMatrix

注意

有關 WebMatrix 安裝問題的資訊,請參閱本文件前面的 WebMatrix 安裝問題。

本文件的這一部分描述了 WebMatrix 開發環境的已知問題。

問題:web.config 檔案中資料庫連結字串的使用者名稱或密碼的變更未反映在程式庫工作區中

因應措施

  1. web.config 檔案中,變更連接字串中的程式庫名稱 (例如,新增「1」)。
  2. 儲存 web.config 檔案。
  3. 點擊程式庫並重新整理。
  4. web.config 檔案中連接字串中的程式庫名稱變更回原始程式庫名稱。
  5. 儲存 web.config 檔案。
  6. 點擊程式庫並重新整理。

問題:無法刪除 WebMatrix 建立的資料夾

如果 WebMatrix 使用提升的權限執行 (您使用 Windows 中的「以管理員身分執行」選項啟動 WebMatrix),則無法使用 Windows 資源管理器刪除由 WebMatrix 建立的資料夾。

因應措施
使用提升的權限來執行 Windows 資源管理器。 執行下列步驟:

  1. 在 Windows 中,按一下開始
  2. 輸入「Windows Explorer」並右鍵點選 Windows Explorer 項目。
  3. 按一下以管理員身份執行。 然後您可以刪除這些資料夾。

問題:WebMatrix 1.0 無法執行某些需要提升的任務

WebMatrix 1.0 無法執行某些需要提升的任務,例如在下列情況下安裝附加元件:

  • 在 Windows Vista 或 Windows 7 上,您使用沒有管理權限的帳戶登入,且使用者帳戶控制 (UAC) 已停用。
  • 您使用的是 Microsoft Windows XP 或 Microsoft Windows Server 2003。

因應措施
WebMatrix 1.0 中的大多數任務不需要管理權限。 對於這樣做的用戶,您可以以管理員身份執行操作,或按照以下步驟操作:

  • 在 Windows Vista 或 Windows 7 上,啟用 UAC。
  • 在 Windows XP 上,將使用者新增至管理員安全性群組。

如果未安裝 Web Platform Installer 3.0,則Web Gallery 網站選項將會停用。

因應措施
安裝 Microsoft Web 平台安裝程式 3.0

問題:Google Chrome 無法作為執行選項使用

Google Chrome 不會顯示在首頁標籤上執行下的瀏覽器清單中。

因應措施
某些版本的 Google Chrome 無法使用 Windows 中的預設程式功能正確註冊自身。 解決方法是啟動 Google Chrome,點擊自訂和控制 Google Chrome選單,按一下選項,然後按一下將 Google Chrome 設定為預設瀏覽器

問題:「外鍵」對話框不允許輸入主鍵

外鍵對話方塊不允許您輸入主鍵表中的主鍵名稱。

因應措施
這是刻意設計的。 您不需要輸入主鍵表中的主鍵名稱。

問題:WebMatrix 中的 IntelliSense 對於 Razor 語法、C# 或 Visual Basic 不可用

HTML 和 CSS 的 WebMatrix 支援 IntelliSense。 但是這不適用於其他語言。

因應措施
無。

問題:HTML 和 CSS 的 IntelliSense 建議的元素與上下文不合適

WebMatrix 中標記的 IntelliSense 支援使用 XHTML 1.0 Transitional schema 的 HTML 和使用 CSS 2.1 schema 的 CSS。 由於 IntelliSense 是基於這些特定架構,因此可能會建議不適合目前頁面或樣式定義的某些標記、屬性或屬性。 對於 HTML,它也可能導致內容中出現意外建議,這些建議可能被解釋為格式錯誤的 XHTML (例如,當標籤未關閉時)。 如果插入點位於不完整的標籤內,此問題可能會更加明顯;在這種情況下,IntelliSense 可能會建議新的開始標籤或提供其他不正確的建議。

因應措施
對於 HTML,請確保您在格式良好、完整的 XHTML 頁面中執行。 對於 CSS,沒有解決方法。

問題:輸入時不會呼叫 IntelliSense

有時,當在編輯器中輸入 HTML 或 CSS 時,可能不會呼叫 IntelliSense。 特別是,當插入點緊鄰另一個元素或位於文件末尾時,可能會發生這種情況。

因應措施
確保插入點周圍有空格,且插入點不在檔案末端。 您也可以按 Ctrl+Space 手動呼叫 IntelliSense。

問題:沒有可用於停用 IntelliSense 的 UI

WebMatrix 1.0 不提供用於停用 IntelliSense 的 UI 或手勢。

因應措施
使用以下命令啟動 WebMatrix,其中包括停用 IntelliSense 的開關:

WebMatrix.exe #ExecuteCommand# EditorIntelliSense off

IIS Express

IIS Express 有自己的讀我檔案,可從以下 URL 取得:

https://go.microsoft.com/fwlink/?LinkID=207675&clcid=0x409

SQL Server Compact

SQL Server Compact 有自己的讀我檔案,可從下列 URL 取得該文件:

https://go.microsoft.com/fwlink/?LinkID=208545

有關涉及將 SQL Server Compact 安裝為 WebMatrix 一部分的問題的資訊,請參閱本文件前面的 WebMatrix 安裝問題

安裝應用程式

問題:如果使用者的我的文件資料夾重定向到網路共享,安裝應用程式可能需要很長時間

因應措施
無。 該應用程式可能需要一段時間才能安裝,但會正確安裝。

發布應用程式

問題:發布 SQL Compact 程式庫時出現「無法取得所需權限」錯誤

WebMatrix 不完全支援將 SQL Server Compact 的支援二進位檔案部署到執行具有中等信任設定的 .NET Framework 版本 3.5 的伺服器。

因應措施
首選的解決方法是在伺服器上安裝 .NET Framework 4。 或者,執行以下操作:

  1. 將下列元素新增至 Web_MediumTrust.config 檔案中的 SecurityClasses 部分:

    <SecurityClass Name="ReflectionPermission" 
      Description="System.Security.Permissions.ReflectionPermission, mscorlib, 
        Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>	
        
    <SecurityClass Name="RegistryPermission" 
      Description="System.Security.Permissions.RegistryPermission, mscorlib, 
      Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
    
  2. Web_MediumTrust.config 檔案中建立具有下列所需權限的新權限集:

    <PermissionSet class="NamedPermission" version="1" Name="SqlCe_Trust">
      <IPermission class="SecurityPermission" version="1" Flags="UnmanagedCode,SkipVerification"/>
      <IPermission class="EnvironmentPermission" version="1" Read="PROCESSOR_ARCHITECTURE"/>
      <IPermission class="RegistryPermission" version="1" Read="HKEY_LOCAL_MACHINE\" />
    </PermissionSet>
    
  3. 透過將下列元素放入應用程式權限 Web_MediumTrust.config 檔案中,將權限集套用到 SQL Server Compact:

    <CodeGroup class="UnionCodeGroup" version="1" PermissionSetName="ASP.Net">
      <IMembershipCondition class="UrlMembershipCondition" version="1" Url="$AppDirUrl$/*"/> 
      <CodeGroup class="UnionCodeGroup" 
          version="1" 
          PermissionSetName="SqlCe_Trust" 
          Name="SqlCe_Strong_Name" 
          Description="This code group grants code signed with the SQLCE strong name SqlCe_Trust. ">
        <IMembershipCondition class="StrongNameMembershipCondition" 
          version="1" 
          PublicKeyBlob="0024000004800000940000000602000000240000525341310004000001000100272736ad6e5f9586bac2d531eabc3acc666c2f8ec879fa94f8f7b0327d2ff2ed523448f83c3d5c5dd2dfc7bc99c5286b2c125117bf5cbe242b9d41750732b2bdffe649c6efb8e5526d526fdd130095ecdb7bf210809c6cdad8824faa9ac0310ac3cba2aa0523567b2dfa7fe250b30facbd62d4ec99b94ac47c7d3b28f1f6e4c8" Name="System.Data.SqlServerCe" />
      </CodeGroup> 
    </CodeGroup>
    

在某些情況下,發布應用程式會導致「服務不可用」錯誤。

因應措施
在 WebMatrix 中,在發佈設定視窗中的伺服器名稱末端新增反斜線 (),然後再次發布應用程式。

發布 Moodle 應用程式後,該應用程式無法正常運作。

因應措施
在 WebMatrix 中,在發佈設定視窗中的網站名稱欄位末端新增斜線 (/),然後再次發布應用程式。

問題:發布 nopCommerce 失敗並出現程式庫錯誤

發布 nopCommerce 失敗並報告程式庫錯誤,例如「插入 nop_log 表失敗」。

因應措施

  1. 在 WebMatrix 中,按一下執行以在本機啟動 nopCommerce。
  2. 登入管理頁面。
  3. 點選系統選單。
  4. 按一下記錄選項。
  5. 點選清除記錄按鈕。
  6. 再次發布 nopCommerce。

問題:當您下載已發佈的網站時,Silverstripe CMS 顯示「HTTP 500 PHP FCGI 錯誤」

因應措施
點選下載已發佈的網站後,跳過silverstripe-cache/manifest_main發布預覽。 該檔案用於快取目的並且特定於每台電腦。

問題:當您下載已發佈的網站時,Subtext 顯示「‘/’應用程式中的伺服器錯誤」

因應措施
開啟網站的 web.config 文件,並將資料庫連結字串中的使用者 ID 和密碼替換為 SQL Server 管理員憑證 (「sa」憑證)。

或者,請按照以下步驟為您登入的使用者帳戶授予 db_owner 權限:

  1. 使用 Web 平台安裝程式安裝 SQL Server Management Studio。
  2. 連線到本機 SQL Server Express 執行個體 (預設為 .\SQLEXPRESS)。
  3. 按一下程式庫>[localSubtextDatabase]>安全性>使用者>[localSubtextUser] (預設是subtextuser],右鍵按一下,然後按一下屬性
  4. 在角色成員資格部分中選擇 db_owner

問題:如果「目標 URL」欄位沒有以 http:// 或 https:// 為前綴,則網站在發布後可能無法運作

發佈設定對話方塊中,如果目標 URL 不以 http://https:// 開頭,則網站部署後可能無法運作。

因應措施
確保在發佈網站之前,發佈設定對話方塊中的目標 URL 以 http://https:// 開頭。

問題:發布 MySQL 程式庫失敗,並顯示錯誤「無法發布程式庫。 如果遠端程式庫無法執行該程式碼,就會發生這種情況。」

發生該錯誤的原因有很多。 您看到此錯誤的原因之一是程式庫程式碼包含單引號字元 (') 並且目標 MySQL 程式庫的預設字元集不是 UTF-8。

因應措施
將遠端 MySQL 程式庫的預設字元集設定為 UTF-8。

如果您發布或下載 DotNetNuke 站點,您可能需要清除快取才能使新連結顯示在站點上。

因應措施

  1. 以「主持人」登入。
  2. 前往主機選單並選擇主機設定
  3. 向下捲動並在進階設定下展開效能設定
  4. 點擊頁面的清除快取連結。
  5. 轉到頁面底部並重新啟動應用程式。

因應措施
service.config 檔案、users.config 檔案和所有 .xml 檔案中,將 URL 字串 (例如 http://myhost.com/atomsite) 替換為本機字串 (例如 http://localhost:1239)。

問題:WordPress 等基於 MySQL 的應用程式無法發布並報告程式庫錯誤

預設情況下,WebMatrix 使用 UTF-8 字元集安裝 MySQL。 如果您自行安裝MySQL,且字元集不是UTF-8 (例如Latin1),則程式庫的發佈程序可能會失敗。

因應措施

  1. 將 MySQL 的字元集變更為 UTF-8。 (詳細資訊請參閱 MySQL 網站上的伺服器字元集和校對規則。)
  2. 重新安裝應用程式。
  3. 重新發布應用程式。

問題:對於具有基於瀏覽器的設定的應用程式,「下載已發布的網站」失敗

某些應用程式 (例如 Kentico CMS) 要求您在瀏覽器中啟動它們才能執行安裝後設置,例如建立程式庫。 如果您在未完成基於瀏覽器的設定的情況下發布此類應用程式,則嘗試從遠端伺服器下載相同網站將會失敗。

因應措施
在發布網站之前完成基於瀏覽器的設定。

問題:DotNetNuke 和 Kooboo CMS 的「下載已發佈網站」失敗並出現程式庫錯誤

如果您嘗試從伺服器下載應用程式,並且您在發佈設定對話框的資料庫連結字串中擁有管理員憑證,則可能會在發布日誌中看到以下錯誤:

1:28:29 PM: An error occurred during execution of the database script. The approximate location of the error was between lines '3260' and '3262' of the script. The verbose log may have more information about the error. The command started with:

1:28:29 PM: CREATE LOGIN [MACHINE\Administrator] FROM WINDOW

1:28:29 PM: https://go.microsoft.com/fwlink/?LinkId=178587.

因應措施
如果可行,請使用程式庫的非管理員憑證重新發布網站 (或將其發布)。

詳細資訊

有關 WebMatrix 1.0 的更多資訊,請參閱以下網站: