[Powered by Google Translate] [Seminario] [Preparando seu sitio web para a Web] [Yuechen Zhao] [Harvard University] [É dicir CS50.] [CS50.TV] Okay. Aquí está máis unha hora de desenvolvemento web se vostedes están a facer por el. Hoxe eu vou estar falando sobre a preparación do seu sitio web para a web. Todo o día - e, probablemente, para os últimos 2 semanas - nós falamos sobre como crear un sitio web, como usar HTML, como usar o PHP, como usar frameworks, como estar seguro de que pode interactuar co banco de datos - cousas así. Pero hoxe, imos falar de que o seu sitio vai vivir despois CS50. Porque ao final, CS50 non acontece pasado decembro. Nós imos estar fala de nomes de dominio, hospedaxe. Nós imos estar fala de que a compatibilidade cross-browser e compatibilidade multiplataforma, e como pode que seguro que o seu sitio vai operar en todas as condicións. Imos falar sobre o tratamento de erros e outro máxico servidor. Estamos a falar de optimización de rendemento, search engine optimization, e como levar a xente a verdade visitar os seus sitios web. E, finalmente, só algúns bos recursos para asegurarse de que vostedes teñen o suficiente dos para saír co seu proxecto final, e espero que despois. O primeiro que imos falar é de nomes de dominio. Agora está programando no seu dispositivo, está indo a un servidor local o que non é realmente un nome de dominio. É unha especie de só un apelido ou un alias para a súa instalación real Linux dentro de calquera VMware nun xogador Mac ou VMware nun PC. Os nomes de dominio permiten que poñer un sitio web e, a continuación, ir a algo así como www.google.com e conseguir o web. Como eles funcionan? Imos dicir que é só un servidor web medio - media internauta e ten un portátil, e vai para www.howstuffworks.com. Probablemente, podes ver onde eu roubei isto. How Stuff Works - o ordenador ha entón pedir un servidor DNS local, "Vostede sabe onde o sitio é?" "Vostede sabe o enderezo IP de www.howstuffworks.com?" O servidor de DNS pode dicir: "Si, eu fago." Neste caso, obter o enderezo IP, e seu ordenador accede este enderezo IP. Se iso non acontecer, el pide outro servidor DNS, "Hey! Vostede sabe o que www.howstuffworks.com é?" Este servidor podería dicir: "Si, eu fago." Así, di o outro o que é, e, por fin, que a información é pasada para o ordenador, e pode acceder howstuffworks.com. Como pode obter unha desas cousas máxicas? Como pode obter quizais www.yourname.com ou www.ilovecats.com? Podes rexistrarte para un, e hai unha morea de sitios por aí que lle permiten facelo. Debería - na maioría dos casos ten que pagar por eles. Hai certos nomes de dominio que son gratuítas. Se vai para tkdomainnames www.co.cc ou., Aqueles son gratuítos. Pero, eles veñen con certas restricións, e de feito algúns deles poden ata non ser , Certos nomes de dominio de primeiro nivel, como. Con ou. Net. Normalmente eu suxeriría ir a un deles porque os usuarios son só máis cómodo con iso. Xa viu unha morea de. Coms. Xa viu unha morea de. Redes. Probablemente non viu unha morea de. Co.cc 's, polo que son máis difíciles de recordar. Diferentes sitios como GoDaddy ou NameCheap ou - Eu usei un que é tipo de esbozado - chamado activedomain.com. Parece moi superficial, pero funcionou moi ben para min. E, finalmente, ten outros que quizais facer máis publicidade como a Network Solutions. Pero se vai a NetworkSolutions.com e ollar os seus prezos é moi caro. Eu estaba mirando para eles na noite pasada. Durante un ano, dun nome de dominio, non é probablemente paga moito diñeiro. En realidade, se está a recibir un. Con ou. Org ou. Net o prezo normal é de aproximadamente 10 dólares por ano. Entón, se está pagando moito máis que iso, non é probable que paga a pena porque, ao final, estes sitios non fan nada con ese nome de dominio. Eles só dar a ti, e por iso, se pode obterse barato, por que non? A outra cousa é cando ten o seu nome de dominio, entón probablemente vai querer ir a calquera Godaddy.com ou onde comprou o seu nome de dominio e establecer o nome dos servidores para que o nome de dominio. O que isto significa é así que un usuario vai para www.howstuffworks.com, os enderezos IP do servidor de nome son os enderezos IP que eles serían capaces de ollar para arriba. Eles serían capaces de acceder ao seu sitio web a través destes servidores de nome. Se aplicar para aloxar nalgún lugar logo o anfitrión probablemente ha darlle o nome dos servidores a seren usados. E, finalmente, hai esa cousa chamada WHOIS. Unha base de datos WHOIS é unha base de datos co cal pode introducir un nome de dominio e vai cuspir unha información sobre o propietario do local e outra información de contacto. Agora, pode dicir: "Eu realmente non quero o meu enderezo de casa ou eu realmente non quero o meu enderezo de correo-e na web para calquera ver ou en internet para todo o mundo ver ". Entón podes querer usar algo que unha morea de servizos de hospedaxe ofrecen - como un director de WHOIS. Un director de WHOIS é simplemente outro servizo que moitos deles prevén que oculta esta información e só pon en que é director para o nome - ao enderezo normalmente é só que o nome da empresa que lle deu este nome de dominio - e así, logo a súa información persoal non está a ser difundida en Internet, que normalmente é moi bo. Eu mesmo uso destes servizos. Se non se preocupan súa propia intimidade, el realmente non importa. Un servidor DNS significa Domain Name System, e que é - É como unha especie de táboa hash nalgún lugar que di:  "Este enderezo de sitio vai mapear a este enderezo IP." E iso é todo o que é. Entón, despois de consultar este servidor DNS, entón podes obter os enderezos IP para que o nome de dominio correspondente e, a continuación, visite o sitio. (Membro da platéia facer unha pregunta - inaudível) O primeiro? O primeiro nivel, en realidade, é xeralmente só o seu propio caché do ordenador. Computador tipo de recorda a última vez que foi a www.google.com foi neste enderezo IP, e despois de moito tempo, que o caché remata, e vai preguntar como Comcast DNS, "Ei, o que é www.google.com?" Normalmente, cando compra un nome de dominio e se rexistrar, e crear un sitio web, non pode ir ao sitio web inmediatamente con este nome de dominio, pois os servidores de nomes en todo o mundo non sabe sobre o seu nome de dominio aínda. Ten que cubrir. El normalmente leva uns 24-48 horas. Todo ben. Entón, iso é un pouco sobre nomes de dominio. Son moi legal. Eu creo que ten que obter un se vostede é serio sobre o proxecto e se o quere facer o seu proxecto coñecido en todo campus, ter un nome de dominio fai que pareza moi profesional. Entón, o seguinte paso, por suposto, é ter algún tipo de hosting. Se acaba de hóspede-lo no seu ordenador, ninguén nunca vai ser capaz de ir a el. Podería configurar un servidor no seu ordenador e manter o seu ordenador para sempre, pero iso non se recomenda. Existen diferentes tipos de hospedaxe dispoñibles en liña. Ten de Aloxamento compartida. Hai VPN (inintelixible), que son máquinas virtuais. Hai semi-dedicado e dedicado. Dos últimos 3, VPN, semi-dedicado e dedicado son xeralmente máis caros. Son xeralmente utilizados para sitios que esixen máis recursos. Se vostede está só comezando cun sitio web, el só podería ser máis económico para ir coa hospedaxe compartida. E o medio compartido é só unha morea de sitios están todos xuntos clasificar de nun servidor na páxina neste servidor host, e pode acceder a súa web a través do nome de dominio. Hai un gran número de máquinas populares alí fora. HostGator e DreamHost - os que son moi, moi grande e moi, moi popular e moito, moi acertada. Eu persoalmente uso un chamado MDDHosting. Se vai para www.mddhosting.com, esa é a miña serie de elección. Eu creo que son moi bos. Eles foron sempre moi fiable, e eu nunca tiven ningún problema con eles. Eles tamén teñen prezos moi competitivos. Dous que realmente non me gusta son GoDaddy - que tamén é unha serie moi popular, pero eu tiven experiencias terribles con eles, e unha morea de persoas que eu coñezo tiveron experiencias realmente terribles con eles. Eles medio que ir detrás de persoas que non saben o que están facendo - talvez estea facendo un sitio por primeira vez, e así que tipo de erro-los na compra do seu paquete de hospedaxe. Non faga iso. Non caia nesa. Vaia buscar outros paquetes de hospedaxe que realmente se encaixan ás súas necesidades. E o outro é - hai anfitrións libres por aí. Hai sitios que ha hospedar o seu sitio web de balde - ás veces, poñendo un anuncio na súa páxina web, ás veces, facéndolle participar os seus foros, mais tamén, por veces, só de forma gratuíta. Pero coidado cos anfitrións libres, xa que moitos deles realmente só saír da empresa despois de algúns meses. Vostede simplemente non pode manter-se cos custos. Outros son só moi pouco fiables, e seu sitio será sempre para abaixo, e non quere que isto ocorre. Cada servidor vai ofrecer o seu propio panel de control. Teña en conta que para o seu dispositivo, non hai realmente un panel de control en si. Ten que usar o terminal para ir e editar os ficheiros. Ten que chmod cousas por si mesmo. Se quería ir ao phpMyAdmin, tes que ir a @ localhost / phpmyadmin e cousas dese tipo. Pero, con un panel de control que pode entrar e modificar os ficheiros no seu servidor con Windows Explorer ou unha aplicación do tipo localizador. Ou pode pasar e ollar para os seus bancos de datos coa súa propia ferramenta no canto de phpMyAdmin. Así, non hai moita opción aquí, e algúns dos paneis de control máis populares están alí enriba. Pero se está a buscar un servidor, entón podes querer ollar para o que tipo de personalización e opcións ofrecen-me a personalizar o meu servidor e facer o meu sitio funciona mellor. Así, pode preguntar: "Ben, como fago para escoller aloxamento?" Se entrar en calquera sitio hospedeiro hai unha chea de xerga, e hai unha morea de opcións. Hai unha serie de diferentes prezos tamén. Normalmente eu ir para os máis baratos só porque sitios que quizais ti e eu facemos - e, sobre todo agora, especialmente como entradas - poden non ter moitos recursos como pode un sitio como o Microsoft.com. En primeiro lugar, quere ollar para o sistema operativo se está realmente curioso se seu sitio será aloxado en Linux, en Windows ou en Mac Normalmente temos só ir con Linux porque é xeralmente o máis barato, e tamén o que quizais vostedes están máis familiarizados co debido ao aparello. E entón, quizais eles van poñer algunhas restricións sobre a cantidade de ancho de banda que ten - como cantos megabytes ou gigabytes de datos de usuarios poden baixar desde o seu sitio por mes? Ou espazo en disco. En canto espazo ten? É de 500 MB? É 2GB? É ilimitado? Hoxe en día, un gran número de servidores web darlle espazo en disco ilimitado como un xeito para que eles seducir-lo para conseguir o seu paquete de hospedaxe. Pero se realmente pensar niso, cando é que nunca vai ter de espazo no disco ilimitado? Se tes un par de arquivos HTML, un par de PHP, un par de imaxes - iso é só un par de megabytes, e así xeralmente eu só ir á pena de espazo pode que algúns 'gigabytes, e que pode ser o suficiente para comezar a me ata que eu teño máis. Finalmente, poden pór restricións sobre o tipo de - Cantos bancos de datos pode ter. Quizais só pode ter unha base de datos. Quizais pode ter dúas. Quizais pode ter 10. Será que é realmente importante para vostede como lle gañou? Cousas para facer a si mesmo. E entón, finalmente, só cousas como linguas. Apoia o PHP? Apoia MySQL? A maioría dos sitios de hospedaxe ofrecen soporte a estes porque son libres. Son de código aberto. Non custa nada a eles para proporcionar estes para ti. Pero se quere empregar, por exemplo, Ruby ou Python ou algunha desas outras linguas - poden non apoia-lo no seu servidor, polo que é importante ollar para eses tipos de cousas. E, finalmente, eles permiten que faga algunhas cousas máis avanzadas, como os traballos de SSL ou cron? SSL é unha opción onde pode facer o seu sitio máis seguro, tornándose HTTPS e cifrar as súas conexións. E cron son só quizais scripts que quere realizar cada 5 minutos, cada 10 minutos, cada 15. Unha morea de sitios de hospedaxe compartida non poñer restricións sobre o número de postos de traballo cron que pode realizar porque iso leva-se máis recursos. E por fin, todo o que quere ollar - comproba se exactamente o que está a suceder antes de comprar o seu paquete de hospedaxe. E, finalmente, o desempeño. O desempeño é enorme. Quão rápido é o meu sitio vai executar? A maioría dos usuarios non van esperar ata segundos para a súa web para ser executado antes de que eles só se cansar, e eles pasan a MeanBase e comezar a mirar para as imaxes de gatos - vostede sabe o que pasa, e quere estar seguro de que obteña o usuario a bordo e que ten bo uptime que significa que seu sitio será accesible en todo momento. Un gran número de máquinas teñen moi mal o tempo de actividade e que significa que o seu sitio non será accesible, e non quere que isto ocorre, xa que pode estar triste. E tamén pode seguir o desempeño do seu anfitrión con sitios como Pingdom.com ou Host-tracker.com, e eles só che dicir cantas veces é o seu sitio web do aire. E, finalmente, quere ver sobre o seu apoio. Se tes un problema que eles van responder a vostede dentro de 24 horas? Eles van responder a vostede dentro de 48 horas? O servizo de Aloxamento que eu uso normalmente responde a min en poucos minutos que é moi bo. Uf! Todo ben! É hora de unha pausa. Pero eu non vou dar a ti. Nós imos só ollar fotos de gatos fermosos de cando en vez. Outra cousa moi, moi grande é a compatibilidade cross-browser. O que quero dicir con compatibilidade cross-browser? Vostede sabe que, hoxe en día non é só o Microsoft Internet Explorer. Non é só o Mozilla Firefox ou Safari. Agora temos Chrome. Temos Opera. Temos Dolphin. Temos Camino. Temos Conquistador. Temos todos estes diferentes navegadores. Cousas que están saíndo agora - RockMelt - aínda quen son todos baseados en Chromium. Pero a verdade da cuestión é, non é só un navegador máis. Non está só a ver estas páxinas cun único programa. E así, diferentes navegadores debería responder a diferentes HTML, CSS diferente, e JavaScript distinto de xeito diferente, e como trata sobre iso? Ben, en certos casos, o que realmente non pode. O seu sitio web - se funciona nun navegador, o código que escribiu non vai funcionar noutro navegador, e é o seu traballo para asegurarse de que o código que escribe é universal, que funciona en todas as partes. Entón, iso é moi perigoso. Se digo: "Ben, está a traballar no meu ordenador. Great! Imos seguir adiante." Así, probablemente non vai funcionar no meu, e cando ir ao sitio web Vou estar moi triste, e eu vou deixar inmediatamente. Entón, imos ver como pode evitar isto. O primeiro, por suposto, é só usar estándar HTML, CSS e JavaScript. O que quero dicir con isto? Así, hai unha morea de cousas que non estándar aí. Por exemplo, en CSS hai moitas versións. Se ves as regras CSS con-moz-ou-webkit-, esas regras son específicas tanto para os navegadores Mozilla e navegadores Webkit, e así que quere estar seguro de que pode utilizar evitar esas cousas por que se usa-moz-esa regra só funcionará en Firefox. E se realmente quere ter unha boa aparencia en Internet Explorer tamén, vai estar fóra de sorte. Para HTML tamén, pode facer cousas en HTML que funcionan nun navegador pero que rompe noutro, e quere evitar que, na medida do posible. E, finalmente, para JavaScript, mesmo - hai moitas versións de JavaScript, e este verán nós funcionan en un problema onde document.getElementsByClassName-- que é xeralmente unha función que se define como unha parte do patrón JavaScript - non era atopar en Internet Explorer 8. Así, durante o verán, eu estaba a traballar nun laboratorio e estabamos construíndo experiencias en liña. E pensamos que estaba funcionando moi ben ata que entender que os usuarios estaban usando Internet Explorer 8 non podería presentar os seus resultados. Estabamos perdendo unha gran cantidade de datos. Iso nos deixou moi triste. Así, sempre quere estar seguro de que os seus scripts están indo para o traballo en todas as partes. E, finalmente, utilizar validator.w3.org que é o que lle din para facer en pset 7. Asegúrese de que as súas páxinas son validadas. Isto é importante porque polo menos é un primeiro test de sanidade paso. É o meu código realmente compatible coas normas? Outra forma de clasificar de axudar a asegurarse de que o seu sitio está indo para o traballo na maioría das circunstancias é posible empregar as bibliotecas e frameworks porque estes desenvolvedores realmente intelixentes pensar sobre estas cuestións para ti. Eles pasaron e eles escribiron funcións distintas que funcionan en todos os navegadores. Por exemplo, podemos usar jQuery en Pset 7. Aínda que non pode telo visto, jQuery ofrece unha serie de funcións que doutra forma tería que escribir-se. Pero estes desenvolvedores escribiu, e que fixeron seguro de que funciona en todos os navegadores. E Bootstrap - que é outro cadro CSS que nós lle amosamos en Pset 7 - realmente tira unha morea de dores de cabeza co deseño de sitios web que parecen boas. en todos os navegadores. E, finalmente, se pode evitalo, eu costume evitar codificación a partir de cero. Se só está creando un sitio web para o seu clube da escola, por exemplo, e todo o que tes que facer é mostrar algunhas páxinas e, se cadra, que o seu presidente ir e cambiar algunhas cousas aquí e alí - non hai realmente ningunha necesidade de código que ti mesmo. Que ten unha morea do seu tempo. Hai que moito da súa enerxía, e ten que pasar e ten que descubrir, ben, iso vai estar ben neste navegador, é que se ve ben nesta web. Quizais usar algúns destes parches que outros xa escrito para ti, como WordPress ou Joomla ou Drupal. Estes son chamados de contido - estes son chamados CMSs que basicamente só os paquetes que xa veu feito para ti, e pode baixa-los, poñelos no seu servidor, e personalizar-los como quere, e xa ten un sitio web funcionando. Estes paquetes de código son algo para ollar. Esas cousas son de código aberto, a menos que vaia a algo así como - se está a buscar un paquete forma, hai cousas que non son libres como VBulletin ou IP.Board. Se non ten que algúns destes recursos avanzados, vostede poderá optar pola opción libre. E, finalmente, non hai como evitar isto. Debe probar, probar e probar. Debe probar o seu código en todos os navegadores e en todas estas plataformas. E vostede sabe, IE6 - bondade persoas agradecen comezaron a afastar-se IE6 porque para atrás no día, se cadra hai uns anos, os desenvolvedores web tiveron que sempre, sempre, sempre agradar ás debilidades do IE6 en seguir as normas. Sitios só parecía un pouco da década de 1990 por falta dunha mellor forma de tratar con isto. Tamén pode usar imaxes do navegador para comprobar o seu CSS. Un sitio moi legal é browserlab.adobe.com. Este é un servizo gratuíto de pór para fóra por Adobe. E o que fan é que poden sacar capturas de pantalla do seu sitio web realizar en condicións diferentes - como executar en diferentes navegadores, sendo executado en diferentes plataformas - e amosar o que eles se parecen. Só para mostrar o que quero dicir aquí, eu creei un sitio web o ano pasado chamado vida en Harvard, eo que intento facer - Intento facer my.harvard mellor. Porque se estivese aquí o ano pasado, my.harvard non parecía como parece agora. Parece medio nojento. Pero agora parece moito mellor. Miña implementación non era máis útil, pero á vez, vostede sabe, eu tente engadir - (inintelixible) o que moitos - e parece - parece moi bo no meu ordenador. E entón, quizais se eu tivese máis tempo eu tería ido para o laboratorio navegador, e eu tería ollado, así, como se ollar en Chrome 18 en Windows. Eu ía rolar e gustaríame ver - Oh non! Olle para o cadro de anuncios. Meu texto estaba transbordador. Entón, iso é malo, non? Se un usuario está a usar Chrome en Windows e vén para o meu sitio, que inmediatamente parece moi pouco profesional. Entón, eu debería ir para o meu CSS e descubrir que parte do meu CSS está dobres aquí. Por que non está mostrando correctamente e resolve-lo para que todos os usuarios poden ver o mesmo sitio web e ser tan feliz. E, finalmente, tamén, imaxes do navegador son bos para probar o seu CSS, pero o que sobre o seu JavaScript? E se ten algún guión complicado que está a ser executado? Ben, sempre pode facer a virtualización. Se tes un Mac, pode utilizar Bootcamp ou VMWare para virtualizar quizais unha copia do Windows e uso de Internet Explorer alí. Ou, pode ir a algo como Spoon.net, que por desgraza só funciona en PCs Pero o que fan é moi legal. Eles virtualizar software para que poida realizar diferentes versións do IE, por exemplo. Pode realizar distintas versións do Firefox. Pode realizar diferentes versións de Safari e probar todos os seus sitios por aí. Desafortunadamente, eles non son libres. Este é un servizo de pago, polo que sempre hai unha especie de presente - sempre hai este tipo de comercio off entre, ben, eu vou facer o meu sitio con bo aspecto. Se é así, eu podería ter que pagar por algúns servizos para me axudar a facer isto. Calquera dúbida neste momento sobre calquera cousa que falamos? Incrible. Okay. Agora, temos máis cousas para falar. Como sobre os erros? Como asegurarse de que o seu sitio vai funcionar mesmo cando algo de malo ocorre? Poida que non ten unha páxina chamada food.php. Pero eu, eu vou para a súa web e intento acceder food.php. Vas só para me amosar que a páxina en branco que di: 404 - File not found? Ou vai dicir: "Ben, eu sinto moito que eu non podería atopar isto por vostede, pero quizais aquí están algúns outros recursos para axudar a buscar o que precisa ". Outros erros - así, iso é chamado de erros de HTTP que son só algúns códigos de erro que o servidor podería enviado ao seu navegador, en caso de algo malo acontecer. 400 - Bad Request. 401 - non autorizado. 403 é unha especie de común cando ten un directorio que non se quere acceder polo usuario, pero o usuario intenta de calquera maneira. E 500 - Internal Server Error - que xeralmente acontece cando tes algo moi mala a suceder co seu código PHP. Pero en calquera caso, estes tipos de navegadores - estes tipos de erros acontecen. Entón, como asegurarse de que graciosamente xestionar estes erros e asegúrese de que o usuario non é só unha especie de colgar alí? Aí vén. Htaccess. Agora. Htaccess é algo que funciona en servidores Apache, algo que funciona e funciona nalgúns outros servidores tamén. Esta é só unha forma de ti para configurar o servidor de xeito que pode facelo facer o que queres que faga. Algunhas cousas que podería facer. Podes controlar a configuración de caché. Se houbese unha páxina na súa páxina web que teña a certeza de que o usuario baixar de novo cada vez que o usuario chega e visita o seu sitio. Ou quizais teña algún URL que é como yoursite.com / proba / html / pages / hello.html e só quere que sexa yourname.com / Ola -. ben, pode usar htaccess para redireccionar unha páxina a outra. Tamén pode usalo para facer a autenticación. Quizais existan algunhas partes do seu sitio web que precisa para usar outro contrasinal. Pode bloquear determinados enderezos IP, bloquear certos dominios. Quizais só realmente non me gusta de estudantes de Harvard que usan o seu sitio. Ben, tes a posibilidade de bloquear as direccións IP de Harvard. Por último, pode tratar as cousas - pode escribir certo código para facer o servidor tratar como. Zhao ou. seu nome ou. páxinas ola como código PHP. Quizais isto sexa útil. Quizais isto non vai ser. E, finalmente, pode usalo para xestionar respostas de erro. O que quero dicir con isto? Se simplemente engadir un código coma este - 404 ErrorDocument e, a continuación, encamiñar-los para algúns páxina de erro, pode estar seguro de que o usuario non só ve a moi, moi feo 404 e amosar-lles algo de bo. Imos realmente un ollo en como podemos facelo co seu Pset 7. Aquí, eu estou no meu dispositivo. Vou abrir Chrome, e entón eu vou tentar acceder a unha páxina que non existe no CS50 Finance. Entón, servidor local - cats.php-lo, entender que eu creei un documento de erro que di: "CANZ non atopa a páxina z!" Ten un gato moi triste con iso. Se entrar en Twitter, se é en calquera destes outros sitios, vostede non pode atopar unha páxina, normalmente intentan mostrar unha imaxe bonito de modo que non está moi decepcionado. Tamén pode ter algo que é máis profesional que di: ben, me desculpe eu non puiden atopar a páxina, pero quizais aquí é unha caixa de busca. Ou que aquí están algúns enlaces que han axudar a atopar a ligazón que quere. Entón, como fago isto? Como isto é posible? Ou tamén para o noso terminal aquí - Eu só vou para achegar un pouco - ter en conta que eu teño unha nova páxina. Dentro do meu directorio HTML é chamado - non pode velo - é chamado error.php. E error.php é só un arquivo que eu fixen que demostra que a propia páxina. Podo te amosar o que é error.php. É exactamente nesta páxina. Ela di: "Oh, non! CANZ non atopa a páxina z!" E, se queres ver - así, entender que tipo de htaccess é un nome estraño .. Ela comeza con un punto, o que significa que é un arquivo de sistema. É un arquivo oculto que normalmente non é mostrado. Se fai ls-a, podes ver todos os arquivos ocultos en un directorio, e, de feito, ve. htaccess é un deles. Imos adiante e abrir htaccess. - con gedit - Boom! Todo o que eu teño é unha liña alí - documento de erro para erros 404 que tamén son coñecidos como erros de arquivo non atopado. Imos redireccionándoos los para algo chamado error.php. Pode ter algo divertido como CANZ non atopa a páxina z! E tamén hai cousas moi legais que podes facer con el. Htaccess. Se queres ver máis. Htaccess maxia, este é un sitio moi legal para ir - é chamado javascriptkit.com/howto/htaccess.shtml-- se quere executar máis maxia do servidor. E iso pode ser moi divertido. Uf! Todo ben! Fotos máis fermosos. Este é un cara que fai push-ups, eo seu gato está tentando axudar. Creo que é moi fermoso. Desafortunadamente, eu non teño un gato así. Todo ben. Entón, nós xa falamos sobre. Htaccess. Nós falamos sobre a manipulación de erros. Nós falamos sobre Aloxamento, nomes de dominio. Nós falamos sobre a compatibilidade cross-browser. Agora ben, como podemos estar seguro de que o seu sitio realmente executa? Como podemos estar seguro de que si é para a súa web Podo ver a súa páxina en poucos segundos? Unha das cousas que eu creo que a xente só tipo de esquecer é a optimización de imaxe. Digamos que quería poñer unha imaxe na súa páxina web e é 2 MG grande. Isto pode ser bo para nós, xa que estamos en Harvard, e temos unha conexión moi rápida a Internet. Pero imaxine alguén en China. Imaxina alguén na India. Imaxina alguén na zona rural de Kansas, que talvez non teña o mesmo tipo de Internet de banda ancha que temos. Se ten unha imaxe de 2 MB na súa páxina e que o usuario está a tentar acceder a ela, que vai leva-los moito tempo para descargar. Entón, se non precisa de que tipo de resolución, entón pode cambiar o tamaño da súa imaxe con algo como Adobe Photo Shop. Normalmente hai unha opción chamada segura para web e dispositivos, eo que fai é el elimina toda a información innecesarias e tipo de compactos seu arquivo nun tamaño pequeno de imaxe para que poida poñelas na súa páxina web, e calquera usuario que intenta descargar esta páxina vai baixar unha versión menor de súa imaxe. Se non ten Adobe Photo Shop webresizer.com tamén é outro recurso onde podes inserir a súa imaxe e vai cuspir a mesma imaxe, pero será algo así como tres veces máis pequenas. Entón, iso é moi útil para os usuarios. Outra cousa que podes facer é apoucar código. Se derme un ollo no Google.com, vai ver que non é o mesmo tipo de HTML e CSS que estamos afeitos. Só tes que ir a mirar para o código fonte aquí. Se eu só rolar para abaixo - uau, iso parece moi nojento. Isto ía estar un cero en estilo. Se codificou isto para o seu Pset, recibirá un cero no seu estilo. Isto non ten ningún espazo. Os nomes parecen moi enigmática. É todo moi nojento. E o guión para pechar o corpo - HTML pechar - están todos xuntos - todo esmagado xuntos. Por que fan isto? Eles minificado seu código. Nótese que este documento será moito menor para min facer a descarga de algo co espazo en branco, que algo con nomes de variables realmente longos. Se apoucar o código tira todo o espazo en branco. Por suposto, o seu navegador non me importa se ten ningún espazo en branco no seu código. Tira-lo para fóra, agora podo descargar un ficheiro menor - agora o arquivo - o documento que imos facer a descarga ten un tamaño de ficheiro menor, será máis rápido para me baixar, e iso é útil. Se está a traballar con sitios e está lanzando un sitio web, é case sempre bo para apoucar o seu código. Outra razón pola que pode ser bo é, quizais, non quere que outras persoas usen o seu código. Poida que non quere que outras persoas usen o CSS. Vostede sabe que se realmente quería ser miserento con iso, entón tamén pode apoucar o código, e sería máis difícil para min para roubalo porque eu non teño idea do que está pasando. Tamén pode ir a sitios como minify.avivo.si. Servizos como este en liña axudar a apoucar o seu código para que non ten que facelo coa man. Definitivamente non facelo coa man. Okay. Agora falando scripts. Quizais o seu código PHP non é algo que non precisa facer. Se houbese lazos extra alí. Nós falamos sobre o proxecto do código CS50. Mesmo se está con programación en C, se ten - se está facendo un traballo extra que non precisa facer, ben, iso vai diminuír os seus scripts no seu sitio web, e iso é especialmente importante para os sitios, xa que os usuarios hoxe en día son moi impacientes. Se está facendo un traballo innecesario, que vai leva-los máis para obter a información que eles queren, e eles van ser moi infeliz. Por último, pode querer optimizar as súas táboas de base de datos. Lembre-se de que falamos índices. Eles non son bos só para asegurarse de que ten unha liña que é único. Eles tamén son bos para asegurarse de que a base de datos funciona rapidamente. Se quere ler sobre que ir á documentación MySQL, ou pode ollar - ben, como fago para optimizar miña mesa base de datos? Como podo estar seguro de que eu teño os índices que me axudan a obter a información máis rápido? Tamén hai pequenos trucos que pode usar como caché. Se ten PHP - se ten un blog, por exemplo, e que ten - e el é alimento por PHP ou calquera outra linguaxe - pode almacenar en caché no seu blog digamos intervalos de 50 minutos para que poida servir páxinas estáticas ou HTML estático para os visitantes do seu sitio. Desta forma, os usuarios non teñen que executar o script PHP de cada vez, e quizais iso vai ser máis rápido para eles para acceder a esta información. E, finalmente, pode usar algo como CDN. Teña en conta que sempre que baixar un Pset, sempre vai para CDN.CS50.net. Por que isto? CS50 utiliza tamén como unha especie de CDN - unha rede de distribución de contido - o que só quere dicir que é un grupo de servidores, quizais nalgún lugar ao redor do globo que axudan a servir as súas páxinas para os visitantes. O visitante está a recibir unha páxina dende un servidor que está máis preto deles xeograficamente, entón probablemente o visitante está indo para obter o arquivo moito máis rápido. Tamén hai fontes en liña que axudan a facelo. Un deles é o CloudFlare. Ofrecen un servizo CDN gratis. Se tes arquivos grandes que o seu servindo aos seus usuarios, entón quizais sexa mellor poñer-los nun CDN, para que poidan chegar a eles rapidamente. O tema final para o día é search engine optimization. ¿Que é search engine Optimization? Isto é asegurarse de que os motores de busca como Google ou Bing ou Yahoo pode ir ao seu sitio e indexar o seu sitio e indexar o seu sitio e cando Eu, por exemplo, ir ao Google.com e intento buscar algo, logo o seu sitio aparecerá. Como asegurarse de que o sitio é un dos top 10? Porque, como todos sabemos, se busca por algo en Google e non é no top 10 probablemente non vai mirar o próximo día 10. Este é un tipo de tema que está envolta en misterio. Hai unha morea de hype aí fóra, en Internet. Hai unha serie de supersticións sobre se x entón Google vai gusta máis de ti. Se y entón Google vai gusta máis de ti. Probablemente o mellor é ollar os documentos da xigante das procuras en si. Este é un dos documentos en Google que dicir-lle exactamente como optimizar o seu sitio para que Google pode acceder e indexa-lo moi ben. Non ten que copiar abaixo esta URL pois esta presentación vai estar en liña de calquera maneira. Se ollar para iso e vostede lea isto, existen algúns consellos moi útiles alí. Google di que - se o quere que o seu sitio sexa indexado ben entón ten que facer todas estas cousas. Outra cousa que os motores de busca realmente me gusta é o contido fresco. Se ten contido que é actualizado con moita regularidade logo os buscadores dicir, ooh, eu gusto do seu sitio. Eu estou indo a ir ao seu sitio con moita frecuencia. Vou índice moi das súas páxinas. Se ten contido novo, así que ten máis posibilidades de aparecer - que é máis probable que sexa máis relevante. Vostede é máis probable que sexa máis actualizado, e os buscadores son máis propensos a poñer o seu sitio por riba dos outros. Profundos lazos tamén son importantes. Se realmente quería o seu sitio web para ollar ben nos ollos de un motor de procura Ten unha morea de outros sitios ligados a el e conectado profundamente no seu sitio. Non pode conectar para a súa páxina de inicio. Ligazón a cadra yourname.com / algo / algo / something.php. Que - para un motor de procura - medio, uau, teñen contido moi interesante que alguén está chamando tan profundamente na súa páxina web que eu debería realmente poñer máis importancia nas páxinas deste sitio web. Se ten títulos de páxina precisos, se non ten erros que é bo, porque un buscador está tentando visitar o seu sitio, e está a recibir un erro, probablemente vai desistir, moi pronto. E, finalmente, quere ter un tempo de carga rápido, porque os motores de busca - así como os humanos - non teñen moita paciencia para sitios lentos. Esta é unha forma de ter seguro de que amosar-se superior en consultas de investigación do motor e espera que, así, obter máis tráfico. Porque despois de todo, vostede pasou todo este tempo a desenvolver o seu sitio web. Vostede pasou todo este tempo de lanzar o sitio web en liña. Quere estar seguro de que ten a abundancia de usuarios que realmente ver o seu contido. Outros bos recursos para empregar. Google Webmaster Tools é algo para ollar. Isto só axuda a ver - Google non está indexando meu sitio. Que tipo de erros é que atopar? Cantas páxinas ten é indexado? O que pensa que é o contido máis importante na miña páxina? Quizais non sexa o que quero que sexa. Poida que eu teña que cambiar o meu sitio un pouco de tal forma que se reflicte mellor o meu sitio é realmente sobre. Google Analytics é unha ferramenta moi legal. Pode engadir un pouco de JavaScript para as súas páxinas. E logo pode ir ao Google Analytics, e só pode rastrexar súa demografía de visitantes eo seu crecemento local. El lle vai dicir exactamente cantas persoas visitan o seu sitio dentro dun determinado día, dentro dunha determinada hora, dentro dunha determinada semana. Cantos visitantes de China? Cantos visitantes da Antártica - está a recibir para a súa web. que podería ser unha cousa legal para ver, ou pode ata ser útil por que estás a alcanzar un determinado grupo. Pode que a intentando acadar adolescentes co seu sitio web, e ve que a maioría dos visitantes do seu sitio web son talvez 30 - á idade de 40 anos, entón quizais sexa tes un problema ou pode simplemente dicir: ben, entón quizais eu deba cambiar o foco do meu sitio para que Eu me concentrar máis en que franxa de poboación. Google Apps - se quería ter unha especie de un correo co seu nome de dominio - Quizais algo como yourname@yourname.com-- pode utilizar enderezos de Gmail - pode utilizar o servizo Gmail e Google Apps é un xeito de facelo. Pode configurar enderezos de correo electrónico específicas que son específicos para o seu nome de dominio no canto of@gmail.com. E, finalmente, hai extensións programador web e add-ons para Chrome -, para Firefox, para outros navegadores - que lle permiten entrar e inspeccionar CSS, JavaScript inspeccionar, ver exactamente o que hai de malo co seu guión JavaScript, e quizais iso vai ser útil para os seus propósitos de-escoitas, para descubrir - así, porque non é o meu sitio mostrando correctamente neste navegador? E, finalmente, se quere saber máis sobre todos estes temas - se quere saber máis sobre HTML e CSS e JavaScript - porque despois de todo, só lle ensinou un pouco - pode ir en sitios como W3Schools.com para buscar máis recursos. Teñen moi bos tutoriais sobre como fago x, y ou o que quere dicir? Se quere saber máis sobre linguas, pode simplemente ir aquí. Todo ben. Creo que eu quería deixar os últimos minutos deste para preguntas, tamén hai dúbidas sobre todo o que falamos? [Membro da audiencia] Que tipo de cousas están no W3Schools e como é cuberto? [Yuechen Zhao] Que tipo de cousas? Entón, un dos moi maiores cousas que eu uso moito é as súas referencias. Os seus detalles de referencias, por exemplo, a CSS - o que significa isto ou se quería cambiar o fondo dunha páxina - como fai iso? Que navegadores soportan este comando? Cousas así. E entón eles tamén só ten moi agradables tutoriais sobre HTML, en PHP, en JavaScript, en MySQL, en todo tipo de distintos temas. Teñen bos tutoriais. Eles ensinan como facer as cousas. É bo ser capaz de ir e aprender máis sobre estes temas. [Membro da audiencia] HTML 5 aínda non é compatible con todos os navegadores por aí. Recomenda só estar lonxe dela por mor de problemas de compatibilidade? Como trata sobre iso? [Yuechen Zhao] Si, por iso, o importante é HTML5 aínda é un estándar de bebé. Non é realmente apoiado por un gran número de navegadores, por iso hai que evitalo? Eu creo que o ano pasado eu sería un gran defensor da, imos evitar HTML5 porque aínda é - aínda é moi novo e, de feito, o estándar HTML5 aínda non foi finalizado. E así, non hai realmente ningún estándar HTML5. Pero eu creo que, especialmente se está designado un sitio agora, quizais sexa mellor se ir só con HTML5, porque iso é unha especie de será o futuro, e se quere que o seu sitio sexa a proba de futuro e quere que o seu sitio web para traballar en navegadores futuros, pode ser mellor para comezar a construír algo para o futuro que para o pasado, e tamén só debido ao feito de que o HTML5 en realidade non é moi diferente de HTML4 ou XHTML. Se está usando HTML5, que normalmente funciona na maioría dos navegadores. Só tes a sorte de ir e comproba se con estas imaxes e asegurarse de ir a estes sitios mesmo. Pero, moi probablemente vai funcionar a menos que vostede está a usar características moi específicas para HTML5. Lembra tamén que a CS50 - por exemplo, para o reprodutor de vídeo que usan - usa HTML5 e HTML5 vídeo para ver as conferencias. Pero se ten un navegador moi antigo, polo que vai caer cara atrás en Flash. Entón, iso tamén é outra cousa - ter un sistema de Fall-back para cando só sabe que o seu navegador non está indo para xestionar o que quere para soster. Outras preguntas? Todo o que falamos. Todo ben. Entón eu creo que iso é todo para min. Creo que é iso. (Aplausos) Legal. [CS50.TV]