martes, 22 de julio de 2025 - 18:33:51

Localizar archivo PHP.INI en un VPS

Localizar el archivo php.ini en un servidor VPS puede variar ligeramente dependiendo de la configuración del servidor. Aquí te presento varios métodos para encontrarlo en tu VPS con dominio ee3.es:

1. Usando SSH y el comando php -i:

Este es el método más fiable. Necesitarás acceder a tu servidor a través de SSH.

  • Conéctate por SSH: Abre tu terminal y usa el siguiente comando, reemplazando usuario con tu nombre de usuario y ee3.es con la dirección de tu servidor:Bashssh usuario@ee3.es Te pedirá tu contraseña.
  • Ejecuta el comando php -i: Una vez dentro del servidor, ejecuta el siguiente comando:Bashphp -i | grep 'Configuration File' Este comando mostrará la ruta exacta al archivo php.ini. La salida se verá similar a esto:Configuration File (php.ini) Path => /usr/local/lib Loaded Configuration File => /usr/local/lib/php.ini La segunda línea te da la ruta completa al archivo.

2. Ubicaciones comunes:

Si el método anterior no funciona por alguna razón, puedes buscar en las siguientes ubicaciones comunes:

  • /etc/php/7.4/cli/php.ini (Reemplaza 7.4 con tu versión de PHP)
  • /etc/php/7.4/apache2/php.ini (Para PHP usado con Apache)
  • /usr/local/lib/php.ini
  • /usr/lib/php.ini
  • /etc/php5/apache2/php.ini (Para versiones antiguas de PHP)

Puedes usar el comando find para buscar en todo el sistema:

Bash

find / -name "php.ini" 2>/dev/null

El 2>/dev/null evita que se muestren errores de permisos.

3. A través de cPanel (si lo usas):

Si tu VPS utiliza cPanel, hay varias formas de encontrar y editar el php.ini:

  • MultiPHP INI Editor: Busca «MultiPHP INI Editor» en cPanel. Desde ahí, puedes seleccionar la versión de PHP y editar la configuración.
  • phpinfo(): Crea un archivo llamado phpinfo.php con el siguiente código:PHP<?php phpinfo(); ?> Súbelo a tu servidor y ábrelo en tu navegador (ej. ee3.es/phpinfo.php). Busca «Loaded Configuration File». Esta línea te mostrará la ruta al php.ini.

4. Contactando con tu proveedor de hosting (ee3.es):

Si tienes dificultades para encontrar el archivo, la mejor opción es contactar directamente con el soporte técnico de ee3.es. Ellos te proporcionarán la ubicación exacta y te ayudarán con cualquier otra duda.

Importante:

  • Copia de seguridad: Antes de modificar el archivo php.ini, es crucial hacer una copia de seguridad. Puedes copiarlo con el siguiente comando:Bashcp /ruta/al/php.ini /ruta/al/php.ini.bak
  • Reiniciar el servidor web: Después de modificar el php.ini, necesitas reiniciar el servidor web (Apache o Nginx) para que los cambios surtan efecto. Por ejemplo, para Apache:Bashsudo service apache2 restart

Recuerda reemplazar las versiones de PHP en los ejemplos con la versión que esté utilizando tu servidor. Con estos métodos, deberías poder encontrar el archivo php.ini en tu servidor VPS de ee3.es sin problemas.

imagen de perfil

El archivo /etc/php/8.2/cli/php.ini no se corresponde con la configuración de wordpress de ee3.es. el php.ini indica una subida máxima de 128, y WordPress de 2 M 

Entiendo que tienes una discrepancia entre la configuración de subida máxima de archivos en tu archivo php.iniubicado en /etc/php/8.2/cli/php.ini (128M) y lo que muestra WordPress (2M) en tu sitio ee3.es. Esto significa que WordPress está leyendo la configuración de otro archivo php.ini o que hay una configuración que lo está sobrescribiendo. Aquí te doy algunas soluciones para resolver este problema:

1. Verificar el php.ini correcto para tu configuración de WordPress:

  • phpinfo(): Crea un archivo llamado phpinfo.php con el siguiente código:PHP<?php phpinfo(); ?> Súbelo a la raíz de tu sitio web (donde está tu instalación de WordPress) y ábrelo en tu navegador (ej. ee3.es/phpinfo.php). Busca las siguientes líneas:
    • Loaded Configuration File: Esta línea te indica la ruta exacta del php.ini que está usando WordPress.
    • Scan this dir for additional .ini files: Esta línea muestra si se están leyendo archivos .iniadicionales que podrían estar sobrescribiendo la configuración.
    Compara la ruta del php.ini que te muestra phpinfo() con /etc/php/8.2/cli/php.ini. Si son diferentes, has encontrado el problema. Debes editar el archivo que te indica phpinfo().
  • Diferencia entre CLI y FPM/Apache: Es importante entender que /etc/php/8.2/cli/php.ini se usa para la interfaz de línea de comandos (CLI) de PHP, no para el servidor web (Apache o Nginx). WordPress usa la configuración del servidor web, que generalmente se encuentra en:
    • /etc/php/8.2/apache2/php.ini (para Apache)
    • /etc/php/8.2/fpm/php.ini (para PHP-FPM)
    Asegúrate de editar el archivo correcto según el servidor web que estés utilizando.

2. Editar el php.ini correcto:

Una vez que hayas localizado el php.ini que usa WordPress, edítalo con un editor de texto con privilegios de administrador (ej. sudo nano /ruta/al/php.ini). Busca las siguientes directivas y modifícalas:

upload_max_filesize = 128M ; Tamaño máximo de subida de archivos
post_max_size = 128M ; Tamaño máximo de datos POST
memory_limit = 256M ; Límite de memoria para PHP (aumenta si es necesario)
file_uploads = On ; Asegúrate de que las subidas de archivos estén activadas

Guarda los cambios y reinicia el servidor web:

Bash

sudo systemctl restart apache2   # Si usas Apache
sudo systemctl restart php8.2-fpm # Si usas PHP-FPM

3. Archivo .htaccess:

En algunos casos, se pueden modificar estas directivas a través del archivo .htaccess en la raíz de tu sitio web. Añade las siguientes líneas:

php_value upload_max_filesize 128M
php_value post_max_size 128M
php_value memory_limit 256M

4. Archivo wp-config.php:

También puedes intentar definir el límite de memoria en el archivo wp-config.php:

PHP

define('WP_MEMORY_LIMIT', '256M');

5. Contactar con ee3.es:

Si después de probar todas estas soluciones sigues teniendo el problema, lo mejor es contactar con el soporte técnico de ee3.es. Ellos tienen acceso a la configuración de tu servidor y podrán ayudarte a identificar la causa del problema y solucionarlo.

Resumen de pasos:

  1. Usar phpinfo() para encontrar el php.ini correcto.
  2. Editar el php.ini correcto (apache2 o fpm, no cli).
  3. Reiniciar el servidor web.
  4. Considerar .htaccess o wp-config.php.
  5. Contactar con ee3.es si el problema persiste.

Recuerda que la configuración de post_max_size debe ser igual o mayor que upload_max_filesize. También es recomendable aumentar memory_limit para evitar problemas de memoria al procesar archivos grandes.

Siguiendo estos pasos, deberías poder solucionar la discrepancia entre la configuración de subida máxima de archivos en tu servidor y lo que muestra WordPress.

imagen de perfil

Failed to restart apache.service: Unit apache.service not found. 

Failed to restart 2.service: Unit 2.service not found. 

debian@vps-641b35a2:~$ sudo systemctl reload apache 2 

Failed to reload apache.service: Unit apache.service not found. 

Failed to reload 2.service: Unit 2.service not found. 

Los errores «Unit apache.service not found» y «Unit 2.service not found» indican que el servicio Apache no está instalado o no se llama apache.service en tu sistema Debian. El comando systemctl busca unidades de systemd, y si no encuentra una unidad llamada apache.service, muestra ese error.

Aquí te presento los pasos para solucionar este problema:

1. Verificar si Apache está instalado:

Ejecuta el siguiente comando para verificar si Apache está instalado:

Bash

dpkg -l | grep apache2

Si Apache está instalado, verás una línea similar a:

ii  apache2        2.4.54-1~deb11u2 amd64        Apache HTTP Server

Si no ves ninguna línea que comience con ii apache2, significa que Apache no está instalado.

2. Instalar Apache (si no está instalado):

Si Apache no está instalado, puedes instalarlo con el siguiente comando:

Bash

sudo apt update
sudo apt install apache2

Durante la instalación, se configurará el servicio Apache y se iniciará automáticamente.

3. Verificar el nombre del servicio Apache:

En algunos sistemas, el servicio Apache puede tener un nombre diferente. Los nombres comunes son:

  • apache2.service (el más común en Debian/Ubuntu)
  • httpd.service (común en CentOS/RHEL)

Para verificar el nombre exacto del servicio, puedes usar el siguiente comando:

Bash

systemctl list-unit-files | grep apache

o

Bash

systemctl list-units --type=service | grep apache

Esto listará todos los archivos de unidad que contienen «apache» en su nombre. Deberías ver el nombre correcto del servicio.

4. Usar el nombre correcto del servicio:

Una vez que hayas verificado el nombre correcto del servicio, usa ese nombre en los comandos de systemctl. Por ejemplo, si el nombre es apache2.service, usa:

Bash

sudo systemctl restart apache2
sudo systemctl reload apache2
sudo systemctl status apache2 # Para verificar el estado

5. Reiniciar el servidor (si es necesario):

Si después de instalar o reiniciar Apache sigues teniendo problemas, puedes intentar reiniciar el servidor completo:

Bash

sudo reboot

Ejemplo completo (asumiendo que el nombre del servicio es apache2.service):

Bash

sudo apt update          # Actualizar la lista de paquetes
sudo apt install apache2  # Instalar Apache (si no está instalado)
sudo systemctl restart apache2 # Reiniciar Apache
sudo systemctl status apache2  # Verificar el estado de Apache

Si sigues teniendo problemas después de seguir estos pasos, proporciona la siguiente información para que pueda ayudarte mejor:

  • La salida del comando dpkg -l | grep apache2
  • La salida del comando systemctl list-unit-files | grep apache
  • La distribución de Linux que estás utilizando (ej. Debian 11, Ubuntu 20.04)

Con esta información, podré darte una solución más precisa.

V.S 991 H.