Cosa c'è installato sul tuo server ASP.NET?
- .NET 10 LTS SDK, con il runtime ASP.NET Core, dai pacchetti di Ubuntu 24.04
- Un progetto Razor Pages di esempio: sorgente in /home/app/uygulama/kaynak, output in /home/app/uygulama/yayin
- Un servizio systemd chiamato uygulama, eseguito come utente app senza privilegi in Production su 127.0.0.1:5000
- Nginx come reverse proxy, con gli header WebSocket impostati e un limite di 64 MB per il corpo delle richieste
- Un certificato Let's Encrypt di certbot per il tuo indirizzo sslip.io, rinnovato automaticamente
- 1 GB di swap, più git
- Solo le porte 22, 80 e 443 aperte verso l'esterno, mentre la porta 5000 di Kestrel resta interna
Che dimensione ti serve per ASP.NET?
Microsoft non indica un unico valore di RAM per ASP.NET Core, perché dipende dalla tua app. Come regola generale, 1 GB è un inizio per eseguire una piccola app compilata. Se eseguirai dotnet publish sul server, 2 GB sono più comodi, anche con il 1 GB di swap che questa installazione aggiunge. Per Entity Framework e progetti più trafficati considera 4 GB. RAM e CPU crescono separatamente dal pannello; il server si riavvia una volta, e i tuoi dati e l'IP restano gli stessi.
| Uso | Dimensione | Prezzo | Scegli |
|---|---|---|---|
| Base | 1 GB RAM · 1 vCore · 25 GB NVMe | $2.58/mese | |
| Media | 2 GB RAM · 1 vCore · 40 GB NVMe | $4.01/mese | |
| Potente | 4 GB RAM · 2 vCore · 60 GB NVMe | $6.89/mese |
Per chi è?
- Progetti basati su ASP.NET Core MVC, Razor Pages, Web API o Blazor Server
- Team che vogliono eseguire .NET su Linux senza IIS
- Pipeline che compilano con dotnet publish e inviano l'output al proprio server
- App con clienti in Turchia che devono girare da Istanbul
Cosa succede dopo l'ordine?
- Imposta la dimensione e completa il pagamento.
- Il server parte e .NET e Nginx si installano da soli. Nei nostri test su server reali ci sono voluti circa 3,5 minuti.
- Nella scheda Panoramica apri il link Indirizzo del sito. Compare la pagina Razor di esempio.
- Collegati via SSH, esegui su - app, porta dentro il tuo progetto ed esegui dotnet publish -c Release -o ~/uygulama/yayin.
- Come root, in /etc/systemd/system/uygulama.service, sostituisci kaynak.dll nella riga ExecStart con il tuo file.
- Esegui systemctl daemon-reload e systemctl restart uygulama, poi aggiorna il sito.
Con ogni server
- Backup giornalieri inclusi nel prezzo
- Traffico illimitato
- Accesso root completo
- Aumenta o riduci RAM e CPU in seguito, e ingrandisci il disco
- Sede: Istanbul · IST-1.
Da sapere
- Le vecchie app .NET Framework e Web Forms non girano su Linux. Questo server è per .NET 10 e ASP.NET Core, quindi quei progetti vanno prima portati.
- È installato solo .NET 10. Per un progetto che punta a net8.0, alza il target, installa quel runtime oppure pubblicalo come self-contained.
- Kestrel ascolta sulla porta 5000. Se la cambi, aggiorna insieme ASPNETCORE_URLS nel file del servizio e la riga proxy_pass in Nginx.
- Non è installato nessun database. Metti la stringa di connessione nelle impostazioni dell'app o nel file del servizio come variabile d'ambiente.
- Microsoft chiede di conservare le chiavi di protezione dei dati in uno storage persistente, così i cookie di accesso restano validi dopo un riavvio.
- Se non è possibile emettere un certificato, il sito si apre in http sul tuo indirizzo IP. Gli aggiornamenti di .NET e della tua app sono una tua responsabilità.
Domande e risposte su ASP.NET
Di quanta RAM ha bisogno ASP.NET?
Microsoft non ha un unico valore di RAM per ASP.NET Core. Come regola generale, 1 GB è un buon inizio per una piccola app compilata, 2 GB se compili sul server e 4 GB per progetti più trafficati con Entity Framework. Se non bastano, ingrandisci dal pannello.
ASP.NET può girare su un VPS Linux?
ASP.NET Core sì. Questo server esegue .NET 10 su Ubuntu 24.04, con la tua app su Kestrel e Nginx che le passa le richieste, quindi IIS non serve. Le vecchie app .NET Framework sono un altro discorso, perché girano solo su Windows.
Quale versione di .NET c'è sul server?
È installato .NET 10 SDK e il runtime è incluso. Se punti a un'altra versione, installa quel runtime oppure pubblica il progetto come self-contained, così porta con sé il proprio runtime sul server.
Come distribuisco la mia app ASP.NET?
Come utente app, esegui dotnet publish -c Release -o ~/uygulama/yayin, oppure copia in quella cartella l'output di pubblicazione dal tuo computer. Cambia il nome della dll in uygulama.service, poi esegui systemctl daemon-reload e systemctl restart uygulama.
La mia app Web Forms o MVC 5 funzionerà?
No. Web Forms e MVC 5 richiedono .NET Framework, che esiste solo su Windows. Per quelli scegli un server con Windows Server e inserisci la tua licenza, oppure porta il progetto su ASP.NET Core.
Come collego il mio dominio a un server ASP.NET?
Punta il record A del dominio all'indirizzo IP del server, poi esegui certbot --nginx -d yourdomain.com. Il certificato viene emesso e si rinnova da solo.
SQL Server è installato? Quale database dovrei usare?
Non è installato nessun database. Con Entity Framework puoi collegarti a SQL Server su un'altra macchina oppure installare qui un database come PostgreSQL. Se preferisci un server separato, ne offriamo anche uno con PostgreSQL già installato.