Non è affatto complicato. Dipende semplicemente dalla tua definizione di "web server".
È del tutto possibile eseguire un "web server" su dispositivi semplici come un microcontrollore.
Consideriamo cosa dovrebbe fare il semplice server web minimale. Dovrebbe produrre del testo, non necessariamente nemmeno in HTML per un client. Dovrebbe sapere che una richiesta è una richiesta e rispondere in modo appropriato. Non avresti nemmeno bisogno della connettività di rete se il tuo "client" era locale. Sarebbe un server web completamente inutile.
Sarebbe l'equivalente del web server di uno di questi .
Aggiunta della connettività di rete per un client (Ethernet è utile, ma non esiste alcun motivo tecnico per cui non è possibile connettersi a un server Web in esecuzione su Wi-Fi) ed essere in grado di instradare da un client sarebbe meglio.
Un ESP8266 da $ 5 : un microcontrollore economico e minimale con Wi - Fi in grado di gestire gran parte di ciò, e forse anche un contenuto dinamico di base
Uso qualcosa del genere per una rapida condivisione di file tramite Python. È ancora del tutto possibile scrivere qualcosa di simile su un microcontrollore o persino eseguirlo su un telefono.
Il contenuto statico è noioso. Aggiungi linguaggi dinamici e dovrai iniziare a pensare a sistemi di pesi più pesanti. Le cose che eseguono Linux o Windows sono belle.
A questo punto, stai parlando di router di consumo, piccole applicazioni che utilizzano pagine Web nell'interfaccia utente e tutto il resto.
Un web server non è nemmeno un problema complesso e può essere scritto in cinque righe di bash ed eseguito su Linux. Now doom ... Ma qualsiasi sistema in grado di eseguire doom può eseguire un server web.
Una buona configurazione del web server in grado di gestire un determinato carico è un po 'più complicata.