¿Cómo puedo saber qué módulos de Apache están disponibles para mí?

¿Cómo puedo saber qué módulos de Apache están disponibles para mí?

Actualmente estoy leyendo la 'Guía definitiva para Apache mod_rewrite' y a lo largo del libro se mencionan otros módulos de Apache que son mejores alternativas en escenarios determinados.

Esto me hace preguntarme qué está instalado en mi sitio. No tengo acceso SSH al servidor y no tengo acceso a ninguno de los archivos de configuración (que yo sepa).

¿Hay alguna forma de determinar qué está instalado o tengo que preguntarle directamente a mi host? Supongo que ciertos comandos podrían ejecutarse dentro de PHP (es decir, usando comillas invertidas), pero no estoy seguro de cuáles son sus limitaciones.

Respuesta1

Existe un método externo, pero será necesario saber si está activado y si está instalado.

La phpinfo()función puede decirle algunas cosas sobre Apache, pero se trata principalmente de PHP. Si puede ejecutar comandos a través del servidor web, entonces ejecute

httpd -t -D DUMP_MODULES

Puede funcionar, pero no contaría con ello.

Además, algunos módulos pueden incluir datos en las respuestas del servidor incluso si no se utilizan actualmente. Verhttp://www.netcraft.com/whatspara ver un ejemplo de este tipo de cosas. Mi servidor actualmente informa:

Apache/2.2.14 (Unix) mod_ssl/2.2.14 OpenSSL/0.9.9-dev DAV/2 PHP/5.2.11 Phusion_Passenger/2.2.9

lo cual parece ser exacto, lo que me recuerda que necesito eliminar la parte de PHP.

Respuesta2

¿Tienes acceso a .htaccess? Supongo que sí, de lo contrario no tienes control sobre el servidor web y no puedes hacer nada con él, por lo que no tiene sentido que sepas qué módulos tienes.

Si es así, podría agregar varias <IfModule>directivas en el .htaccessarchivo para hacer algo (por ejemplo, negar el acceso a un archivo determinado). Luego puede intentar acceder al archivo. Si puedes acceder al archivo, entonces no tienes el módulo disponible.

Respuesta3

Esta es una respuesta no programática.

Pregúntele directamente al administrador del host si puede.

Podría intentar pedirle al administrador que active el módulo mod_info apache y que configure el archivo del servidor httpd.conf maestro (y apunte a un URI restringido por seguridad) para que pueda obtener fácilmente la información de configuración completa utilizando su navegador web.

Puede pedirle al administrador del host que ejecute el comando httpd que otro usuario proporcionó anteriormente y le envíe el resultado.

información relacionada