El software de blogs utiliza para alimentar este sitio, acaba de tener su 10 aniversario. En la última década se ha vuelto muy popular, y actualmente representa alrededor del 18% de todos los sitios web. Debido a mi trabajo en (MT) Media Temple, he llegado a Admin en varias veces a lo largo de los años, y así tener una idea bastante buena de cómo optimizar todo lo necesario para una buena eficiencia. En este tutorial de configuración de WordPress, voy a caminar a través de la configuración de la calidad de producción que tengo para este blog, que hace uso de, y.
ACTUALIZACIÓN: He cambiado recientemente sobre el uso de plug-in para el almacenamiento en caché para el plugin. Mis razones son variadas. Aunque no creo que proporciona exactamente el mismo nivel de rendimiento básico para la caché de páginas que Super GT caché hace, yo sigo pensando que es la mejor opción en este momento. Cuenta con opciones adicionales significativos, es trivial para configurar y hace un gran uso de la caché de APC cuenta si está disponible. Si hay suficiente interés Voy a actualizar este post o hacer otra para hablar de ello.
Voy a estar haciendo varias suposiciones en este artículo. Específicamente:
Hay una variedad de cosas que usted desea instalar en su sistema. Para empezar, vamos a instalar Nginx y MariaDB. Nginx es muy fácil ya que tengo una con todos los extras que necesita listo para funcionar. En caso de que no lo tiene, instalar python-software-properties con:
Ahora, usted puede agregar mi Nginx PPA e instalarlo:
MariaDB también es muy fácil de instalar. Tendrá que importar su clave de firma en primer lugar con el comando:
Al instalar el software de servidor, vas a tener que introducir una contraseña para el usuario root MariaDB (que no debe confundirse con el usuario root del sistema, a pesar de que se utilizan de manera similar aquí). De cara al futuro, vamos a preseleccionar una contraseña segura con el generador de contraseñas APG.
Esto generará una media docena razonablemente fuertes contraseñas de 10 caracteres para elegir. Elegir uno y tenerlo a mano. Ahora, para instalar MariaDB, utilice su editor favorito (estoy asumiendo que es, obviamente) y crear el archivo:
Ponga la siguiente * en el archivo:
* Si está utilizando una distribución diferente de Ubuntu Lucid (10.04), reemplace lúcido en las dos líneas anteriores con el nombre de una distribución que tiene instalado.
Ahora, instale MariaDB con los comandos:
El instalador le pedirá una contraseña para el usuario root, así que introduzca la contraseña que obtuvo de la salida APG anterior. Para un consejo profesional, hacer un archivo en ~ / .my.cnf con el siguiente contenido:
y cambiar los permisos por lo que sólo se puede leer:
Ahora usted no tendrá que introducir el nombre de usuario y contraseña cuando se escribe a mysql que utilice el cliente MariaDB.
Lo último que es para instalar el software PHP es necesario. Si está ejecutando Ubuntu Lucid, utilice el siguiente comando para agregar un PPA PHP5 mantenida por Ondřej Sury:
Si está utilizando una versión más nueva que lúcido que no tendrá que hacer ese paso. A continuación, instalar todas las cosas que necesitaremos PHP con:
Vamos a tener que configurar las cosas que acaba de instalar para un rendimiento óptimo. Vamos a empezar con la base de datos. Configuración de una base de datos correctamente es una cantidad nivel de la carrera de los conocimientos en estos días, así que no hay nada que realmente te puedo decir en un post como este que cubrirá todos los casos. Pero hay algunas cosas que podemos hacer a la configuración por defecto que por lo general siempre ayudar en este caso particular, WordPress.
En primer lugar, abrir el archivo
en el editor de texto. Busque una línea que dice:
y añadir las siguientes tres líneas por debajo de ella:
Estos aseguran que el conjunto de caracteres por defecto es UTF-8, que el servidor no tratar de hacer búsquedas por nombre DNS (que no debería tener que hacer aquí) y que el bloqueo externo no está habilitada en base. Tenga en cuenta que con la fijación de discapacitados, que necesita para asegurarse de apagar el servidor si alguna vez tiene que ejecutar myisamchk para reparar algo.
A continuación, es probable que desee aumentar el valor por defecto para el key_buffer. Lo que se utiliza depende de la cantidad de memoria disponible en el sistema, pero aumentarla a partir del valor predeterminado 16M es una buena idea si se puede. Este sitio actualmente utiliza la configuración:
Por último, es posible que desee cambiar el valor predeterminado de la caché de consultas de bases de datos. Busque la línea que dice:
El valor por defecto del 16M es probablemente muy bien para la mayoría de los blogs. Si se obtiene una gran cantidad de tráfico es posible que desee aumentar este valor, pero nunca elevarla a más de 512 Mb, ya que comienza a hacer más daño que bien en ese punto. Incluso para un blog con una gran cantidad de tráfico, 128M o 256M es generalmente un montón. Reiniciar el servidor para recoger estos cambios con
Por supuesto, tendrá que crear una base de datos para su blog. Vamos a suponer que se llama example_com_wordpress. Usted querrá para generar otra contraseña como lo hicimos antes de que es específico para esta base de datos. NO use la misma contraseña que usted tiene para el usuario root. Una vez que tenga esto, entrar en el símbolo del sistema MariaDB simplemente escribiendo
en la línea de comandos. A continuación, utilice los siguientes comandos para crear su base de datos y dejarlo listo para su uso (nota de la forma en que estamos en la línea de MariaDB):
A continuación, teclee salir para salir de MariaDB, y su base de datos está listo para ir.
A continuación, vamos a configurar php5-pies por minuto. Abrir el archivo en
y buscar las directivas de usuario y grupo. Cambiar estos para que PHP se ejecuta como el usuario de ejemplo de esta manera:
A continuación, busque la directiva escuchar y cambiarlo para que diga:
de manera que Nginx se puede comunicar a PHP a través de una y de este modo evitar la pila TCP que no es necesario. Por último, hay algunas directrices para el gestor de procesos que podrían utilizar algunos cambios. La configuración ideal depende de su tráfico y hardware, pero este sitio está usando actualmente:
y que debe ser un buen punto de partida para la mayoría de los blogs.
Por último para PHP, usted debe hacer una edición rápida en el fichero:
donde querrá asegurarse se establece lo siguiente:
Ahora debería ser capaz de disparar hasta sus procesos PHP con el comando:
El último, y el más involucrado cosa que necesita para configurar Nginx es. Para empezar, tenemos también a querer ejecutarlo como nuestro ejemplo de usuario. Abrir el archivo:
y establecer la directiva de usuario
En términos generales, usted quiere tener la mayor cantidad de procesos de trabajo como lo hace núcleos de CPU físicas. Si no está seguro de cuántos núcleos que tiene, el comando
Te contaré. Por lo tanto, si usted tiene una máquina de cuatro bases, establecer
A continuación, haremos una configuración de servidor virtual para nuestro sitio example.com. Si usted va a ejecutar un sitio de WordPress producción, generalmente se recomienda el uso de algún tipo de plugin de almacenamiento en caché si espera que el tráfico real. Nuestra configuración va a ser adaptado para aprovechar el plugin, que funciona muy bien y está escrito por uno de los ingenieros principales de WordPress.
Crear un nuevo archivo llamado example.com aquí:
Para empezar, vamos a definir un Nginx aguas arriba para PHP escuchar el socket de Unix que se especifica anteriormente. Ponga lo siguiente en el comienzo de nuestro archivo de configuración example.com:
Después de eso viene algunas directivas Nginx bastante sencillas para decirle qué puerto para la escucha, lo que es el nombre del servidor, donde se ha conectado, y así sucesivamente:
La única cosa es posible tener en cuenta es la directiva add_header en la línea 12, que debe mantener su sitio de ser incrustado en un <frame> o <iframe> en cualquier lugar. Si por alguna razón se quiere que esto sea posible, eliminar esa línea. Después de esto, tenemos algunas directivas de reescritura para hacer que el mapa que se genere correctamente:
y luego algunas directivas específicas de la ubicación para el favicon, archivo robots.txt, y para mantener a la gente fuera de algunos directorios y archivos comunes que no deben ser públicas:
Ahora a la parte buena, donde se parte Nginx para utilizar Super GT caché. Es más fácil de explicar cómo funciona esto si ya se puede ver la configuración, así que aquí está, y vamos a ir sobre ella a continuación:
Líneas 35 a 46 son bastante obvias. Ellos dicen Nginx dónde buscar un archivo de índice con la directiva try_files y configurar la compresión gzip. La directiva gzip_static es algo interesante. Se dice que Nginx si ve un archivo que se supone que debe estar en formato gzip, se debe buscar un archivo en el mismo directorio con el mismo nombre que termina en ".gz", y si está allí, para servir a ese directamente. Hacer esto mantiene el servidor de tener que comprimir el archivo cada vez que se sirve.
La parte realmente interesante, sin embargo, comienza en la línea 48. Aquí es donde obtenemos Nginx jugar muy bien con Super GT caché. En primer lugar, si la solicitud corresponde a un archivo real en el sistema de archivos, le decimos a Nginx sólo sirven y seguir adelante. A continuación nos propusimos algunas variables que necesitaremos. Si el tipo de solicitud es un método POST, o si hay alguna especie de cadena de consulta, se deshabilita la caché mediante el establecimiento de $ supercache_uri a estar en blanco. Si hemos llegado hasta aquí y que la variable no está en blanco, entonces buscamos un archivo llamado en forma determinista
Por ejemplo, si usted tenía un estándar de "Acerca de" ubicado en Nginx se buscará el archivo
/wp-content/cache/supercache/example.com/about/index-http.html Esto corresponde exactamente a la forma en Super GT caché escribe sus archivos "supercached" para el sistema de ficheros. La belleza de esta configuración es que si existe un archivo almacenado en caché, Nginx servirá sin tener que hablar con PHP en absoluto. Esto es muy bueno, porque Nginx es sorprendentemente bueno en que sirve contenido estático, como estos archivos almacenados en caché, y se mantiene PHP de tener que hacer el trabajo a menos que realmente necesita. Si hay alguna legítima "salsa secreta" en esta receta de configuración, esto es él. Las últimas estrofas que necesitan contar Nginx cómo hablar con PHP usando FastCGI, y luego simplemente establece algunos encabezados de caducidad para nuestros tipos de contenido estático: 77 78 79 80 81 82 83 84 85 86 87 88 89 ubicación ~ \ {$ .php #NOTA: Usted debe tener "cgi.fix_pathinfo = 0;" en php.ini incluir fastcgi_params; index.php fastcgi_index; fastcgi_intercept_errors sucesivamente; php fastcgi_pass; } ubicación ~ *. \ (Js ?: | css | png | jpe g |? Gif | ico | html | txt) {$ expira 7d; log_not_found fuera; } } Ahora estamos listos para convertir en Nginx. Vamos a tener que eliminar la configuración predeterminada que se incluye con Nginx, SYMLINK nuestra configuración en el directorio sites-enabled y, a continuación, disparar hacia arriba. cd / etc-habilitado sitios / nginx / sudo rm -fv predeterminado sudo ln -s ../sites-available/example.com. sudo /etc/init.d/nginx inicia Si la que todas las obras, estamos en el tercer y último tramo. Paso 3: Instalación y configuración de WordPress Este es un tutorial sobre la configuración del servidor, así que voy a asumir que usted puede manejar los conceptos básicos de la misma. Usted querrá poner todo en la /var/www/example.com directorio, que tendrá que crear y configurar a ser propiedad de nuestro ejemplo de usuario: cd / var / www sudo mkdir example.com sudo chown -R ejemplo: example.com ejemplo Asegúrese cuando se pone los archivos de WordPress en allí, se les va a instalar como ejemplo el usuario. Editar el archivo wp-config.php para utilizar la base de datos example_com_wordpresscon las credenciales hemos creado anteriormente. Además, asegúrese de establecer valores aleatorios de las claves únicas y sales. Automattic tiene que ayudar a hacer esto. Una vez que tenga WordPress en marcha y funcionando, hay sólo unos pocos pasos más antes de que esté listo para comenzar su imperio de blogs. En primer lugar, establecer enlaces permanentes bonitas para su blog. En la administración de WordPress, simplemente vaya a Preferencias-> Enlaces permanentes, elegir la opción "costumbre", y poner el siguiente en la estructura de enlaces: /% año% /% monthnum% / día%% /% postname% / Esto le dará que la fecha centrada en la estructura de enlaces estándar que muchos blogs populares tienen. El paso final es la creación de Super GT caché. Ir a Plugins-> Agregar nuevo y busque "Super GT caché". A partir de PHP se ejecuta como el mismo usuario que posee los archivos de WordPress y el directorio, se puede instalar el plugin para usted (también se puede actualizar fácilmente WordPress para usted, como un bono adicional). A continuación, tendrá que configurarlo. Navegar a la página de configuración para el plugin, y haga clic en la pestaña Opciones avanzadas. Marque la casilla para "Caché golpea aeste sitio web para acceder con más rapidez ", a continuación, haga clic en el botón de opción" Usar el mod_rewrite para servir archivos de caché ". Usted debe ignorar las advertencias en la parte superior de la página que se quejan de mod_rewrite no está instalado. El plug-in se supone que está utilizando Apache para servir al sitio, pero no estás, por lo que esta advertencia es superfluo. Por último, desplácese hacia abajo y haga clic en el botón "Actualizar estado" para guardar los cambios. Después de esto, la sesión del administrador, vaya a su página de inicio y recargar un par de veces. Si ve la fuente de la página, abajo, cerca de la parte inferior, debería ver algunos comentarios que indican que la página es una página en caché. Si es así, enhorabuena, ya está todo hecho! En Conclusión Esta es la configuración que he perfeccionado a lo largo de varios años, a partir de cuando se mantiene en funcionamiento Techcrunch fue parte de la descripción de mi trabajo. Ha funcionado bien para mí para una gran cantidad de sitios de WordPress (incluido éste), así que espero que les sea útil. Si hay preguntas o problemas, por favor, házmelo saber en los comentarios. Compartir: Como esto: ComoCargando...
.