Scripts do lado do servidor - Server-side scripting

O script do lado do servidor é uma técnica usada no desenvolvimento web que envolve o emprego de scripts em um servidor web que produz uma resposta personalizada para cada solicitação do usuário (cliente) ao site. A alternativa é que o próprio servidor da web entregue uma página da web estática . Os scripts podem ser escritos em qualquer uma das várias linguagens de script do lado do servidor disponíveis (veja abaixo). O script do lado do servidor é diferente do script do lado do cliente, em que os scripts integrados, como JavaScript , são executados no lado do cliente em um navegador da web , mas as duas técnicas costumam ser usadas juntas.

Os scripts do lado do servidor costumam ser usados ​​para fornecer uma interface personalizada para o usuário. Esses scripts podem reunir características do cliente para uso na personalização da resposta com base nessas características, os requisitos do usuário, direitos de acesso, etc. O script do lado do servidor também permite que o proprietário do site esconda o código-fonte que gera a interface, enquanto, com o cliente side scripting, o usuário tem acesso a todo o código recebido pelo cliente. Uma desvantagem do uso de scripts do lado do servidor é que o cliente precisa fazer mais solicitações pela rede ao servidor para mostrar novas informações ao usuário por meio do navegador da web. Essas solicitações podem tornar a experiência do usuário mais lenta, colocar mais carga no servidor e impedir o uso do aplicativo quando o usuário estiver desconectado do servidor.

Quando o servidor serve dados de uma maneira comumente usado, por exemplo, de acordo com as HTTP ou FTP protocolos , os usuários podem ter a sua escolha de um número de programas cliente (mais modernos navegadores da web podem solicitar e receber dados usando ambos os protocolos). No caso de aplicativos mais especializados, os programadores podem escrever seu próprio servidor, cliente e protocolo de comunicação, que só podem ser usados ​​uns com os outros.

Programas executados no computador local de um usuário sem nunca enviar ou receber dados pela rede não são considerados clientes e, portanto, as operações de tais programas não seriam consideradas operações do lado do cliente.

História

A Netscape introduziu uma implementação de JavaScript para scripts do lado do servidor com o Netscape Enterprise Server , lançado pela primeira vez em dezembro de 1994 (logo após o lançamento do JavaScript para navegadores).

O script do lado do servidor foi usado posteriormente no início de 1995 por Fred DuFrense durante o desenvolvimento do primeiro site para a estação de televisão WCVB de Boston, MA . A tecnologia é descrita na patente US 5835712 . A patente foi emitida em 1998 e agora é propriedade da Open Invention Network (OIN). Em 2010, o OIN nomeou Fred DuFresne um "Inventor Distinto" por seu trabalho em scripts do lado do servidor.

Explicação

Nos primeiros dias da web, o script do lado do servidor era quase exclusivamente executado usando uma combinação de programas C , scripts Perl e scripts de shell usando a Interface de Gateway Comum (CGI). Esses scripts foram executados pelo sistema operacional e os resultados servidos de volta pelo servidor da web. Muitos servidores web modernos podem executar diretamente linguagens de script on-line como ASP , JSP , Perl , PHP e Ruby pelo próprio servidor web ou via módulos de extensão (por exemplo, mod_perl ou mod_php ) para o servidor web. Por exemplo, o WebDNA inclui seu próprio sistema de banco de dados embutido. Qualquer forma de script (ou seja, CGI ou execução direta) pode ser usada para construir sites complexos de várias páginas, mas a execução direta geralmente resulta em menos sobrecarga devido ao menor número de chamadas para intérpretes externos.

Websites dinâmicos às vezes usam servidores de aplicativos web personalizados, como Glassfish , Plack e a biblioteca "Base HTTP Server" do Python , embora alguns possam não considerar isso como um script do lado do servidor. Ao usar técnicas de script dinâmicas baseadas na web, os desenvolvedores devem ter um conhecimento profundo da separação lógica, temporal e física entre o cliente e o servidor. Para que a ação do usuário acione a execução de código do lado do servidor, por exemplo, um desenvolvedor que trabalha com ASP clássico deve explicitamente fazer com que o navegador do usuário faça uma solicitação de volta ao servidor da web.

Os scripts do lado do servidor são completamente processados ​​pelos servidores em vez de pelos clientes. Quando os clientes solicitam uma página contendo scripts do lado do servidor, o servidor de aplicativos processa os scripts e retorna uma página HTML ao cliente.

Renderização do lado do servidor

No início da web o conteúdo era gerado puramente no Back-End. Após a grande adoção de aplicativos de página única front-end , uma nova abordagem foi introduzida para gerar o HTML usando o aplicativo cliente, mas no back-end. Exemplos de enquadramentos que utilizam SSR são Next.js , Nuxt.js e Nest.js . Eles usam, respectivamente , React.js , Vue.js e Angular para gerar o conteúdo do servidor.

Geração do lado do servidor

Outra técnica de geração de conteúdo para um site semelhante à SSR é usar a geração do lado do servidor. Essa técnica usa aplicativos que criam páginas html estáticas e, em seguida, esses arquivos são enviados para o servidor. A geração de arquivos pode acontecer em um computador completamente diferente, por exemplo, usando a entrega contínua . Exemplos de ferramentas SSG são Jekyll , Gatsby ou Eleventy . Esses sites costumam ser hospedados nas páginas do Netlify ou GitHub . O GitHub também oferece suporte a projetos Jekyll, nos quais constrói automaticamente o site quando alterações são adicionadas ao git .

línguas

Existem várias linguagens de script do lado do servidor disponíveis, incluindo:

Veja também

Referências

links externos