[Powered by Google Translate] [Seminario] [Cómo preparar a su sitio para la Web] [Yuechen Zhao] [Universidad de Harvard] [Este es CS50.] [CS50.TV] Okay. Aquí hay otra hora del desarrollo web, si ustedes son lo compensó. Hoy voy a hablar de la preparación de su sitio para la Web. Todos los días - y probablemente para las últimas 2 semanas - hemos estado hablando acerca de cómo crear un sitio web, cómo usar HTML, cómo usar PHP, cómo utilizar marcos, cómo asegurarse de que se puede interactuar con la base de datos - cosas como esas. Pero hoy en día, vamos a estar hablando de que su sitio va a vivir después CS50. Porque después de todo, CS50 no ocurre en diciembre pasado. Vamos a estar hablando de nombres de dominio, hosting. Vamos a estar hablando de lo que la compatibilidad entre navegadores y la compatibilidad entre plataformas son, y cómo puede asegurarse de que su sitio web va a operar en todas las condiciones. Hablaremos de manejo de errores y otras magias servidor. Estamos hablando de la optimización del rendimiento, optimización de motores de búsqueda, y cómo conseguir que la gente visite sus sitios web en realidad. Y, por último, sólo algunos buenos recursos para asegurarse de que ustedes tienen lo suficiente de los para irse con su proyecto final, y es de esperar después. Lo primero que vamos a hablar es de los nombres de dominio. En este momento se está programando en su aparato, vas a un host local que no es en realidad un nombre de dominio. En cierto modo es sólo un apodo o un alias para su instalación de Linux actual dentro de cualquiera de VMware en un reproductor Mac o VMware en un PC. Los nombres de dominio permiten poner un sitio en la Web, y luego ir a algo así como www.google.com y obtener el sitio web. ¿Cómo funcionan? Digamos que usted es sólo un servidor web normal - promedio Web surfista y que tienen un ordenador portátil, y usted va a www.howstuffworks.com. Usted probablemente puede ver donde robé esto desde. ¿Cómo la materia trabaja - el equipo le pedirá un servidor DNS local, "¿Sabes dónde esta página web es?" "¿Conoces la dirección IP del www.howstuffworks.com?" El servidor DNS podría decir: "Sí, lo creo." En ese caso, se obtiene la dirección IP, y el ordenador accede a esa dirección IP. Si no lo hace, se le pide a otro servidor DNS, "Hey! ¿Sabes lo que www.howstuffworks.com es?" Ese servidor puede decir, "Sí, lo creo." Por lo tanto, le dice al otro lo que es, y por último, que la información se pasa a su computadora, y podrás acceder howstuffworks.com. ¿Cómo se puede conseguir una de estas cosas mágicas? ¿Cómo puede obtener lo mejor www.yourname.com o www.ilovecats.com? Usted puede inscribirse en uno, y hay un montón de sitios web por ahí que le permiten hacerlo. Usted debe - en la mayoría de circunstancias, usted debe pagar por ellos. Hay ciertos nombres de dominio que son gratis. Si usted va a tkdomainnames www.co.cc o., Son gratis. Pero, ellos vienen con ciertas restricciones, y de hecho algunos de ellos no pueden ser incluso nombres reales, de nivel superior de dominio como. com o. net. Normalmente yo sugeriría ir a uno de ellos ya que los usuarios son más cómodos con ellos. Usted ha visto un montón de. Coms. Usted ha visto un montón de. Redes. Usted probablemente no ha visto mucho. Co.cc 's, por lo que son más difíciles de recordar. Diferentes sitios web como GoDaddy o NameCheap o - Usé uno que es especie de vaga - llamado activedomain.com. Se ve muy rara, pero ha funcionado muy bien para mí. Y, por último, tiene otros que tal vez hacen más publicidad, como Network Solutions. Pero si usted va a NetworkSolutions.com y mirar sus precios es muy caro. Yo los miraba anoche. Durante un año de un nombre de dominio, no es probablemente vale la pena tanto dinero. De hecho, si usted está recibiendo un. Com o. Org o. Net el precio normal es de alrededor de $ 10 al año. Así que si usted está pagando mucho más que eso, no es probable que la pena porque, después de todo, estos sitios no hacen nada con ese nombre de dominio. Ellos sólo dan a usted, así que si usted puede conseguir más barato, ¿por qué no? La otra cosa es que una vez que tenga su nombre de dominio, entonces es probable que desee pasar a cualquiera Godaddy.com o donde haya adquirido el nombre de dominio y configurar los servidores de nombres para ese nombre de dominio. Lo que esto significa es que una vez que un usuario va a www.howstuffworks.com, las direcciones IP de servidores son las direcciones IP que serían capaces de mirar hacia arriba. Ellos podrán acceder a su sitio web a través de esos servidores de nombres. Si usted solicita alojamiento en algún lugar entonces su anfitrión lo más probable es que le dará los servidores de nombres para su uso. Y, por último, hay una cosa que se llama un WHOIS. Una base de datos WHOIS es una base de datos con la que se puede ingresar un nombre de dominio y le escupió un poco de información sobre el propietario de ese sitio y otra información de contacto. Ahora, usted puede decir: "Yo no quiero que mi dirección de casa o que realmente no quiero que mi dirección de correo electrónico en el sitio web para que cualquiera pueda ver o en Internet para que todos la vean ". Entonces es posible que desee utilizar algo que una gran cantidad de servicios de hosting ofrecen - como un gestor de base de datos WHOIS. Un gestor de base de datos WHOIS es simplemente otro servicio que muchos de ellos disponen que esconde esa información y sólo pone en quien es director para el nombre - para la dirección por lo general es sólo que nombre de la empresa que te ha dado el nombre de dominio - y así, su información personal no es que se filtró en Internet, que suele ser bastante bueno. Yo uso uno de estos servicios. Si no se preocupan por su privacidad, entonces no importa. Un servidor DNS significa Domain Name System, y lo que es - es como una especie de lugar de tabla hash que dice:  "Esta dirección de sitio web va a asignar a esta dirección IP." Y eso es lo que es. Así que una vez que se consulta el servidor DNS, entonces usted puede obtener las direcciones IP para que el nombre de dominio correspondiente y luego visitar ese sitio web. (Miembro de la audiencia con una pregunta - inaudible) El primero? El primer nivel es en realidad por lo general sólo su propia caché de ordenador. El equipo tipo de recuerda la última vez que fuiste a www.google.com fue en esta dirección IP, y después de un tiempo, esa caché expira, y se le pedirá al igual que el Comcast DNS, "Hey, ¿qué es www.google.com?" Normalmente, cuando usted compra un nombre de dominio y se registra uno, y configurar un sitio web, no se puede ir a ese sitio web inmediatamente con ese nombre de dominio, porque los servidores de nombres en todo el mundo no saben acerca de su nombre de dominio aún. Se tiene que rellenar. Por lo general, toma alrededor de 24 a 48 horas. Está bien. Entonces, eso es un poco sobre los nombres de dominio. Son muy cool. Creo que usted debe conseguir uno si usted es serio sobre el proyecto y si usted realmente quiere que su proyecto sea conocido en todo el campus, tener un nombre de dominio hace que se vea muy profesional. A continuación, el siguiente paso, por supuesto, es tener algún tipo de alojamiento. Si usted acaba de alojar en su ordenador, nadie nunca va a ser capaz de ir a ella. Usted podría configurar un servidor en el equipo y mantener su equipo para siempre, pero eso no es recomendable. Hay diferentes tipos de alojamiento disponibles en línea. Ha compartido de hosting. Hay VPN (ininteligible) que son hosts virtuales. Hay semi-dedicado y dedicado. De los últimos 3, VPN, semi-dedicado, dedicado y suelen ser más caros. Por lo general se utilizan para los sitios web que requieren más recursos. Si usted apenas está comenzando con una página web, que podría ser más económico que ir con el alojamiento compartido. Y lo que significa es compartida sólo un montón de sitios web están todos juntos especie de en un servidor en este sitio web en este servidor, y se puede acceder a su sitio web a través de nombre de dominio. Hay un montón de los ejércitos populares que hay. HostGator y DreamHost - los que son muy, muy grande y muy, muy popular y mucho, mucho éxito. Yo personalmente uso una llamada MDDHosting. Si usted va a www.mddhosting.com, ese es mi huésped de elección. Creo que son muy buenos. Siempre han sido muy confiable, y nunca he tenido ningún problema con ellos. Ellos también tienen precios muy competitivos. Dos que no me gusta son GoDaddy - que es también un anfitrión muy popular, pero he tenido terribles experiencias con ellos, y un montón de gente que conozco han tenido experiencias muy terribles con ellos. Se encargan de ir después de las personas que no saben lo que están haciendo - tal vez usted está haciendo un sitio web por primera vez, y por lo que tipo de ellos en contra que en la compra de su paquete de alojamiento. No lo hagas. No caiga en la trampa. Ir a buscar a otros paquetes de hosting que realmente se adapten a sus necesidades. Y el otro es - hay servidores gratuitos que hay. Hay sitios web que será la sede de su sitio web gratis - A veces al poner un anuncio en su sitio, a veces, haciendo que participe en sus foros, pero a veces simplemente también de forma gratuita. Sin embargo, tenga cuidado con los servidores gratuitos porque muchos de ellos realmente sólo tiene que ir a la quiebra después de unos pocos meses. Usted simplemente no puede mantenerse al día con los costos. Otros son muy poco fiables, y su sitio será siempre hacia abajo, y usted no quiere que eso suceda. Cada anfitrión ofrecerá su propio panel de control. Tenga en cuenta que para su aparato, en realidad no hay un panel de control en sí. Usted tiene que usar terminales para ir y editar los archivos. Tienes que chmod cosas por ti mismo. Si quieres ir a PHPMyAdmin, tienes que ir a @ localhost / phpmyadmin y cosas por el estilo. Sin embargo, con un panel de control se puede entrar y editar los archivos en el servidor con el Explorador de Windows o una aplicación de tipo buscador. O usted puede ir a través y mirar a sus bases de datos con su propia herramienta en lugar de PHPmyadmin. Por lo tanto, hay un montón de opciones aquí, y algunos de los paneles de control más populares son allí. Pero si usted está buscando un anfitrión, entonces es posible que desee ver en qué tipo de personalizaciones y opciones que me ofrecen para personalizar mi servidor y hacer que mi sitio web funcione mejor. Así, entonces usted podría preguntar: "Bueno, ¿Cómo elijo hosting?" Si usted va a cualquier sitio web de acogida que hay un montón de jerga, y hay un montón de opciones. Hay un montón de diferentes precios también. Normalmente voy por los más baratos porque los sitios web que tal vez usted y yo hacemos - y sobre todo en este momento, sobre todo como titulares - que no necesitan tantos recursos como lo haría un sitio web como Microsoft.com. En primer lugar que desea buscar en el sistema operativo, si usted es realmente curioso si su sitio va a estar alojado en Linux, en Windows o en Mac OS. Normalmente nos vamos con Linux porque es generalmente el más barato, y también el que tal vez ustedes están más familiarizados con la causa de la unidad. Y entonces, tal vez van a poner algunas restricciones en la cantidad de ancho de banda que usted consigue - como la cantidad de megabytes o gigabytes de datos pueden descargar los usuarios desde su sitio web al mes? O espacio en disco. ¿Cuánto espacio tienes? Es 500 MB? Es 2 GB? ¿Es ilimitada? Hoy en día, una gran cantidad de servidores web que te dan espacio ilimitado como una manera para ellos para atraer a usted para obtener su paquete de alojamiento. Pero si usted realmente piensa de él, cuando has entrado alguna vez va a tener espacio ilimitado? Si usted tiene un par de archivos HTML, un par de PHP, un par de imágenes - eso es sólo un par de megabytes, y así normalmente me voy por valor de espacio tal vez unos pocos gigabytes ', y eso podría ser suficiente para empezar hasta que necesito más. Por último, pueden poner restricciones sobre qué tipo de - la cantidad de bases de datos que puede tener. Tal vez usted sólo puede tener 1 base de datos. Tal vez usted puede tener 2. Tal vez usted puede tener 10. ¿Es realmente importante para usted cuántos se obtiene? Cosas que debe hacerse. Y, por último, a cosas como los idiomas. ¿Son compatibles con PHP? ¿Son compatibles con MySQL? La mayoría de los sitios web de alojamiento son compatibles con estos, ya que son gratuitos. Ellos son de código abierto. No les cuesta nada para proporcionar esto para usted. Pero si usted desea utilizar, por ejemplo, Ruby o Python o algunos de estos otros idiomas - no pueden apoyarlo en su servidor, por lo que es importante buscar ese tipo de cosas. Y por último, ¿se le permite hacer algunas cosas más avanzadas como trabajos SSL o cron? SSL es una opción donde usted puede hacer su sitio más seguro por lo que es HTTPS y cifrar las conexiones. Y cron puestos de trabajo son sólo quizás scripts que desee ejecutar cada 5 minutos, cada 10 minutos, cada 15. Una gran cantidad de sitios web de alojamiento compartido no puso restricciones en el número de trabajos de cron que se puede ejecutar debido a que tiene más recursos. Y, por último, al igual que todo lo demás que usted quiere ver - asegúrate exactamente lo que está pasando antes de comprar su paquete de alojamiento. Y, por último, el rendimiento. El rendimiento es enorme. ¿Qué tan rápido es mi página web va a correr? La mayoría de los usuarios no van a esperar a que incluso segundos para su sitio web para ejecutar antes sólo se aburren y se van a MeanBase y empezar a buscar a las imágenes de los gatos - sabes lo que pasa, y quiere asegurarse de que usted obtenga ese usuario a bordo y que tiene buen tiempo de actividad, que sólo significa que su sitio web va a ser accesible en todo momento. Una gran cantidad de hosts tienen muy mal el tiempo de actividad y que sólo significa que su sitio web no va a ser accesible, y usted no quiere que esto suceda, ya que podría estar triste. Y también se puede seguir el rendimiento de su máquina con sitios web como Pingdom.com o Host-tracker.com, y que sólo le dirá la frecuencia es su sitio abajo. Y, por último, quiere ver por su apoyo. Si usted tiene un problema van a responder en el plazo de 24 horas? ¿Van a responder dentro de 48 horas? El servicio de hosting que uso normalmente me responde en cuestión de minutos lo cual es muy agradable. ¡Menos mal! ¡Muy bien! Es hora de un descanso. Pero yo no voy a dar a usted. Sólo nos ocuparemos de fotos de gatos lindos de vez en cuando. Otra cosa muy, muy grande es la compatibilidad entre navegadores. ¿Qué quiero decir con la compatibilidad entre navegadores? Usted sabe, hoy en día no es sólo Microsoft Internet Explorer. No es sólo Mozilla Firefox o Safari. Ahora tenemos Chrome. Tenemos Opera. Tenemos Dolphin. Tenemos Camino. Tenemos Conquistador. Tenemos todos estos diferentes navegadores. Las cosas que están saliendo ahora - RockMelt - aunque aquellos se basan en cromo. Pero el hecho del asunto es que no hay sólo un navegador más. No sólo estás viendo estas páginas con una sola aplicación. Y así, los diferentes navegadores responden a diferentes HTML, CSS diferente y diferente JavaScript manera diferente, y ¿cómo lidiar con eso? Pues bien, en algunos casos, realmente no puedo. Su sitio web - si funciona en un navegador, el código que has escrito no funcionará en otro navegador, y es su trabajo para asegurarse de que el código que se escribe es universal, que funciona en todas partes. Por lo tanto, esto es muy peligroso. Si usted dice: "Bueno, está funcionando en mi ordenador. Great! Vamos a pasar." Bueno, no es probable que va a trabajar en la mina, y cuando vaya a su sitio web Voy a ser muy triste, y yo voy a salir de inmediato. Por lo tanto, vamos a ver cómo se puede evitar esto. Lo primero, por supuesto, es el uso único estándar HTML, CSS y JavaScript. ¿Qué quiero decir con eso? Bueno, hay un montón de cosas no estándar que hay. Por ejemplo, en el CSS hay muchas versiones. Si hay reglas CSS con-moz-o-webkit-, esas reglas son específicas tanto para los navegadores Mozilla y navegadores Webkit, y por lo que desea asegurarse de que tal vez usted quiere evitar esas cosas porque si se utiliza-moz-esa regla sólo se va a trabajar en Firefox. Y si realmente quieres que se vea bien en Internet Explorer también, usted va a estar fuera de suerte. Para HTML también, puede hacer las cosas de HTML que funcionan en un navegador pero la interrupción de la otra, y se quiere evitar que tanto como sea posible. Y, por último JavaScript aun - que hay muchas versiones de JavaScript, y este verano nos encontramos con un problema en el que document.getElementsByClassName-- que es por lo general una función que se define como una parte de la norma Javascript - fue no encontrar en Internet Explorer 8. Así, durante el verano, yo estaba trabajando en un laboratorio y que estábamos construyendo experimentos en línea. Y pensamos que estaba trabajando muy bien hasta que nos dimos cuenta de los usuarios que utilizaban Internet Explorer 8 no pudo presentar sus resultados. Nosotros estábamos perdiendo una gran cantidad de datos. Eso nos hizo muy triste. Por lo tanto, uno siempre quiere asegurarse de que sus scripts van a trabajar en todas partes. Y, por último, el uso validator.w3.org que es lo que te dicen que hagas en pset 7. Asegúrese de que sus páginas son validadas. Eso es importante porque al menos es un primer paso de comprobación de validez. Es mi código realmente compatible con las normas? Otra forma de tipo de ayuda a asegurarse de que su sitio va a trabajar en la mayoría de las circunstancias es utilizar tal vez algunas bibliotecas y marcos debido a que estos desarrolladores muy inteligentes han pensado en estas cuestiones para usted. Se han ido a través y que han escrito las diferentes funciones que funcionan en todos los navegadores. Por ejemplo, usamos jQuery en Pset 7. Aunque usted no lo ha visto, jQuery provee una gran cantidad de funciones que de otro modo tendría que escribir usted mismo. Pero estos desarrolladores lo escribieron, y se aseguraron de que funciona en todos los navegadores. Y Bootstrap - que es otro framework CSS que os mostramos en Pset 7 - lo que realmente le quita mucho de los dolores de cabeza con el diseño de sitios web que se ven bien. en todos los navegadores. Y por último, si se puede evitar, por lo general evito codificación a partir de cero. Si acaba de crear un sitio web para su club de la escuela, por ejemplo, y todo lo que tiene que hacer es mostrar unas pocas páginas y tal vez tener su presidente van en y cambiar algunas cosas aquí y allá - no hay realmente ninguna necesidad de código que tú mismo. Para eso se necesita una gran cantidad de su tiempo. Se necesita una gran cantidad de su energía, y usted tiene que ir a través y usted tiene que saber, bien, es esto va a quedar bien en este navegador, es que va a quedar bien en este navegador. Puede utilizar algunos de estos parches que otros ya han escrito para usted, al igual que WordPress o Joomla o Drupal. Estos se llaman contenido - estos son llamados CMS, que básicamente son sólo los paquetes que ya viene hecho por usted, y usted puede descargarlos, los puso en su servidor, y personalizar como quieras, y ya tiene un sitio web en funcionamiento. Los paquetes de código son algo que esperamos para. Estas cosas son de código abierto a menos que vayan a hacer algo así - si usted está buscando un paquete de forma, hay cosas que no son libres como VBulletin o IP.Board. Si usted no tiene algunas de las características avanzadas, siempre se puede optar por la opción libre. Y, por último, no se puede evitar que. Debe probar, probar, probar. Tienes que probar el código en todos estos navegadores y en todas estas plataformas. Y ya sabes, IE6 - la gente gracias a Dios han empezado a moverse lejos de IE6 ya de vuelta en el día, tal vez hace unos años, los desarrolladores web tuvieron que siempre, siempre, siempre complacer a las debilidades de IE6 en el seguimiento de las normas. Sitios web sólo veían tipo de 1990 por falta de una mejor manera de tratar con él. También puede utilizar las capturas del navegador para comprobar su CSS. Un sitio web muy interesante es browserlab.adobe.com. Este es un servicio gratuito difundida por Adobe. Y lo que hacen es que puede realizar capturas de pantalla de su sitio web funcionando en condiciones diferentes - como correr en diferentes navegadores, se ejecuta en diferentes plataformas - y mostrar lo que parecen. Sólo para mostrar lo que quiero decir aquí, he creado una página web el año pasado llamado Vida En Harvard, y lo que trató de hacer - Traté de hacer my.harvard mejor. Como si estuvieras aquí el año pasado, my.harvard no parecía que se ve ahora. Se parece un poco desagradable. Pero ahora se ve mucho mejor. Mi aplicación no era tan útil ya, pero de todos modos, ya sabes, traté de añadir - (ininteligible), muchos lo que sea - y parece - se ve muy bien en mi equipo. Y entonces, tal vez si hubiera tenido más tiempo me hubiera ido al laboratorio navegador, y me he mirado, bueno, ¿cómo se ve en Chrome 18 en Windows. Me desplácese hacia abajo y me gustaría ver - oh no! Mira el cuadro de anuncios. Mi texto se desborda. Por lo tanto, eso es malo, ¿verdad? Si un usuario está usando Chrome en Windows y viene a mi sitio web, que de inmediato se ve muy poco profesional. Por lo tanto, debo ir a mi CSS y averiguar qué parte de mi CSS está rompiendo aquí. ¿Por qué no se muestra correctamente y corregir de forma que todos los usuarios puedan ver la misma página web y ser tan feliz. Y finalmente, también, imágenes del navegador son agradables para probar el CSS, pero ¿qué pasa con JavaScript? ¿Qué pasa si usted tiene una secuencia de comandos complicada que se está ejecutando? Bueno, siempre se puede hacer la virtualización. Si tienes un Mac puedes usar Bootcamp o VMWare para virtualizar tal vez una copia de Windows y el uso de Internet Explorer allí. O bien, puede pasar a algo como Spoon.net, que por desgracia sólo funciona en los PC. Pero lo que hacen es muy cool. Ellos virtualizar software para usted por lo que puede ejecutar diferentes versiones de IE, por ejemplo. Puede ejecutar diferentes versiones de Firefox. Puede ejecutar diferentes versiones de Safari y probar todos sus sitios web allí. Por desgracia, no son libres. Esto es un servicio de pago, así que siempre hay una especie de esto - siempre hay una especie de este compromiso entre, bueno, voy a hacer que mi sitio web se vea bien. Si es así, voy a tener que pagar por algunos servicios para ayudar a hacer eso. Las preguntas en este momento sobre todo lo que hemos hablado? Impresionante. Okay. Ahora tenemos más cosas de que hablar. ¿Qué errores? ¿Cómo asegurarse de que su sitio web va a funcionar incluso cuando pasa algo malo? Tal vez usted no tiene una página llamada food.php. Pero yo voy a tu sitio web y que intento acceder food.php. ¿Va a mostrarme que la página en blanco que dice 404 - Archivo no encontrado? ¿O vas a decir: "Bueno, yo siento que no pude encontrar para usted, pero quizás aquí hay algunos otros recursos que le ayudarán a buscar lo que necesitas. " Otros errores - así, esto se conoce como errores HTTP, que son sólo algunos de los códigos de error que el servidor podría haber enviado de vuelta al navegador, en caso de que suceda algo malo. 400 - Solicitud incorrecta. 401 - no autorizado. 403 es una especie de común cuando se tiene un directorio que no se supone que puede acceder por el usuario, pero el usuario trata de todos modos. Y 500 - Error interno del servidor - que por lo general sucede cuando usted tiene algo muy malo pasa con el código PHP. Pero en cualquier caso, este tipo de navegadores - ocurren este tipo de errores. Así que, ¿cómo asegurarse de que usted maneja con gracia estos errores y asegúrese de que el usuario no es sólo una especie de colgar allí? Aquí viene. Htaccess. Ahora,. Htaccess es algo que funciona en servidores Apache, algo que funciona y funciona en algunos otros servidores también. Esta es sólo una manera de configurar el servidor de manera que puedes hacer que haga lo que quieras que haga. Algunas cosas que usted puede hacer. Usted puede controlar la configuración de la memoria caché. Tal vez haya una determinada página en su página web que te asegures de que el usuario volver a descargar cada vez que el usuario entra y visita su sitio web. O tal vez tenga un poco de URL que es como yoursite.com / prueba / html / pages / hello.html y lo que desea que sea yourname.com / hola -. bien, puede utilizar htaccess para redirigir una página web a otra. También puede utilizarlo para realizar la autenticación. Tal vez hay algunas partes de su sitio web que usted necesita para usar otra contraseña. Puede bloquear ciertas direcciones IP, bloquear ciertos dominios. Tal vez lo que realmente no les gusta a los estudiantes de Harvard que utilizan su sitio web. Bueno, usted tiene la opción de bloquear todas las direcciones IP de Harvard. Por último, se puede tratar las cosas - usted puede escribir código seguro para que su servidor tratan como. zhao o. su nombre o. páginas hola como código PHP. Tal vez eso sea útil. Tal vez eso no va a ser. Y, por último, se puede usar para manejar las respuestas de error. ¿Qué quiero decir con eso? Si usted sólo tiene que añadir un código como este - 404 ErrorDocument y luego dirigirlos a alguna página de error, usted puede asegurarse de que el usuario no se limita a ver la realidad, muy feo 404 y mostrarles algo agradable. Vamos realmente echar un vistazo a cómo podemos hacer eso con tu Pset 7. He aquí, yo estoy en mi aparato. Voy a abrir Chrome, y luego voy a tratar de acceder a una página que no existe en el CS50 Finanzas. Así, host local - cats.php-más o menos, darse cuenta de que he creado un documento de error que dice: "Canz no encuentra la pagina z!" Tiene un gato muy triste en él. Si vas en Twitter, si vas en cualquiera de estos otros sitios, usted no puede encontrar una página, por lo general tratan de mostrar una imagen linda por lo que no estás muy decepcionado. Usted también podría tener algo que es más profesional que dice: así, lo siento, no pude encontrar la página, pero quizás aquí está un cuadro de búsqueda. O tal vez aquí hay algunos enlaces que le ayudarán a encontrar el vínculo que desee. Así que, ¿qué hago esto? ¿Cómo es esto posible? Si entramos en nuestra terminal aquí - Yo sólo voy a acercar un poco - cuenta de que tengo una nueva página. Dentro de mi directorio de HTML que se llama - no se puede ver - se llama error.php. Y error.php es simplemente un archivo que hice que muestra que la propia página. Te puedo mostrar lo que es error.php. Es exactamente esta página. Dice: "¡Oh, no! Canz no encuentra la pagina z!" Y, si quieres ver - así, notará que htaccess tipo de es un nombre raro.. Se inicia con un punto lo que significa que es un archivo de sistema. Es un archivo oculto que normalmente no se muestra. Si lo haces ls-a, se puede ver todos los archivos ocultos en un directorio determinado, y, de hecho, ya ves. htaccess es uno de ellos. Vamos a seguir adelante y abrir htaccess. - con gedit - Boom! Todo lo que tengo es una línea en allí - el documento de error para los errores 404 que también se conocen como errores de archivo no encontrado. Vamos a redirigir a algo llamado error.php. Usted puede tener cosas divertidas como CANZ no encuentra la pagina z! Y también hay cosas muy interesantes que se pueden hacer con. Htaccess. Si quieres ver más. Htaccess magia, este es un sitio muy atractivo para ir a - se llama javascriptkit.com/howto/htaccess.shtml-- Si desea realizar más magia servidor. Y podría ser muy divertido. ¡Menos mal! ¡Muy bien! Más imágenes lindo. Este es un hombre haciendo flexiones, y su gato está tratando de ayudar. Creo que es muy lindo. Por desgracia, no tengo un gato así. Está bien. Por lo tanto, lo que hemos hablado. Htaccess. Hemos hablado de tratamiento de errores. Hemos hablado de hosting, nombres de dominio. Hemos hablado acerca de la compatibilidad entre navegadores. Ahora, ¿cómo nos aseguramos de que su sitio web funciona en realidad? ¿Cómo nos aseguramos de que si voy a su sitio web Puedo ver su página en pocos segundos? Una de las cosas que creo que la gente sólo una especie de olvidarse de es la optimización de la imagen. Digamos que usted quiere poner una foto en su sitio que pone el 2 MG grande. Eso podría estar bien para nosotros porque estamos en Harvard, y tenemos una conexión a Internet muy rápida. Pero imaginar que alguien en China. Imagine a alguien en la India. Imagine a alguien tal vez en la zona rural de Kansas, que tal vez no tiene el mismo tipo de Internet de banda ancha que tenemos. Si usted tiene una imagen de 2 MB en su sitio y el usuario está tratando de acceder a ella, que va a llevarlos a un tiempo muy largo para descargar. Por lo tanto, si usted no necesita ese tipo de resolución, entonces usted puede cambiar el tamaño de la imagen con algo como Adobe Photo Shop. Por lo general hay una opción llamada segura para la web y dispositivos, y lo que hace es que elimina toda la información necesaria y una especie de pactos de su archivo en un pequeño tamaño de la imagen, para que pueda lo puso en su sitio web, y cualquier usuario que intenta descargar la página va a descargar una versión más pequeña de la imagen. Si usted no tiene Adobe Photo Shop webresizer.com también es otro recurso donde su imagen puede introducir y será escupir la misma imagen, pero va a ser algo así como 3 veces más pequeño. Así que es muy útil para los usuarios. Otra cosa que puedes hacer es minify código. Si echamos un vistazo a Google.com, verás que no es una especie de la misma HTML y CSS que estamos acostumbrados. Sólo voy a mirar el código fuente aquí. Si me desplazo hacia abajo - wow, eso parece bastante repugnante. Esto tendría un cero en el estilo. Si usted cifró esto para su Pset, recibirá un cero en su estilo. Esto no tiene ninguna separación. Los nombres se ven muy críptica. Todo es realmente repugnante. Y el guión se cierre en el cuerpo - el código HTML de cierre - están todos juntos - todos smushed juntos. ¿Por qué hacen esto? Ellos minified su código. Tenga en cuenta que este documento va a ser mucho más pequeño para mi descargo que algo con un espacio en blanco, de algo con los nombres de variables muy largas. Si Minimizar el código se tira todo el espacio en blanco. Por supuesto, su navegador no importa si tienes cualquier espacio en blanco en el código. Usted tira de ella hacia fuera, ahora puedo descargar un archivo más pequeño - Ahora el archivo - el documento que vamos a descargar tiene un tamaño de archivo más pequeño, que será más rápido para mí para descargar, y eso es útil. Si está trabajando con los sitios web y usted está lanzando un sitio web, es casi siempre bueno para cercenar su código. Otra razón por la que podría ser bueno es tal vez usted no quiere que otros utilicen su código. Tal vez usted no quiere que otros utilicen su CSS. Ya sabes, si realmente quería ser mezquino con eso, entonces también puede cercenar su código, y sería más difícil para que lo robe porque no tengo ni idea de lo que está pasando. También puede ir a sitios web como minify.avivo.si. Servicios en línea como esta ayudan a cercenar su código para que usted no tiene que hacerlo a mano. Ni se te ocurra hacerlo a mano. Okay. Ahora hablar de scripts. Tal vez en su código PHP que hay algo que usted no tiene que hacer. Tal vez haya bucles adicionales en ese país. Hablamos de diseño de código en el CS50. Incluso si usted está de codificación en C si tiene - si usted está haciendo un trabajo extra que usted no tiene que hacer, bueno, eso va a frenar las secuencias de comandos en su sitio web, y esto es especialmente importante para los sitios web, ya los usuarios de hoy en día son muy impaciente. Si usted está haciendo un trabajo innecesario, que va a tomar más tiempo para llegar a la información que desean, y que van a ser muy infeliz. Por último, es posible que desee optimizar sus tablas de la base. Recuerde que hablamos de índices. No son sólo buenos para asegurarse de que usted tiene una fila que es único. También son buenos para asegurarse de que su base de datos es rápida. Si desea leer sobre que van a la documentación de MySQL, o se puede ver en - bueno, ¿cómo puedo optimizar mi mesa de base de datos? ¿Cómo puedo asegurarme de que tengo índices que ayudan a llegar a la información más rápido? También hay pequeños trucos que se pueden utilizar como caché. Si usted tiene PHP - si usted tiene un blog, por ejemplo, y que tiene - y es alimentado por PHP o cualquier otro idioma - puede almacenar en caché en tu blog Digamos intervalos de 50 minutos para que pueda servir a las páginas estáticas o HTML estático para los visitantes a su sitio. De esta manera los usuarios no tienen que ejecutar el script PHP cada vez, y tal vez eso será más rápido para que puedan acceder a esa información. Y, por último, se puede usar algo como CDN. Tenga en cuenta que cada vez que se descarga un Pset, siempre vas a CDN.CS50.net. ¿Por qué es eso? CS50 utiliza también como una especie de CDN - una red de distribución de contenidos - que simplemente significa que se trata de un grupo de servidores puede que en algún lugar del mundo que ayudan a servir a sus páginas para sus visitantes. Si el visitante es cada vez una página de un servidor que está más cerca geográficamente, lo más probable es que el visitante se va a poner ese archivo mucho más rápido. También hay fuentes en línea que le ayudan a hacer eso. Uno de ellos es CloudFlare. Ofrecen un servicio de CDN gratis. Si tiene archivos de gran tamaño que el que sirven a sus usuarios, entonces tal vez es mejor ponerlos en un CDN para que puedan acceder a ellos más rápidamente. El último tema del día es la optimización de motor de búsqueda. ¿Qué es la optimización de motores de búsqueda? Eso es asegurarse de que los motores de búsqueda como Google o Bing o Yahoo puede ir a su sitio y rastrear su sitio y el índice de su sitio y cuando Yo, por ejemplo, ir a Google.com y trato de buscar algo, entonces su sitio aparecerá. ¿Cómo asegurarse de que su sitio es uno de los 10? Porque como todos sabemos, si busca algo en Google y no es en la parte superior 10 que está muy probablemente no va a ver en los próximos 10. Esta es una especie de un tema que está envuelto en el misterio. Hay una gran cantidad de publicidad que hay en el Internet. Hay un montón de supersticiones sobre si x entonces Google te guste mejor. Si usted y entonces Google te guste mejor. Probablemente es mejor mirar hacia sí los documentos la búsqueda del gigante. Este es uno de los documentos en Google que te dicen exactamente cómo optimizar su sitio por lo que Google puede acceder y el índice muy bien. Usted no tiene que copiar la URL, porque esta presentación va a estar en línea de todos modos. Si nos fijamos en esto y usted lee esto, hay algunos consejos muy útiles en ese país. El Google te dice - si usted realmente quiere que su sitio sea indexado y entonces usted debe hacer todas estas cosas. Otra cosa que los motores de búsqueda realmente les gusta es el contenido fresco. Si tiene contenido que se actualiza con regularidad entonces los motores de búsqueda dicen, ooh, me gusta su sitio. Voy a ir a su sitio con mucha frecuencia. Voy a indexar una gran cantidad de sus páginas. Si usted tiene un nuevo contenido, entonces es más probable que aparezca - usted es más probable que sea más relevante. Es más probable que sea más actualizada, y los motores de búsqueda son más propensos a poner su sitio por encima de los demás. Los enlaces profundos son también importantes. Si realmente quería su sitio para quedar bien ante los ojos de un motor de búsqueda tenemos un montón de otros sitios web vinculados a ella y vinculados profundamente en su sitio web. No se limite a enlazar a la página principal. Enlace a tal yourname.com / algo / algo / something.php. Que - a un motor de búsqueda - significa, wow, que tienen un contenido muy interesante que alguien más es la vinculación tan profundamente en su sitio esté de mí muy, muy poner más importancia en las páginas de ese sitio. Si usted tiene los títulos de página precisos, si no tiene errores, eso es bueno, porque si un motor de búsqueda es tratar de visitar su sitio web, y es cada vez un error, que probablemente va a renunciar a muy, muy pronto. Y, por último, usted quiere tener un tiempo de carga rápida porque los motores de búsqueda - al igual que los seres humanos - NO tener mucha paciencia para los sitios web lentos. Esta es una manera para que usted pueda asegurarse de que usted se presenta mayor en las consultas de búsqueda del motor y con ello esperamos conseguir más tráfico. Porque después de todo, usted ha pasado todo este tiempo el desarrollo de su sitio web. Te has pasado todo este tiempo el lanzamiento de este sitio web en línea. Usted quiere asegurarse de que usted tiene un montón de usuarios que realmente ve tu sitio. Otros buenos recursos a utilizar. Google Webmaster Tools es algo que esperamos para. Esto sólo ayuda a ver - Google no indexa mi sitio. ¿Qué tipo de errores que se enfrentan? ¿Cuántas páginas que ha indexado? ¿Qué crees que es el contenido más importante en mi página? Tal vez eso no es lo que yo quiero que sea. Tal vez tengo que cambiar mi sitio web un poco de tal manera que se refleja mejor lo que mi sitio web es realmente. Google Analytics es una herramienta genial. Usted puede agregar un poco de JavaScript a sus páginas. Y luego después se puede ir a Google Analytics, y se hará un seguimiento su demografía de los visitantes y el crecimiento de su sitio. Se le dirá exactamente cuántos visitantes visitan su sitio dentro de un cierto día, dentro de una cierta hora, dentro de un cierto semanas. ¿Cuántos visitantes de China? ¿Cuántos visitantes de la Antártida - que está recibiendo de su sitio web. eso podría ser algo bueno para ver o incluso podría ser útil porque usted está tratando de dirigirse a un determinado grupo. Tal vez usted está tratando de apuntar a los adolescentes con su sitio web, y ver que la mayoría de los visitantes de su sitio web son quizá 30 - de edad de 40 años, entonces tal vez sea usted tiene un problema o puede simplemente decir: así, entonces tal vez debería cambiar el enfoque de mi sitio web para que Me centro más en ese grupo de edad. Google Apps - si quería tener una especie de mensajes de correo electrónico con su nombre de dominio - tal vez algo como yourname@yourname.com-- puede utilizar las direcciones de gmail - se puede utilizar el servicio de Gmail y Google Apps es una manera de hacer eso. Puede configurar direcciones de correo electrónico específicas que son específicos de su nombre de dominio lugar of@gmail.com. Y, por último, hay extensiones para desarrolladores web y complementos - para Chrome, para Firefox, para otros navegadores - que le permiten entrar y inspeccionar CSS, JavaScript inspeccionar, ver exactamente lo que está mal con la secuencia de comandos JavaScript y tal vez eso va a ser útil para sus fines el depurado, para usted saber - así, ¿por qué no está mi sitio web muestra correctamente en este navegador? Y, por último, si desea obtener más información sobre todos estos temas - si desea obtener más información sobre HTML y CSS y JavaScript - porque después de todo, sólo te enseña un poco - usted puede ir a sitios web como W3Schools.com para buscar más recursos. Tienen muy buenos tutoriales sobre cómo lo hago x, o lo que quiere decir y? Si quieres saber más sobre estos idiomas, puede simplemente ir aquí. Está bien. Creo que quería dejar los últimos minutos de este para las preguntas, así que ¿hay alguna pregunta acerca de cualquier cosa que hemos hablado? [Miembro de la audiencia] ¿Qué tipo de cosas están en W3Schools y cómo se cubren? [Yuechen Zhao] ¿Qué tipo de cosas? Así, una de las cosas más grandes que yo uso mucho es sus referencias. Sus referencias detalle, por ejemplo, para CSS - lo que esto significa, o si desea cambiar el fondo de una página - ¿cómo lo haces? ¿Qué navegadores soportan este comando? Cosas así. Y entonces también sólo tienen muy buenos tutoriales en HTML, en PHP, en JavaScript, en MySQL, sobre todo tipo de temas diferentes. Tienen buenos tutoriales. Te enseñan cómo hacer las cosas. Es agradable ser capaz de ir y conocer más sobre estos temas aprender. [Miembro de la audiencia] HTML 5 aún no es compatible con todos los navegadores que hay. ¿Le recomendaría a mantenerse alejado de él debido a problemas de compatibilidad? ¿Cómo lidiar con eso? [Yuechen Zhao] Sí, es así, la pregunta es HTML5 es todavía un estándar de bebé. En realidad no es soportado por muchos navegadores, por lo que debemos evitar? Creo que el año pasado habría sido un gran defensor de la, Evitemos HTML5 porque todavía es - es todavía muy nuevo y, de hecho, el estándar HTML 5 aún no ha sido finalizado. Y así, realmente no hay un estándar HTML5. Pero creo que sobre todo si usted está diseñando un sitio web ahora, tal vez sería mejor si sólo vas con HTML5, ya que es una especie de la que va a ser el futuro, y si usted quiere que su sitio web para estar preparada para el futuro y desea que su sitio web para trabajar en los futuros exploradores, tal vez sería mejor para empezar a construir algo para el futuro que en el pasado, y sólo por el hecho de que HTML5 realmente no es tan diferente de HTML 4 o XHTML. Si está utilizando HTML5, que normalmente funciona en la mayoría de los navegadores. Sólo tienes que ordenar de entrar y asegurarse con estas capturas de pantalla y asegurarse de que va a estos sitios usted mismo. Pero lo más probable es que va a funcionar a menos que estés usando características muy específicas para HTML5. Observe también que para CS50 - por ejemplo, para el reproductor de vídeo que se utiliza - que utiliza HTML5 HTML5 y vídeo para mostrar las conferencias. Pero si usted tiene un navegador muy viejo, entonces va a caer de nuevo en flash. Entonces, eso es también algo más - tener un sistema de resguardo para cuando usted acaba de saber que el navegador no se va a manejar lo que usted quiere manejar. Otras preguntas? Todo lo que hemos hablado. Está bien. Entonces creo que eso es todo para mí. Creo que eso es todo. (Aplausos) Genial. [CS50.TV]