Registrarse
Home
Foros
Miembros
Calendario
Normas
Ayuda

Foros de usuarios de openSUSE
Retroceder   ForoSUSE > Zona Técnica > Seguridad y Servidores


Síguenos en Twitter Suscríbete a nuestras noticias Acompáñanos en Facebook

Tema Cerrado
 
Herramientas Desplegado

Guia Servidor Web con LAMP: Linux Apache MySQL PHP
  #1  
Antiguo 11-jun-2010, 16:36
Avatar de DiabloRojo
DiabloRojo DiabloRojo está desconectado
Super Moderador
 
Fecha de Ingreso: 19-marzo-2005
Ubicación: En un lugar del planeta Tierra
Versión: La ultima estable
Mensajes: 14.045
Agradecimientos: 340
Agradecido 1.205 Veces en 781 Mensajes
Poder de Credibilidad: 10
DiabloRojo llegará a ser famoso muy pronto
Arrow Guia Servidor Web con LAMP: Linux Apache MySQL PHP

Cualquier sugerencia, comentario, etc... destinado para ser mejorada esta guía es bienvenido, pero por favor escribir en este tema:
Comentarios a la Guia Servidor Web con LAMP: Linux Apache MySQL PHP

A raíz de un curso de PHP que voy hacer, donde nos pide que instalemos un servidor Web con Base de Datos en nuestra computadora para hacer las practicas de PHP y MySQL. He decidido hacer una guía de ello para que la gente, en mi instalación me he guiado por la guía oficial de openSUSE: Linux Apache MySQL PHP Server (lamp)

* Indice

  1. Objetivo y licencia de esta Guía y breve glosario.
  2. La instalacion propiamente dicha.
  3. Ejecutando Apache y comprobando su funcionamiento.
  4. Comprobando el funcionamiento de PHP.
  5. Ejecutando MySQL y comprobando su funcionamiento (1ª Parte).
  6. Ejecutando MySQL y comprobando su funcionamiento (2ª Parte).
  7. Instalado phpMyAdmin y comprobando su funcionamiento.
  8. Eliminar la información de las versiones en las cabeceras de HTTP
  9. Activar mod_rewrite de Apache
  10. Consideraciones finales a tener en cuenta: Firewall, router, etc...
  11. Solución a problemas comunes.
  12. Sugerencias para la Guia Servidor Web de DiabloRojo


El objetivo de esta guía es comprender como se instala un servidor Web, como se comprueba su funcionamiento, etc... dicha guía esta pensada para ser manejada exclusivamente gráficamente, nada de usar comandos para ello excepto la 2ª parte de la configuración de MySQL que es absolutamente necesario teclear varios comandos para configurarlo.

He procurado que esta guía sea lo mas visual posible y con el texto imprescindible para explicar las imágenes. Algunas de ellas por su tamaño se presenta en miniaturas pero haciendo click en ella os aparecerá una nueva ventana con la imagen ampliada.


Este trabajo esta licenciado bajo los términos de / This work is licensed under a Creative Commons Attribution 3.0 Spain License.

Última edición por DiabloRojo; 24-jul-2013 a las 18:29
El Siguiente Usuario Ha Dado las Gracias a DiabloRojo Por Este Mensaje:
ikel (03-nov-2013)
La instalacion propiamente dicha
  #2  
Antiguo 11-jun-2010, 16:37
Avatar de DiabloRojo
DiabloRojo DiabloRojo está desconectado
Super Moderador
 
Fecha de Ingreso: 19-marzo-2005
Ubicación: En un lugar del planeta Tierra
Versión: La ultima estable
Mensajes: 14.045
Agradecimientos: 340
Agradecido 1.205 Veces en 781 Mensajes
Poder de Credibilidad: 10
DiabloRojo llegará a ser famoso muy pronto
La instalacion propiamente dicha

Vamos a instalar los paquetes de nuestro Servidor Web y LAMP, para eso utilizaremos los paquetes existentes del patron "Servidor Web y LAMP".

Abrimos Yast. Nos vamos a Inicio->seleccionamos la pestaña "Maquina" y pinchamos en Yast.

En Yast nos vamos a "Software"->"Instalar / desinstalar software" donde nos aparecerá una ventana.

Seleccionamos "Ver"->"Patrones", a la izquierda esta los patrones, bajamos hasta que aparezca "Funciones del servidor" para seleccionar y marcar "Servidor web y LAMP", ver imagen de abajo. Verificar que el paquete apache2-mod_php5 este marcado ya que es necesario para el correcto funcionamiento de PHP.




Pinchamos en el botón "Aceptar" y nos saldrá una ventana con los paquetes a instalar, solo tenemos que pinchar en "Continuar", ver imagen.



Se instalara los paquetes necesarios para tener nuestro Servidor Web y LAMP.

Última edición por DiabloRojo; 19-dic-2012 a las 20:52
Los Siguientes 4 Usuarios Han Dado las Gracias a DiabloRojo Por Este Mensaje:
aldobelus (15-nov-2012), becar (22-ago-2010), ikel (03-nov-2013), rasielflop (12-mar-2014)
Ejecutando Apache y comprobando su funcionamiento
  #3  
Antiguo 11-jun-2010, 16:37
Avatar de DiabloRojo
DiabloRojo DiabloRojo está desconectado
Super Moderador
 
Fecha de Ingreso: 19-marzo-2005
Ubicación: En un lugar del planeta Tierra
Versión: La ultima estable
Mensajes: 14.045
Agradecimientos: 340
Agradecido 1.205 Veces en 781 Mensajes
Poder de Credibilidad: 10
DiabloRojo llegará a ser famoso muy pronto
Ejecutando Apache y comprobando su funcionamiento

Una vez instalados los paquetes, tenemos que activar y configurar los distintos elementos que compone nuestro servidor Web y LAMP.

En este caso hablamos de Apache que es el Servidor Web propiamente dicho.

Abrimos Yast. Nos vamos a "Sistema"->"Servicios de sistema (niveles de ejecucion" donde nos aparecerá una ventana nueva, pinchamos en "modo experto" para ampliar la informacion de la ventana.

Abajo, seleccionamos los niveles de ejecución 3 y 5 y en el botón "Iniciar/Detener/Actualizar" seleccionamos la opción "Iniciar ahora...".





Si el proceso es correcto os aparecerá una ventana con el resultado, este debe ser 0 de éxito. Pinchamos "Aceptar" donde nos saldrá una ventana de que si aceptamos no los cambios, solo hay que pulsar "Aceptar" para tenerlo activado para siempre.




Ahora vamos a comprobar de que Apache funciona correctamente.

Abrimos nuestro navegador favorito y en el campo de dirección tecleamos "127.0.0.1" o "localhost" y si nos sale el texto "It works!" en negrita y letra grande, es que funciona correctamente Apache.

Para mayor facilidad os pongo los enlaces para que lo pinchéis, cualquiera de los dos vale para comprobar si Apache funciona:
http://127.0.0.1
http://localhost



Si alguien tiene curiosidad para saber donde localiza Apache los archivos html, en concreto el index.html de la imagen de arriba, ir a la carpeta /srv/www/htdocs

TRUCO: Podéis cambiar los permisos de propietario al contenido de la carpeta htdocs. Deberéis saber que el grupo es www y el propietario es wwwrun
chown -R wwwrun:www /srv/www/htdocs/*

Si instaláis algún gestor de contenido o CMS como Joomla, a la carpeta de joomla cambiarle los permisos del propietario de esta manera para que no tengáis problemas con ella durante la instalación. Podéis verlo en esta Guía.
chown -R wwwrun:www /srv/www/htdocs/joomla/


Última edición por DiabloRojo; 11-sep-2013 a las 19:33
Los Siguientes 2 Usuarios Han Dado las Gracias a DiabloRojo Por Este Mensaje:
ikel (03-nov-2013), rasielflop (12-mar-2014)
Comprobando el funcionamiento de PHP
  #4  
Antiguo 11-jun-2010, 16:38
Avatar de DiabloRojo
DiabloRojo DiabloRojo está desconectado
Super Moderador
 
Fecha de Ingreso: 19-marzo-2005
Ubicación: En un lugar del planeta Tierra
Versión: La ultima estable
Mensajes: 14.045
Agradecimientos: 340
Agradecido 1.205 Veces en 781 Mensajes
Poder de Credibilidad: 10
DiabloRojo llegará a ser famoso muy pronto
Comprobando el funcionamiento de PHP

Ahora vamos a comprobar el correcto funcionamiento de PHP.

Con cualquier editor de texto como kwrite, kate, mousepad, gedit, etc... Ir a Inicio->Aplicaciones->Utilidades->Editor para seleccionar nuestro editor de texto donde creamos un archivo llamado phpinfo.php que contiene el siguiente texto. Copiar y Pegarlo en el editor de texto abierto:
Código PHP:
<?php
    phpinfo
()
?>
Lo guardamos en la carpeta public_html del directorio raíz de nuestro usuario, ver imagen de abajo.




Abrimos nuestro navegador favorito y en el campo de dirección tecleamos "127.0.0.1/~nuestro_usuario" o "localhost/~nuestro_usuario", el caracter '~' se selecciona pulsando las teclas "Alt Gr" + "4", a continuación el nombre del usuario y nos sale un listado del contenido de la carpeta public_html, ver imagen mas abajo. Solo tenemos que pinchar o hacer Click en la palabra "phpinfo.php"...




Si PHP esta correctamente funcionando os aparecerá pagina de informacion con datos de PHP, como el de la imagen de abajo, pinchar en la imagen para ampliarla:


Última edición por DiabloRojo; 16-oct-2011 a las 12:23
El Siguiente Usuario Ha Dado las Gracias a DiabloRojo Por Este Mensaje:
ikel (03-nov-2013)
Ejecutando MySQL y comprobando su funcionamiento (1ª Parte)
  #5  
Antiguo 11-jun-2010, 16:39
Avatar de DiabloRojo
DiabloRojo DiabloRojo está desconectado
Super Moderador
 
Fecha de Ingreso: 19-marzo-2005
Ubicación: En un lugar del planeta Tierra
Versión: La ultima estable
Mensajes: 14.045
Agradecimientos: 340
Agradecido 1.205 Veces en 781 Mensajes
Poder de Credibilidad: 10
DiabloRojo llegará a ser famoso muy pronto
Ejecutando MySQL y comprobando su funcionamiento (1ª Parte)

En este caso hablamos de MySQL que es la base de datos.

Abrimos Yast. Nos vamos a "Sistema"->"Servicios de sistema (niveles de ejecución" donde nos aparecerá una ventana nueva, pinchamos en "modo experto" para ampliar la informacion de la ventana.

Vamos a inicializar el servicio, seleccionamos el botón "Iniciar/Detener/Actualizar" seleccionamos la opción "Iniciar ahora...".




Si el proceso es correcto os aparecerá una ventana con el resultado, este debe ser 0 de éxito.




Ahora vamos a activar que niveles de ejecución debe funcionar la base de datos, nos vamos al botón "Establecer/Restablecer" seleccionamos "Activar el servicio" y automáticamente nos selecciona los niveles de ejecución 2, 3 y 5.

Pinchamos "Aceptar" donde nos saldrá una ventana de que si aceptamos o no los cambios para almacenar, solo hay que pulsar "Aceptar" para tenerlo activado para siempre.


Última edición por DiabloRojo; 02-feb-2011 a las 09:00
El Siguiente Usuario Ha Dado las Gracias a DiabloRojo Por Este Mensaje:
ikel (03-nov-2013)
Ejecutando MySQL y comprobando su funcionamiento (2ª Parte)
  #6  
Antiguo 11-jun-2010, 16:40
Avatar de DiabloRojo
DiabloRojo DiabloRojo está desconectado
Super Moderador
 
Fecha de Ingreso: 19-marzo-2005
Ubicación: En un lugar del planeta Tierra
Versión: La ultima estable
Mensajes: 14.045
Agradecimientos: 340
Agradecido 1.205 Veces en 781 Mensajes
Poder de Credibilidad: 10
DiabloRojo llegará a ser famoso muy pronto
Ejecutando MySQL y comprobando su funcionamiento (2ª Parte)

Ahora vamos a activar y después configurar MySQL para protegerlo de los ataques que venga de la Web a nuestro Servidor Web y LAMP, es decir, para hacerlo mas seguro.

Abrimos un Terminal en Inicio; entramos como superusuario root con el siguiente comando e introducir la contraseña de root:
Cita:
su -
Activamos MySQL con el siguiente comando:
Cita:
mysql_install_db --user=mysql



Ahora vamos a mejorar la seguridad de MySQL.

Ejecutamos el siguiente comando
Cita:
/usr/bin/mysql_secure_installation
Donde nos pedirá una contraseña para el usuario root de MySQL pero como lo acabamos de instalar no existe asi que pulsar "Enter", OJO no confundirlo con el superusuario root de nuestro sistema u openSUSE.

A continuación contestaremos 'Y' de yes (si) a cada pregunta, en la 1ª pregunta nos pedirá una contraseña para el usuario root de MySQL que NO deberéis del olvidadla nunca, necesario para entrar con phpMyAdmin que lo comentaremos despues.

Cita:
Set root password? [Y/n] y

Remove anonymous users? [Y/n] y

Disallow root login remotely? [Y/n] y

Remove test database and access to it? [Y/n] y

Reload privilege tables now? [Y/n] y
Os dejo las imágenes de la ejecución y las contestaciones de las preguntas.






Y ahora comprobamos su funcionamiento, solo hay que ejecutar el comando mysqlshow -u root -p , a continuación la password del usuario root de MySQL, OJO, no la password del superusuario root de sistema; donde nos aparecerá las tablas ya creadas.

Código:
mysqlshow -u root -p
Enter password: 
+--------------------+
|     Databases      |
+--------------------+
| information_schema |
| mysql              |
+--------------------+

Última edición por DiabloRojo; 02-feb-2011 a las 09:00
El Siguiente Usuario Ha Dado las Gracias a DiabloRojo Por Este Mensaje:
ikel (03-nov-2013)
Instalado phpMyAdmin y comprobando su funcionamiento
  #7  
Antiguo 11-jun-2010, 16:40
Avatar de DiabloRojo
DiabloRojo DiabloRojo está desconectado
Super Moderador
 
Fecha de Ingreso: 19-marzo-2005
Ubicación: En un lugar del planeta Tierra
Versión: La ultima estable
Mensajes: 14.045
Agradecimientos: 340
Agradecido 1.205 Veces en 781 Mensajes
Poder de Credibilidad: 10
DiabloRojo llegará a ser famoso muy pronto
Instalado phpMyAdmin y comprobando su funcionamiento

Ahora vamos a instalar un programa llamado phpMyAdmin que sirve para administrar, gestionar, crear, borrar, añadir, etc... la base de datos MySQL

Abrimos nuestro navegador favorito para introducir la siguiente url http://software.opensuse.org/search que corresponde al buscador de paquetes de openSUSE, seleccionamos nuestra version de openSUSE e introducimos "phpMyAdmin" como texto a buscar. Nos aparece el resultado de la búsqueda y pinchamos en "1-Click Install" para empezar a instalarlo.



Demarcamos la casilla "Mantener la suscripción de estos repositorios después de la instalación" e instalamos aceptando la importación de la llave PG de repositorio.

Ahora vamos a comprobar el funcionamiento de phpMyAdmin, para eso abrimos nuestro navegador favorito y tecleamos "127.0.0.1/phpMyAdmin" o "localhost/phpMyAdmin" y nos pedirá la contraseña del usuario root de MySQL introducida en el paso anterior. OJO, no confundirlo con el superusuario root de nuestro sistema u openSUSE.

Para mayor facilidad os pongo los enlaces para que lo pinchéis, cualquiera de los dos vale para comprobar si phpMyAdmin funciona:
http://127.0.0.1/phpMyAdmin
http://localhost/phpMyAdmin




Esta es la imagen, click en ella para verla, del correcto funcionamiento de phpMyAdmin.


Última edición por DiabloRojo; 02-feb-2011 a las 09:01
Los Siguientes 9 Usuarios Han Dado las Gracias a DiabloRojo Por Este Mensaje:
aldobelus (15-nov-2012), alexvillalon699 (07-nov-2012), armando (18-oct-2011), GALAXIS (16-mar-2012), ikel (03-nov-2013), julioeep (05-oct-2011), kofabj (28-jun-2011), RoC3 (05-abr-2011), tranzorx (06-dic-2010)
Eliminar la información de las versiones en las cabeceras de HTTP
  #8  
Antiguo 20-dic-2012, 20:09
Avatar de DiabloRojo
DiabloRojo DiabloRojo está desconectado
Super Moderador
 
Fecha de Ingreso: 19-marzo-2005
Ubicación: En un lugar del planeta Tierra
Versión: La ultima estable
Mensajes: 14.045
Agradecimientos: 340
Agradecido 1.205 Veces en 781 Mensajes
Poder de Credibilidad: 10
DiabloRojo llegará a ser famoso muy pronto
Eliminar la información de las versiones en las cabeceras de HTTP

Esta parte es OPCIONAL, no afecta a la seguridad del servidor Web. Lo he añadido por petición expresa de un compañero del foro.

Por defecto, Apache muestra información de las versiones instaladas cuando se consulta con el comando curl o cuando aparece un error 404 de pagina no encontrada, ver 3ª linea de la salida del comando curl.

Cita:
curl -I localhost
HTTP/1.1 200 OK
Date: Thu, 20 Dec 2012 18:27:53 GMT
Server: Apache/2.2.22 (Linux/SUSE)
Last-Modified: Sat, 20 Nov 2004 20:16:24 GMT
ETag: "e4d76-2c-3e9564c23b600"
Accept-Ranges: bytes
Content-Length: 44
Content-Type: text/html
Si queréis quitarlo, solo tenéis que editar el archivo /etc/sysconfig/apache2

Y cambiar a estos valores de las variables:
Cita:
APACHE_SERVERTOKENS="Prod"
APACHE_SERVERSIGNATURE="off"
Y en caso de PHP, hay que editar el archivo /etc/php5/cli/php.ini y cambia el valor de una variable
Cita:
expose_php = Off
Reinicializar apache2 para que los cambios tenga efecto:
sudo systemctl restart apache2.service

Y comprobamos si ha funcionado, fijaros que solo aparece Apache en la 3ºª linea:
Cita:
curl -I localhost
HTTP/1.1 200 OK
Date: Thu, 20 Dec 2012 19:21:41 GMT
Server: Apache
Last-Modified: Sat, 20 Nov 2004 20:16:24 GMT
ETag: "e4d76-2c-3e9564c23b600"
Accept-Ranges: bytes
Content-Length: 44
Content-Type: text/html

Última edición por DiabloRojo; 20-dic-2012 a las 20:32
El Siguiente Usuario Ha Dado las Gracias a DiabloRojo Por Este Mensaje:
kubaru (28-ene-2013)
Activar mod_rewrite de Apache
  #9  
Antiguo 24-jul-2013, 18:27
Avatar de DiabloRojo
DiabloRojo DiabloRojo está desconectado
Super Moderador
 
Fecha de Ingreso: 19-marzo-2005
Ubicación: En un lugar del planeta Tierra
Versión: La ultima estable
Mensajes: 14.045
Agradecimientos: 340
Agradecido 1.205 Veces en 781 Mensajes
Poder de Credibilidad: 10
DiabloRojo llegará a ser famoso muy pronto
Activar mod_rewrite de Apache

AVISO: Todo esto que os indico a continuación lo podéis hacer en Yast->Servicios de red->Servidor HTTP, ver NOTA de los puntos 2, 4 y 5 y sus imágenes.

Acabo de instalar WordPress y no había manera de que funcionara el mod_rewrite de Apache. Aquí os dejo los pasos que hay que hacer para que funcione:

1.- Editar el archivo /etc/sysconfig/apache2 como superusuario root con vuestro editor favorito.

2.- Buscar la linea que empieza po
r APACHE_MODULES="....." para añadir el modulo rewrite después de la ultima palabra dejar un espacio en blanco como este ejemplo:
APACHE_MODULES="actions alias auth_basic authn_file authz_host authz_groupfile authz_default authz_user autoindex cgi dir env expires include log_config mime
negotiation setenvif ssl userdir php5 reqtimeout rewrite"


NOTA: En Yast y en la pestaña "Módulos de Servidor" lo podéis activar, seleccionadolo y pinchando en el botón "Cambiar de Estado".




3.- Editar el archivo
/etc/apache2/httpd.conf como superusuario root con vuestro editor.
4.- Buscar la linea que hace referencia a la carpeta /srv/www/htdocs y empieza por la etiqueta <Directory "/srv/www/htdocs"> seguido de unos textos y acaba por la etiqueta </Directory>. Ignorar las lineas que empieza por almohadilla '#'. Las lineas que tenga los textos que indico a continuación deberá tener estos valores:
Código:
<Directory "/srv/www/htdocs">     
    Options +FollowSymLinks     
    AllowOverride all     
    Order deny,allow     
    Allow from all 
</Directory>
NOTA: En Yast y en la pestaña "Equipo Principal", seleccionar la linea "Directory /srv/www/htpdocs", pinchar en el botón "Editar" y a continuación, seleccionar cada una de las lineas y editarla para dejarlo a los valores indicados.




5.- Reiniciamos Apache con el comando sudo systemctl restart apache2.service

NOTA: En Yast, con guardar los cambios pinchando en el botón "Terminar" se reinicia el servidor Apache, SUPONGO.

__________________
NORMAS A CUMPLIR EN LOS FOROS (Lectura obligatoria) Lo siento, no contesto privados sobre problemas con GNU/Linux.
Síguenos en TWITTER y en FACEBOOK
Código:
Buscador de   Alojamiento      Alojamiento     Otros
 paquetes:    de imágenes:     de ficheros:    buscadores:
Search        TinyPic          Ifile Wuala     Simple y Facil
Webpinstant   Paste Suse       SendSpace       TextSnip  Cl1p

Última edición por DiabloRojo; 24-jul-2013 a las 18:49
Tema Cerrado

Marcadores


(0 miembros y 1 visitantes)
 
Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder mensajes
No puedes subir archivos adjuntos
No puedes editar tus mensajes

Los Códigos BB están Activado
Las Caritas están Activado
[IMG] está Activado
El Código HTML está Desactivado

Ir al Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Instalación de Java(JDK,JRE), MySQL, Apache(Httpd, Tomcat), JPS, PHP, para MOODLE joseluisbz Software 7 06-nov-2012 23:53
Los 12 mitos sobre linux penguin_1989 El Contubernio 79 02-oct-2010 23:21
Ayuda Instalar Apache, Php y MySQL en Linux SUSE 10.0 Pisistrato Software 10 10-jul-2008 22:55
Problema con red en SuSE 9.0 Pro arandaedgar Internet, Redes y Wireless 6 16-oct-2006 02:52
Suse 10 se cuelga al arrancar el escritorio goordel Hardware 6 14-mar-2006 18:21



Síguenos en Twitter Suscríbete a nuestras noticias Acompáñanos en Facebook


La franja horaria es GMT +2. Ahora son las 18:46.
Powered by vBulletin™
Copyright © vBulletin Solutions, Inc. All rights reserved.

Esta página está bajo una licencia de Creative Commons, salvo que no se indique lo contrario.
Creative Commons License

Valid CSS!

Diseño por:Designed by: vbdesigns.devbdesigns.de 
Contáctenos - ForoSUSE - Archivo - Declaración de Privacidad - Arriba