COLUNA 1: Tudo bem, vamos dar uma veja como a solução equipe, na verdade opera, de modo que você ter uma noção, em primeiro lugar como o servidor web é suposto para ser executado, e como você pode, na verdade, obtê-lo correr em seu próprio computador. Então, imagine-lo aqui. Eu já instalado em CS50 ID zip ponto pset6, acordo com a especificação. Eu abriu o zíper, e eu tenho CDED em meu diretório pset6. Uma das primeiras coisas que você é vai querer fazer, especialmente se você estiver usando um IDE CS50 para jogar juntamente com leituras recentes, caracterizado estamos usando PHP em CS50 IDE, especificamente, usando o servidor web Apache chamado, através do qual você pode iniciar e parar com isso com esse comando, Apache 50. Primeiro, vá em frente e digite "parada Apache 50" só para ter certeza que se você fosse acompanhando nos últimos dias, e você ligado Apache, você é desligá-lo desta forma parando o servidor. Agora, o que eu vou fazer é exatamente o que a especificação me diz para fazer. Eu estou indo para ir para Tilda CS50 barra servidor barra pset6, e apenas pressione Enter. Você vai notar que eu estou gritado com algumas informações de uso, segundo o qual Eu deveria estar em execução como o programa servidor com um traço opcional p e, em seguida, um número da porta, o que você pode realmente deixe em branco porque por padrão, por a especificação, o servidor web vai supor que você quer a porta 8080. Enquanto isso, você deve se lembrar que porta 8080 não é realmente padrão, em vez da porta 80 é a número que nós falamos sobre ser o padrão para HTTP. Bem, acontece que CS50 IDE é simplesmente configurado de uma maneira, de tal forma que quando você com um navegador tentar para visitar a porta 80 do mundo exterior, que vai classificar de magicamente porta para a frente, ou redirecionar si, a porta 8080 no interior do seu próprio servidor. Então a última coisa aqui é o comando argumento de linha, o caminho ao percurso. E por que eu simplesmente Quer dizer, o que eu faço pasta quero dizer ao servidor para usar para servir arquivos? Em outras palavras, se o usuário visita slash, o que ele ou ela deve ver? Bem, vamos em frente e executar exatamente isso de novo, desta vez especificando que eu quer a raiz do meu servidor web para ser o diretório público, que vem com problema de definir seis código de distribuição. Quando eu pressionar Enter, você verá em amarelo aqui, um lembrete quanto ao que pasta Na verdade, estou usando. Neste caso, é uma cadeia longa, "espaço de trabalho pset6 pública casa ubuntu". E a última palavra é o que é fundamental. E então, finalmente, aparentemente, a minha servidor agora está escutando na porta 8080. O que eu estou ao lado vai fazer é lembrar que em ID CS50 no canto superior direito da tela, você vai ver um URL que é ide50-username.cs50.io. E, de fato, se você clicar isso, você vai ser arrastada a outra aba do navegador, que, nesse caso, vai me mostrar o conteúdo dos meus servidores web raízes. Em outras palavras, os arquivos que você vê aqui, gato dot HTML, gato ponto JPEG, favicon dot ico, Olá HTML ponto, Olá php ponto e teste, são todos da mesma conteúdo que você veria com LS dentro do meu diretório público. E o que é bom é que, se eu for em frente e agora clique no gato dot HTML, Vejo HTML gato ponto. E se eu clicar no gato dot JPEG, HTML ou Olá ponto, ou mesmo digitar meu nome David, e, em seguida, clique em "dizer Olá", você vai ver que todo o arquivos de trabalhar porque a equipe solução, é claro, instalado em CS50 ID é totalmente funcional. Assim, ele funciona exatamente como o seu próprio solução deve, em última análise funciona. Enquanto isso, se voltarmos ao meu terminal janela, onde eu corri o comando do servidor, observe o que o console foi dizendo. Vejo aqui que o primeiro pedido que Eu recebi foi literalmente obter barra gato dot HTML, HTTP versão 1.1. E então, o que em verde a solução equipe tem feito é isso está me mostrando o primeira linha de saída que o servidor web está respondendo com. Em outras palavras, nós temos escrito já o código que abre o envelope virtual, contendo esse pedido get. E, então, responder ao utilizador, mas, ao mesmo tempo, imprimir a tela de saída aqui HTTP 1.1, 200 OK para confirmar o que estamos colocando em o envelope de devolução, por assim dizer, que estamos enviando para o usuário. E então o que está acontecendo aqui é que na janela do terminal, estamos executando o web servidor, e, por conseguinte, é escuta de HTTP solicitações na porta TCP 8080. Enquanto isso, em meu navegador web, como eu clicar em cada desses arquivos, ou mesmo minha entrada nomear David, e clique em Enviar, que é o meu navegador conversando com o servidor web. E o que procede do servidor web, em seguida, em que a janela do terminal está me mostrando exatamente a primeira linha é sido recebida numa Virtual envelope e exatamente a primeira linha que está a ser respondeu com a que o cliente web.