Codici di errore di Distribuzione Web
Si applica a: Internet Information Services 7.0, Internet Information Services 7.5, Internet Information Services 8.0
Per alcuni casi di errore comuni, Distribuzione Web visualizza i messaggi di errore. In questo articolo viene illustrato il motivo per cui viene visualizzato il messaggio di errore e vengono illustrati i passaggi per evitare gli errori. Il messaggio di errore può essere diverso a seconda della modalità di avvio della distribuzione Web. Ad esempio, Microsoft WebMatrix sceglie di visualizzare messaggi di errore personalizzati. I messaggi di errore elencati nelle sezioni successive sono visualizzati nella riga di comando e nell'API msdeploy.exe :
Diagnosi
Distribuzione Web potrebbe non trovare l'eseguibile mysqldump.exe . Questo eseguibile è necessario per le distribuzioni di database MySQL.
Risoluzione
È possibile provare una delle soluzioni alternative seguenti:
- Posizionare l'eseguibile in
C:\Program Files\MySQL\MySQL Server\bin
. - Impostare una
REG_SZ
chiave del Registro di sistema in modo che punti all'eseguibile. Ad esempio, impostare suHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\IIS Extensions\MSDeploy\<version>\MySqlDumpPath
c:\mysqldump\mysqldump.exe
Diagnosi
Impossibile trovare l'applicazione remota. Questo errore può verificarsi se si tenta di eseguire un dump di "remotesite/remoteapp" in cui "remoteapp" non esiste effettivamente.
Risoluzione
Specificare un nome di applicazione remota effettivamente esistente.
Diagnosi
Questo errore può verificarsi se si tenta di eseguire un'operazione SetAcl
in un file o in una cartella che non esiste.
Risoluzione
Specificare un file o una cartella esistente.
Diagnosi
Il nome del computer non è tipizzato in modo non digitato o il computer non è raggiungibile.The computer name is mistyped, or the computer is't reachable.
Risoluzione
Provare a verificare se il nome del computer è valido. Provare a effettuare il ping del computer manualmente.
Diagnosi
Il servizio di gestione Web o l'agente remoto non è installato o non raggiungibile nel computer remoto.
Risoluzione
Verificare che il servizio agente remoto o il servizio di gestione Web sia avviato nel computer remoto, a seconda di quello a cui ci si connette. È possibile eseguire net start wmsvc
e net start msdepsvc
nel computer remoto per assicurarsi che questi servizi siano avviati. Assicurarsi inoltre che un firewall non interrompa le comunicazioni con la destinazione.
Diagnosi
Questo codice di errore può essere visualizzato a causa di vari motivi. In genere indica un problema di autenticazione o autorizzazione e può verificarsi a causa di uno dei motivi seguenti:
- L'utente non esiste.
- L'utente non ha accesso a Gestione IIS al sito se ci si connette tramite il servizio di gestione Web.
- Il sito non esiste.
- La password non è corretta.
Risoluzione
Per connettersi tramite il servizio di gestione Web, seguire questa procedura:
- Verificare che il nome utente e la password siano corretti.
- Verificare che il sito esista.
- Verificare di disporre delle autorizzazioni di Gestione IIS per l'ambito del sito.
Per connettersi tramite il servizio Agente remoto, seguire questa procedura:
Verificare che il nome utente e la password siano corretti.
Verificare che l'account utente specificato sia membro del gruppo Administrators nel computer remoto.
Nota
Se non si usa l'amministratore predefinito, creare un nuovo gruppo denominato "MSDepSvcUsers" e aggiungere il nuovo amministratore a tale gruppo.
Verificare che il sito esista.
Diagnosi
Il codice ERROR_USER_NOT_ADMIN viene visualizzato se si tenta di connettersi al servizio Agente remoto ma non sono state specificate le credenziali di amministratore appropriate.
Risoluzione
Il servizio Agente remoto accetta le credenziali di amministratore predefinito o amministratore di dominio. Se si dispone di una configurazione non di dominio e si vuole usare un account diverso dall'amministratore predefinito, seguire questa procedura:
- Creare un gruppo
MSDepSvcUsers
di utenti separato nel computer remoto. - Creare un account
A
locale sia nel computer locale che nel computer remoto. - Aggiungi
A
aMSDepSvcUsers
nel computer remoto. - Usare l'account
A
per la pubblicazione, che consente di pubblicare senza la necessità di un account amministratore predefinito.
Diagnosi
Il certificato presentato dall'endpoint distribuzione Web non è attendibile o non valido. Ciò si verifica in genere se il server remoto dispone di un certificato autofirmato per il servizio agente remoto o il servizio di gestione Web.
Risoluzione
Installare un certificato attendibile nell'endpoint o provare a ignorare la convalida del certificato.
Dalla riga di comando msdeploy.exe passare il
-allowUntrusted
flag .Nell'interfaccia utente di pubblicazione di Visual Studio selezionare
Allow Untrusted
.Da un pacchetto di distribuzione di Visual Studio (ad esempio, MyApp.deploy.cmd), passare il
-allowUntrusted
flag.Aggiungere
<AllowUntrustedCertificate>true</AllowUntrustedCertificate>
al file pubxml:<PropertyGroup> <AllowUntrustedCertificate>true</AllowUntrustedCertificate> </PropertyGroup>
Diagnosi
Un gateway proxy impedisce alla distribuzione Web di comunicare con l'endpoint di distribuzione Web remota.
Risoluzione
Distribuzione Web non legge le impostazioni proxy di sistema. Come soluzione alternativa, provare a disabilitare il proxy di sistema seguendo questa procedura:
- Avviare Internet Explorer.
- Selezionare Strumenti>Opzioni.
- Selezionare Connessione.
- Selezionare IMPOSTAZIONI LAN.
- Disabilitare tutte le caselle di controllo.
Diagnosi
Il sito IIS specificato non esiste.
Risoluzione
Verificare che il sito specificato esista effettivamente. In alcuni casi, è possibile che venga visualizzato questo errore se è stato specificato /
anziché nell'URL del \
sito. Provare a passare /
a \
.
Diagnosi
L'applicazione specificata non esiste in IIS.
Risoluzione
Controllare Gestione IIS per assicurarsi di aver specificato correttamente il nome del percorso dell'applicazione.
ERROR_USER_NOT_AUTHORIZED_FOR_DBFULLSQL,
ERROR_USER_NOT_AUTHORIZED_FOR_DBMYSQL,
ERROR_USER_NOT_AUTHORIZED_FOR_SETACL,
ERROR_USER_NOT_AUTHORIZED_FOR_APPPOOLNETFX,
ERROR_USER_NOT_AUTHORIZED_FOR_APPPOOLPIPELINE,
ERROR_USER_NOT_AUTHORIZED_FOR_RECYCLEAPP,
ERROR_USER_NOT_AUTHORIZED_FOR_CREATEAPP,
ERROR_USER_NOT_AUTHORIZED_FOR_CONTENTPATH
Il gruppo di errori elencati condivide la diagnosi, la risoluzione e la soluzione alternativa seguenti:
Diagnosi
Un utente non amministrativo ha tentato di eseguire un'operazione con un provider di distribuzione Web per cui l'utente non è attualmente autorizzato.
Risoluzione
L'installazione di Distribuzione Web, per impostazione predefinita, crea regole di delega del servizio di gestione, che consentono agli utenti non amministratori di eseguire operazioni con questo provider. Verificare che la regola di delega necessaria per questo provider sia stata configurata correttamente.
Soluzione
Da Programmi> Pannello di controllo eseguire Repair on Web Deploy. In alternativa, creare manualmente la regola di delega.
Diagnosi
Un utente non amministrativo ha tentato di eseguire un'operazione con un provider di distribuzione Web per cui l'utente non è attualmente autorizzato. Questo codice di errore viene visualizzato se si tenta di eseguire un'operazione con un provider per il quale l'installazione di Distribuzione Web non crea una regola di delega.
Risoluzione
L'installazione di Distribuzione Web non crea una regola di delega per questo provider. Creare manualmente la regola di delega.
Diagnosi
Questo errore può verificarsi quando si tenta di connettersi tramite il servizio di gestione Web come non amministratore:
- Per connettersi usando le credenziali di Gestione IIS, l'identità del servizio gestione Web (in genere servizio locale) necessita delle autorizzazioni controllo completo nella cartella radice del sito per poter creare file e cartelle sottostanti.
- Per connettersi usando le credenziali di Windows, l'utente di Windows deve avere il controllo completo sulla cartella radice del sito per poter creare file e cartelle.
Risoluzione
Concedere il controllo completo dell'account appropriato nella cartella radice del sito. In alternativa, seguire questa procedura:
- Avviare Gestione IIS e fare clic con il pulsante destro del mouse sul sito in questione.
- Fare clic su Distribuisci>configura per la pubblicazione di distribuzione Web.
- Selezionare un nome utente appropriato.
- Fare clic su Impostazioni.
Diagnosi
L'identità RunAs specificata per la regola di delega createApp richiede l'accesso in scrittura al file applicationHost.config del server IIS.
Risoluzione
Fornire l'accesso in scrittura al file applicationHost.config del server IIS per l'identità RunAs della regola di delega createApp.
Diagnosi
È stato specificato un database non valido stringa di connessione che ha causato l'esecuzione non corretta di un dbFullSql
provider o dbMySql
. Questo errore può verificarsi se un stringa di connessione non è valido (ad esempio, Se v ver=localhost;...) o se il stringa di connessione contiene chiavi che il server di database di destinazione non riconosce.
Risoluzione
Verificare che il stringa di connessione sia valido.
Diagnosi
Si è verificato un errore di esecuzione dello script SQL.
Risoluzione
Questo errore può verificarsi per molti motivi. Per altre informazioni, vedere Sviluppo Web in Windows.
Diagnosi
Il dbFullSql
provider di Distribuzione Web richiede Server Management Objects versione 10 o successiva.
Risoluzione
Il provider SQL non può essere eseguito a causa di una dipendenza mancante. Assicurarsi che sia installato Microsoft SQL Server Management Objects (versione 10 o successiva).
Diagnosi
Distribuzione Web ha originariamente trovato un oggetto da eliminare, ma quando ha tentato di eliminarlo, l'oggetto era mancante.
Risoluzione
Assicurarsi che non siano presenti altri processi esterni che modificano la destinazione durante l'esecuzione di una sincronizzazione.
Diagnosi
La versione del pool di applicazioni di origine è diversa dalla versione del pool di applicazioni di destinazione.
Risoluzione
È possibile modificare manualmente le versioni del pool di applicazioni in modo che corrispondano tra l'origine e la destinazione oppure usare il apppoolnetfx
provider per farlo automaticamente.
Diagnosi
L'archivio certificati centrale non può essere usato nella configurazione corrente.
Risoluzione
È necessario assicurarsi di usare IIS 8 o versione successiva. Se si esegue msdeploy.exe in un server a 64 bit, assicurarsi di usare la versione a 64 bit del file eseguibile.
Diagnosi
L'archivio certificati SSL centralizzato non è installato o configurato correttamente. Questa funzionalità non è supportata anche in IIS 7.5 o versioni precedenti.
Risoluzione
Verificare che il server in cui si esegue la sincronizzazione o da sia in esecuzione IIS 8 o versione successiva. Verificare anche che l'archivio certificati SSL centralizzato sia installato e configurato in tale server.
Diagnosi
Il provider AppHostAuthOverride richiede IIS 7 o versione successiva.
Risoluzione
Assicurarsi che il server di destinazione che si sta modificando esegua IIS 7 o versione successiva.
Diagnosi
Distribuzione Web non può connettersi al servizio remoto.
Risoluzione
Assicurarsi che:
- È possibile effettuare il ping del computer remoto.
- Il
msdepsvc
servizio owmsvc
viene avviato nel server remoto. - Il firewall non blocca le connessioni in ingresso delle porte nella destinazione. Se è stata usata l'installazione predefinita, sarà 80 per
msdepsvc
e 8172 perwmsvc
.
Diagnosi
L'errore ERROR_FRAMEWORK_VERSIONS_DO_NOT_MATCH può verificarsi se si esegue una sincronizzazione del server Web tra due computer con versioni diverse di .NET installate.
Risoluzione
Per impostazione predefinita, Distribuzione Web preferisce usare la versione .NET specificata nel file di configurazione. Se la versione di .NET usata da Distribuzione Web nel client è diversa dalla versione nel server, la sincronizzazione server Web viene bloccata per impedire la migrazione delle impostazioni da versioni diverse di .NET. Per risolvere questo problema, sono disponibili due opzioni:
Usare l'impostazione
netFxVersion
del provider per informare distribuzione Web esattamente le impostazioni .NET di cui eseguire la migrazione. Di seguito è riportato un esempio della riga di comando che impone a Distribuzione Web di sincronizzare le impostazioni .NET:msdeploy.exe -verb:sync -source:webserver,machineconfig32.netfxversion=2,machineconfig64.netfxversion=2,rootwebconfig32.netfxversion=2,rootwebconfig64.netfxversion=2 -dest:webserver,machineconfig32.netfxversion=2,machineconfig64.netfxversion=2,rootwebconfig32.netfxversion=2,rootwebconfig64.netfxversion=2,computername=destServername
Eseguire Distribuzione Web nella stessa versione di .NET tra client e server. Sul lato client modificare l'ordine dell'elemento
supportedRuntime
version nel%programfiles%\IIS\Microsoft Web Deploy V3\msdeploy.exe.config
file per la versione di .NET specificata per prima (vedere il provider gacInstall per un esempio). Indica la versione di .NET, presupponendo che sia installata nel sistema. Sul lato server è possibile eseguire la stessa operazione per%programfiles%\IIS\microsoft web deploy\msdepsvc.exe.config
. Se si modifica questo file, assicurarsi di riavviare i servizi dell'agentenet stop msdepsvc
di distribuzione Web che è enet start msdepsvc
.
Diagnosi
Impossibile trovare l'associazione specificata.
Risoluzione
Eseguire netsh http show sslcert
dalla riga di comando per verificare che l'associazione specificata esista. Se non viene trovato, potrebbe essere necessario ricrearlo tramite Gestione IIS.
Diagnosi
È stato passato un tag di parametro non corretto.
Risoluzione
Eseguire di nuovo Microsoft Deploy con il tag SQL, SQLCE o MYSQL.
Diagnosi
Il percorso del provider non è valido.
Risoluzione
Il percorso del provider può variare a seconda del provider usato. Per altre informazioni sul provider in uso, vedere Provider di distribuzione Web.
Diagnosi
L'impostazione del provider specificata non è valida.
Risoluzione
Per altre informazioni sul provider in uso, vedere Provider di distribuzione Web.
Diagnosi
Il valore dell'impostazione del provider non è valido.
Risoluzione
Per altre informazioni sul provider in uso, vedere Provider di distribuzione Web.
Diagnosi
Le associazioni SNI sono supportate solo in IIS 8 o versioni successive.
Risoluzione
Le associazioni SNI possono essere create solo in IIS 8 o versioni successive.
Diagnosi
Distribuzione Web non è riuscito a ripristinare un backup.
Risoluzione
Verificare i punti seguenti:
- Il backup specificato esiste nel server.
- Se è presente un database all'interno del backup, viene specificato un stringa di connessione nell'impostazione del provider stringa di connessione.
Diagnosi
La funzionalità di backup non è configurata correttamente nel server di destinazione.
Risoluzione
Controllare i registri eventi per individuare i suggerimenti sulle impostazioni non configurate correttamente. Verificare che le impostazioni archiviate nel file applicationHost.config siano conformi al file di schema IIS BackupManagerSchema.xml.
Diagnosi
Distribuzione Web non è riuscita a creare un nuovo backup nel server di destinazione.
Risoluzione
l'elenco di controllo seguente.
- Se si esegue una
appHostConfig
sincronizzazione del provider, assicurarsi che il percorso del provider non sia vuoto. - Se in un manifesto sono presenti più provider che usano percorsi virtuali, assicurarsi che tutti i percorsi puntino alla stessa applicazione.
- Se si esegue un backup manuale, assicurarsi che la funzionalità sia attivata nelle impostazioni di backup del server.
- Controllare i registri eventi del server se il messaggio di errore restituito al client non contiene le informazioni necessarie.
Diagnosi
L'impostazione di backup che si sta tentando di impostare è contrassegnata come di sola lettura e non può essere impostata.
Risoluzione
L'amministratore del server deve contrassegnare l'impostazione di backup come "impostabile" nel file applicationHost.config aggiornando manualmente il file o usando gli script di PowerShell di Distribuzione Web.
Diagnosi
Non è possibile sovrascrivere o eliminare un file di destinazione perché è attualmente in uso.
Risoluzione
Assicurarsi che il file di destinazione non sia in uso prima di eseguire una sincronizzazione. Se si esegue la sincronizzazione del contenuto in un sito Web ospitato in IIS 7 o versione successiva (usando i appHostConfig
provider , iisApp
o contentPath
), prendere in considerazione la modalità offline dell'applicazione durante la sincronizzazione abilitando la appOffline
regola.
È possibile configurare la appOffline
regola nel profilo di pubblicazione (.pubxml). Aggiungere l'elemento EnableMSDeployAppOffline
al PropertyGroup
seguente:
<PropertyGroup>
<EnableMSDeployAppOffline>true</EnableMSDeployAppOffline>
</PropertyGroup>
Diagnosi
Distribuzione Web non è riuscita a rimuovere il file app_offline.htm dal sito dopo il completamento della sincronizzazione.
Risoluzione
È possibile eseguire nuovamente la sincronizzazione con la appOffline
regola abilitata oppure eliminare manualmente il file app_offline.htm dalla radice del sito nel server di destinazione. Per informazioni dettagliate sul motivo dell'errore, controllare i registri eventi del server.
È possibile configurare la appOffline
regola nel profilo di pubblicazione (.pubxml). Aggiungere l'elemento EnableMSDeployAppOffline
al PropertyGroup
seguente:
<PropertyGroup>
<EnableMSDeployAppOffline>true</EnableMSDeployAppOffline>
</PropertyGroup>
Diagnosi
Distribuzione Web non è riuscita a eseguire una sincronizzazione usando la connessione DAC (SQL Dedicated Administrator Connection) perché SQL DAC richiede .NET 4.0.
Risoluzione
Assicurarsi che il server che effettua la connessione SQL usando l'applicazione livello dati abbia installato .NET 4.0. Se ci si connette usando il client msdeploy.exe , assicurarsi che abbia .NET 4.0 elencato come prima opzione nel file di configurazione msdeploy.exe . Se ci si connette all'endpoint msdepsvc
server (servizio Agente distribuzione Web), assicurarsi che abbia .NET 4.0 elencato come prima opzione nel msdepsvc.exe
file di configurazione.
Diagnosi
Sono state create più applicazioni Web rispetto a quelle consentite nel server di destinazione.
Risoluzione
Richiedere più applicazioni all'amministratore del server o eliminare alcune delle applicazioni esistenti.
Diagnosi
L'API chiamata non esiste nel server di destinazione perché il server usa una versione precedente di Distribuzione Web.
Risoluzione
Installare la versione più recente di Distribuzione Web nel server.
DacFxNeededForSQLProvider, ERROR_SCRIPTDOM_NEEDED_FOR_SQL_PROVIDER, ERROR_SQLCLRTYPES_NEEDED_FOR_SQL_PROVIDER
Il gruppo di tre errori condivide la diagnosi e la risoluzione seguenti:
Diagnosi
L'applicazione livello dati SQL e le relative dipendenze non sono installate.
Risoluzione
Usare Il programma di installazione della piattaforma Web per installare:
- Framework applicazione livello dati di Microsoft SQL Server 2012
- SQL Server 2012 Transact-SQL ScriptDom
- Tipi CLR di sistema DI SQL Server 11.0
Diagnosi
Il pacchetto o il backup creato supera le dimensioni massime di 4 GB.
Risoluzione
Usare invece il provider durante la archiveDir
creazione di un pacchetto. A questo punto, non esiste alcuna soluzione per questo limite rispetto ai backup automatici.
Diagnosi
MySqlDump ha richiesto troppo tempo per rispondere a una determinata query.
Risoluzione
È possibile modificare il tempo di attesa di Distribuzione Web per la restituzione di MySqlDump da una query modificando il valore delle impostazioni del WaitAttemptsSettingInfo
provider e WaitIntervalSettingInfo
.
Diagnosi
Impossibile caricare le dipendenze necessarie.
Risoluzione
Se la distribuzione Web è stata installata manualmente tramite l'identità del servizio gestito, provare a reinstallare Distribuzione Web usando il programma di installazione della piattaforma Web, che consente di installare automaticamente le dipendenze necessarie.
ERROR_SMO_NEEDED_FOR_SQL_PROVIDER, ERROR_USER_NOT_AUTHORIZED_FOR_IISAPP, ERROR_SCRIPTER_NEEDED_FOR_SQLCE_PROVIDER
I codici di errore ERROR_SMO_NEEDED_FOR_SQL_PROVIDER, ERROR_USER_NOT_AUTHORIZED_FOR_IISAPP e ERROR_SCRIPTER_NEEDED_FOR_SQLCE_PROVIDER codici condividono la diagnosi e la risoluzione seguenti:
Diagnosi
SQL Shared Management Objects (SMO) non è stato trovato o la versione installata è troppo vecchia.
Risoluzione
Installare la versione più recente di SMO usando Il programma di installazione della piattaforma Web.
Diagnosi
Questo errore si verifica perché non è stato possibile stabilire una connessione a un database.
Risoluzione
l'elenco di controllo seguente.
- La stringa di connessione sia corretta.
- L'account specificato nel stringa di connessione ha accesso al database.
- Il server di database a cui ci si connette consente le connessioni remote.
- È possibile accedere al server di database dal computer che esegue Distribuzione Web. Se ci si connette a un server di distribuzione Web remoto e si specifica un database, è necessario assicurarsi che il server di distribuzione Web remoto abbia accesso al database.
Diagnosi
L'azione PAC dell'applicazione livello dati ha richiesto troppo tempo per il completamento.
Risoluzione
Aumentare il tempo di attesa di distribuzione Web per il completamento di un comando specificando l'impostazione del CommandTimeout
provider.
Diagnosi
Siti Web di Azure non supporta la creazione di nuove applicazioni virtuali o la modifica della configurazione dell'applicazione esistente nel server durante un'operazione di pubblicazione distribuzione Web.
Risoluzione
È possibile creare nuove applicazioni virtuali o modificare le impostazioni di configurazione esistenti per il sito Web tramite il portale di Azure (https://portal.azure.com/). A tale scopo, seguire questa procedura:
- Accedere al portale.
- Aprire le impostazioni del sito.
- Selezionare la scheda Configura .
- Nella scheda Configura modificare il sito in modo che corrisponda alle impostazioni di configurazione dell'applicazione che si sta tentando di distribuire. Nella maggior parte dei casi, si tratta semplicemente di modificare la versione di .NET Framework, ma in alcuni casi potrebbe anche essere necessario aggiungere una nuova applicazione virtuale.
In genere, questo indica un problema con la convalida dei provider nell'origine. Ad esempio, se si sta tentando di sincronizzare il contenuto da una condivisione file di origine e non si ha accesso alla condivisione file, è possibile che venga visualizzato questo codice di errore. Per questi problemi, assicurarsi di avere accesso a tutti i dati di origine da cui si vuole pubblicare.
Codice di errore generico per indicare che si è verificato un problema durante la pubblicazione di un database. In genere, l'analisi dello stack e il messaggio associati a questo codice devono indicare l'errore effettivo generato da SQL Management Objects o SQL Data-Tier Application Framework.