2016-07-05 75 views
9

我已經在本地Windows 2012服務器上設置了一個新站點的Web部署。VS.NET 2015 ENT Web部署ASP.NET Core 1錯誤ERROR_USER_UNAUTHORIZED?

我已經在IIS服務器級別和站點級別通過IIS管理器權限爲管理員設置了權限。

我已經爲MySiteApp創建了一個應用程序池和一個虛擬目錄。

我的Web部署在VS.NET 2015年發佈設置:

Server: 192.168.45.60 Site name: TestSite/MySiteApp User name: TESTSERVER\Administrator

上發佈配置通OK驗證連接。

新增真到.pubxml

當試圖發佈到服務器我收到的錯誤:

Error Error: The remote server returned an error: (401) Unauthorized. Error Code: ERROR_USER_UNAUTHORIZED

在Windows Server 2012中的事件查看器,我可以看到這個錯誤:

IISWMSVC_LOGIN_UNKNOWN_ERROR

檢索登錄信息時發生意外錯誤。

Exception:System.Runtime.InteropServices.COMException (0x8007000D): Invalid site name

at Microsoft.Web.Administration.Interop.IAppHostProperty.set_Value(Object value) at Microsoft.Web.Administration.ConfigurationElementCollectionBase`1.FindElementWithCollectionKey(String elementName, String collectionKey, Object value) at Microsoft.Web.Administration.SiteCollection.get_Item(String name) at Microsoft.Web.Management.Server.ApplicationManagementUnit.EnsureDefinition() at Microsoft.Web.Management.Server.ApplicationManagementUnit..ctor(IManagementContext context, String siteName, String applicationPath) at Microsoft.Web.Management.Server.WebManagementHttpModule.CreateManagementUnit(HttpRequest request) at Microsoft.Web.Management.Server.WebManagementHttpModule.OnApplicationPostAuthorizeRequest(Object sender, EventArgs e)

Process:WMSvc User=TESTSERVER\Administrator

如果我在.pubxml變化如下:

<MSDeployPublishMethod>WMSVC</MSDeployPublishMethod>

<MSDeployPublishMethod>RemoteAgent</MSDeployPublishMethod> 

,並添加<AuthType>NTLM</AuthType>

然後我可以沒有任何問題進行發佈。

我想我沒有正確設置WMSVC發佈的東西。

感謝您的任何幫助。

Asaf

+0

我有同樣的確切問題。你有沒有得到答案,爲什麼用WMSVC發佈不起作用? –

回答

1

我發現.NET核心的Powershell腳本搞亂了站點的URL。它將發佈網站附加到服務器URL上,但也將其包括在其生成的destinationmanifest.xml文件中,因此實際上它試圖發佈例如到「my_server」上的「my_site/my_app」爲「https://my_server:8172/msdeploy.axd?site=my_site/my_site/my_app」。

我通讀了新的publish-module.psm1腳本,發現發佈配置文件有一個屬性,可以防止發生這種重複。

<UseMSDeployServiceURLAsIs>True</UseMSDeployServiceURLAsIs> 

其他報告說,他們必須包括以下內容,但我沒有(儘管我們的服務器確實有一個簽名證書WMSVC,因人而異):

<AllowUntrustedCertificate>True</AllowUntrustedCertificate> 
    <AuthType>NTLM</AuthType> 

最終我(沖洗)。 pubxml文件看起來像:

<?xml version="1.0" encoding="utf-8"?> 
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <PropertyGroup> 
    <WebPublishMethod>MSDeploy</WebPublishMethod> 
    <ADUsesOwinOrOpenIdConnect>False</ADUsesOwinOrOpenIdConnect> 
    <LastUsedBuildConfiguration>Debug</LastUsedBuildConfiguration> 
    <LastUsedPlatform>Any CPU</LastUsedPlatform> 
    <SiteUrlToLaunchAfterPublish /> 
    <LaunchSiteAfterPublish>True</LaunchSiteAfterPublish> 
    <ExcludeApp_Data>False</ExcludeApp_Data> 
    <PublishFramework>netcoreapp1.1</PublishFramework> 
    <UsePowerShell>True</UsePowerShell> 
    <EnableMSDeployAppOffline>True</EnableMSDeployAppOffline> 
    <MSDeployServiceURL>https://MYSERVER:8172/msdeploy.axd</MSDeployServiceURL> 
    <DeployIisAppPath>MYSITE/MYAPP</DeployIisAppPath> 
    <RemoteSitePhysicalPath /> 
    <SkipExtraFilesOnServer>True</SkipExtraFilesOnServer> 
    <MSDeployPublishMethod>WMSVC</MSDeployPublishMethod> 
    <EnableMSDeployBackup>True</EnableMSDeployBackup> 
    <UserName>mydomain\myusername</UserName> 
    <_SavePWD>False</_SavePWD> 
    <UseMSDeployServiceURLAsIs>True</UseMSDeployServiceURLAsIs> 
    </PropertyGroup> 
</Project> 
+0

謝謝。這幫助了我很多。 –