"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > Proyecto PHP Apache con host virtual

Proyecto PHP Apache con host virtual

Publicado el 2024-11-09
Navegar:978

PHP Apache project with Virtual Host

Crear el directorio del proyecto

Primero, crea un directorio para tu proyecto. Por ejemplo, creemos un directorio llamado php:


sudo mkdir /var/www/html/php


Crear un archivo de prueba PHP

crea un archivo index.php en el directorio de tu proyecto:


echo "

Establecer permisos de directorio

Establezca los permisos adecuados para que Apache pueda acceder al directorio:


sudo chown -R www-data:www-data /var/www/html/php 
sudo chmod -R 755 /var/www/html/php


El comando sudo chown -R www-data:www-data /var/www/html/php realiza las siguientes acciones:

  1. -R: Esta opción indica que la operación debe realizarse de forma recursiva, es decir, no solo en el directorio especificado, sino también en todos sus subdirectorios y archivos.

  2. www-data:www-data: Especifica que el usuario y el grupo que se convertirán en los nuevos propietarios de los archivos son ambos www-data. Este es un usuario y grupo común en sistemas Linux que sirve como usuario predeterminado para servidores web como Apache y Nginx.

  3. /var/www/php: Esta es la ruta del directorio cuyas propiedades se están cambiando.

El comando sudo chmod -R 755 /var/www/html/php realiza las siguientes acciones:

755: Este es un modo de permiso:

  1. El primer número (7) le otorga al propietario del archivo (o directorio) permisos de lectura (4), escritura (2) y ejecución (1), para un total de 7.

  2. El segundo número (5) le otorga al grupo permisos de lectura (4) y ejecución (1), pero no permisos de escritura, para un total de 5.

  3. El tercer número (5) también otorga a otros usuarios permisos de lectura (4) y ejecución (1), pero no permisos de escritura, para un total de 5.

En resumen, este comando cambia los permisos de todos los archivos y directorios dentro de /var/www/html/php, permitiendo al propietario tener control total (lectura, escritura y ejecución), mientras que el grupo y otros usuarios solo tienen lectura. y ejecutar permisos. Esto es común en entornos de servidores web para garantizar que el servidor pueda acceder a los archivos necesarios sin comprometer la seguridad.

Cree el archivo de configuración del host virtual

Crea un nuevo archivo de configuración para tu Host Virtual. El archivo debe tener el mismo nombre que el proyecto php:


sudo your_editor /etc/apache2/sites-available/php.conf


Agregar la configuración del host virtual

Agregue la siguiente configuración al archivo:



    ServerAdmin webmaster@localhost
    ServerName php.info
    DocumentRoot /var/www/html/php

    
        AllowOverride All
        Require all granted
    

    ErrorLog ${APACHE_LOG_DIR}/php_error.log
    CustomLog ${APACHE_LOG_DIR}/php_access.log combined



Analicemos cada parte del código:

    • Este es el comienzo del bloque de configuración para un Host virtual que escucha en el puerto 80, que es el puerto predeterminado para HTTP. El asterisco (*) indica que el Host Virtual aceptará conexiones desde cualquier dirección IP.
  1. Administrador del servidor webmaster@localhost

    • Define la dirección de correo electrónico del administrador del servidor. Esta dirección de correo electrónico se puede utilizar en mensajes de error o cuando un usuario necesita comunicarse con el administrador.
  2. Nombre del servidor php.info

    • Especifica el nombre del servidor al que se aplica esta configuración. En este caso, el Host virtual responderá a las solicitudes de php.info. Es importante que este nombre se resuelva correctamente en la IP del servidor (generalmente configurado en el archivo /etc/hosts o en DNS).
  3. DocumentoRoot /var/www/html/php

    • Define el directorio que contiene los archivos que se entregarán cuando alguien acceda al nombre del servidor (en este caso, php.info). En este ejemplo, los archivos se encuentran en /var/www/html/php.
    • Este bloque especifica configuraciones específicas para el directorio indicado. La configuración dentro de este bloque afecta el comportamiento de Apache para ese directorio específico.

Permitir anular todo

  • Permite que los archivos .htaccess dentro del directorio /var/www/html/php/ anulen la configuración de Apache. Esto significa que los desarrolladores pueden usar archivos .htaccess para configurar reglas, como redireccionamientos o control de acceso, sin tener que editar el archivo de configuración principal de Apache.

Requerir todo concedido

  • Permite que todos los usuarios tengan acceso al directorio. Esto significa que cualquiera puede acceder a los archivos dentro de /var/www/html/php/ sin restricciones.
  1. Registro de errores ${APACHE_LOG_DIR}/php_error.log
  2. Especifica la ruta al archivo de registro de errores de Apache para este host virtual. ${APACHE_LOG_DIR} es una variable que generalmente se establece en el archivo de configuración principal de Apache, apuntando al directorio donde se almacenan los registros. Aquí, los errores relacionados con este Host virtual se registrarán en el archivo php_error.log.

  3. Registro personalizado ${APACHE_LOG_DIR}/php_access.log combinado

  4. Define la ruta al archivo de registro de acceso de Apache para este host virtual. Al igual que ErrorLog, esto también utiliza la variable ${APACHE_LOG_DIR}. El formato combinado registra información sobre las solicitudes, incluida la dirección IP del cliente, la hora de la solicitud, el método HTTP, la URL solicitada, el código de estado y el agente de usuario.

Habilitar el host virtual

Habilite el nuevo Host Virtual con el comando:


sudo a2ensite php.conf


Active el módulo de reescritura (si es necesario)

Si necesita utilizar .htaccess o reescritura de URL, active el módulo de reescritura de Apache:


sudo a2enmod rewrite


Agregar nombre de servidor a hosts

Para acceder a su proyecto usando el nombre del servidor que definió (php.info), agregue una entrada en el archivo /etc/hosts:


sudo your_editor /etc/hosts


Agregue la siguiente línea al final del archivo:


127.0.0.1 php.info




Reinicie el Apache

Reinicie Apache para que los cambios surtan efecto:


sudo systemctl restart apache2




Accediendo al Proyecto

Ahora puedes acceder a tu proyecto en el navegador escribiendo http://php.info.

Declaración de liberación Este artículo se reproduce en: https://dev.to/xxzeroxx/php-apache-project-with-virtual-host-2npk?1 Si hay alguna infracción, comuníquese con [email protected] para eliminarlo.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3