Pubblicazione remota di programmi ASP.NET Core su server Web IIS su Internet

Data di creazione della pagina :

ambiente

Windows Server
  • Windows Server 2019
Internet Information Services (IIS)
  • 10.0
ASP.NET Nucleo
  • 5.0
Distribuzione Web
  • 3.6 Versione giapponese

Dapprima

Informazioni su come caricare programmi ASP.NET Core direttamente da Visual Studio a Internet Information Services (IIS) configurati in Windows Server.

La prima volta che è necessario lavorare su Windows Server, una volta configurato, è possibile pubblicarlo direttamente da Visual Studio per la seconda volta e oltre.

Questo suggerimento pubblica programmi su server su Internet, ma le misure di sicurezza sono minime, quindi se sei preoccupato, ti consigliamo di adottare misure aggiuntive o di adottare un altro metodo di caricamento.

precondizione

  • Configurazione di Windows Server
  • Hai già un programma ASP.NET Core da caricare
  • Connettersi ai server tramite Internet o Intranet

procedimento

Configurare Internet Information Services (IIS)

I passaggi sono riepilogati nella pagina seguente. IIS può essere utilizzato anche per programmi diversi dall'esecuzione di ASP.NET Core.

A proposito, sono necessarie impostazioni aggiuntive nell'installazione di IIS, ma non sono impostate nei suggerimenti collegati sopra. Puoi configurarlo in un secondo momento, quindi ne parleremo più tardi.

Aggiungere servizi di gestione in IIS

Aggiungerlo perché l'installazione predefinita di IIS non configura un "servizio gestito".

Avviare Server Manager.

Dal menu Gestisci, seleziona Aggiungi ruoli e funzionalità.

Premere più volte il pulsante "Avanti" nella schermata desiderata.

Quando si arriva alla schermata "Seleziona ruolo server", espandere "Server Web (IIS)" e "Strumenti di gestione" e selezionare "Servizi di gestione". (La cifra è in inglese, ma è la stessa.)

Se ASP.NET 4.7 non è installato, verrà visualizzata la seguente finestra di dialogo, quindi aggiungila insieme.

Successivamente, fai clic sul pulsante "Avanti" così com'è e installalo.

Quando si apre Gestione IIS, è possibile verificare che siano stati aggiunti servizi amministrativi.

Il firewall consente inoltre automaticamente la distribuzione delle porte.

installazione di ASP.NET Core Hosting Bundle

Necessario per eseguire ASP.NET Core su Windows Server. Una volta installato, può funzionare in IIS come un'applicazione ASP.NET tradizionale.

Vai alle seguenti pagine: A proposito, questo Suggerimenti utilizza 5.0, quindi se usi una versione diversa, vai alla pagina corrispondente.

C'è un pacchetto di hosting per Windows in fase di esecuzione in basso a destra dello schermo, quindi fai clic sul link per scaricarlo.

Eseguire il programma di installazione scaricato su Windows Server.

Seleziona "Accetto le condizioni di licenza e le condizioni d'uso" e fai clic sul pulsante di installazione.

Chiudere al termine dell'installazione.

Installazione di Distribuzione Web

Necessario per ricevere un programma di pubblicazione da Visual Studio.

Vai al link qui sotto.

Scaricare.

Windows Server ha solo una versione di base a 64 bit, quindi scarica la versione a 64 bit.

Esecuzione su Windows Server.

Fare clic su Avanti.

Seleziona "Accetto il contratto di licenza" e fai clic su "Avanti".

Fare clic su Completo.

Fare clic sul pulsante "Installa".

Al termine dell'installazione, fare clic sul pulsante "Fine".

Quando si apre Gestione IIS, sono stati aggiunti Servizi di gestione delegati.

Impostazioni del pool di applicazioni

Per ASP.NET Core, .NET CLR è irrilevante, pertanto aggiungere un pool di applicazioni senza codice gestito. È possibile modificare in modo sicuro l'opzione DefaultAppPool esistente. Questa impostazione non è direttamente correlata alla distribuzione Web, quindi non mi occuperò dei dettagli.

Se è stato aggiunto un pool di applicazioni, impostarlo sul sito.

Creare un sito

Creare un sito. È possibile crearne uno nuovo oppure utilizzare il sito Web predefinito da zero. Questo suggerimento manterrà il sito Web predefinito. La creazione del sito non ha nulla a che fare direttamente con la distribuzione web, quindi non voglio entrare nei dettagli.

Creare un utente di distribuzione

Può anche essere distribuito in un account Windows, ma aumenta i rischi per la sicurezza e crea un utente di distribuzione dedicato. Non è necessario configurare questo elemento se si esegue la distribuzione in un account di Windows.

Avviare Gestione IIS.

Selezionare un server dalla struttura ad albero di sinistra e aprire Utenti di Gestione IIS nel gruppo Amministrazione centrale.

Fai clic su Aggiungi utente a destra.

Creare immettendo il nome e la password dell'utente della distribuzione.

Aggiunto.

Consenti distribuzione

Sono stati aggiunti solo utenti a IIS, pertanto è necessario impostare le autorizzazioni per ogni sito. Questa impostazione non è necessaria se si esegue la pubblicazione con un account amministratore di Windows.

Selezionare il sito dall'albero a sinistra per aprire Autorizzazioni di Gestione IIS.

Dall'elemento destro, fai clic su Consenti utenti.

Poiché questa volta specifichiamo l'utente che abbiamo aggiunto a IIS, controlla Gestione IIS e fai clic sul pulsante Di selezione. Se si desidera pubblicare con un account Windows, selezionare Windows.

Viene visualizzato un elenco di utenti e lo si seleziona.

Una volta selezionato, fare clic sul pulsante OK.

Stato aggiunto.

Impostazioni di distribuzione

Selezionare un server dall'albero a sinistra per aprire Servizi di gestione.

Se "Abilita connessione remota" e "Credenziali di Windows o Credenziali di Gestione IIS" sono selezionati, non è necessario eseguire alcuna installazione. Se stai pubblicando con un account Windows, va bene se è selezionata l'opzione "Solo credenziali windows".

Se non è controllato, controllalo.

Penso che ogni elemento sia in uno stato in cui non è possibile entrare, quindi fai clic su "Stop" a destra.

Controlla gli articoli di cui hai bisogno. Al termine, fai clic sul link "Start" a destra.

C'è un'impostazione per aumentare la sicurezza nella parte inferiore di questa schermata, ma prima di tutto, è necessario confermare che può essere organizzato, quindi non risparmierò questo tempo.

Distribuzione di programmi da Visual Studio

Tornare al PC di lavoro e avviare Visual Studio per aprire il programma ASP.NET Core. Questa volta, pubblicheremo un programma con un nuovo progetto creato.

Fare clic con il pulsante destro del mouse sul progetto e selezionare Pubblica.

Selezionare Server Web (IIS) e fare clic su Avanti.

Selezionare Distribuzione Web.

Digitare quanto segue:

Valore del nome del parametro
server Indirizzo IP o DNS o nome di dominio del server che ha configurato IIS. È possibile specificare Internet o la rete Intranet.
Nome del sito Specifica il nome del sito aggiunto a IIS.
All'URL Non c'è alcun problema con lo spazio bianco.
Nome utente Specifica l'account utente in Windows Server o il nome utente creato in IIS.
parola d’ordine Immettere la password di autenticazione per l'utente sopra riportato.
Salva password Se è problematico inserire una password ogni volta che pubblichi, salvala.

Viene creato come mostrato.

Se hai creato più profili di pubblicazione, puoi modificarli nel menu a discesa sopra, ma se il nome è confuso, puoi farlo.

Le impostazioni dettagliate possono essere modificate nella schermata di modifica.

"Impostazioni" è selezionato dalla scheda a sinistra. Non è necessario apportare modifiche speciali, ma modificare le opzioni di configurazione, runtime di destinazione e pubblicazione file in base alle esigenze.

"Connetti" è selezionato dalla scheda a sinistra. Vedrai prima cosa hai digitato, ma fai clic sul pulsante "Verifica connessione" qui sotto.

La seguente finestra di dialogo verrà visualizzata quando è possibile connettersi correttamente all'editore. Selezionare Salva questo certificato per le sessioni future in Visual Studio e fare clic sul pulsante "Accetto". Se si salva, questa finestra di dialogo verrà visualizzata solo per la prima volta.

Se un segno di spunta viene visualizzato sul lato destro della verifica della connessione, sarà possibile connettersi normalmente.

A proposito, se fallisce, fai clic sul link per verificare la causa e agire a seconda della causa.

Le cause più comuni includono:

  • Il nome utente e la password non sono corretti.
  • IIS non consente agli utenti. Una volta che il metodo di indagine viene distribuito da un amministratore di Windows.
  • Il firewall Tcp 8172 non è consentito. I cloud come Azure non lo consentono sul lato cloud.
  • Lo strumento di distribuzione Web non è installato "completamente".
  • Iis è mancante. Si prega di ricontrollare questo Suggerimenti.

Al termine, in Esplora soluzioni fare clic su Proprietà → progetto → → Pubblicaprofili espandere e impostare il nome del problema ". pubxml", così si apre.

Project Aggiungere e salvare il codice seguente nel PropertyGroup tag >:

<AllowUntrustedCertificate>True</AllowUntrustedCertificate>

Al termine della configurazione, pubblica con il pulsante Pubblica.

Se pubblichi correttamente, il termine è fatto. Potrebbe non funzionare occasionalmente, quindi in tal caso, si prega di emetterlo di nuovo o verificare la connessione.

Se riesci ad accedervi in un browser Web e vedi il programma ASP.NET Core funzionante, il gioco è fatto.

Cronologia aggiornamenti

  • Novembre 12, 2021 : Aggiunta descrizione perché .pubxml era necessario da qualche tempo AllowUntrustedCertificate