No input file specified. Solución

No input file specified
Error del servidor "No input file specified"

El error No input file specified se presenta porque la implementación de la configuración de PHP en el servidor usa el modo CGI o FastCGI, últimamente los servidores que usamos vienen configurado así por defecto, pero en KumbiaPHP es fácil solucionarlo, te mostraremos como.

No input file specified
Error del servidor «No input file specified»

A veces no tenemos la posibilidad de cambiar la configuración del servidor ya sea porque adquirimos un plan de hosting compartido o estamos probando algún servicio de hosting gratuito el cual viene con más limitaciones. Otras veces simplemente por cuestiones técnicas queremos o debemos usar este tipo de configuración y KumbiaPHP no te va a detener en eso. Entonces ¿Qué debemos hacer?

Evitar el No input file specified

En KumbiaPHP hay varias opciones de configuración para el .htaccess y ninguna funciona para todas las configuraciones de servidores, incluso otros frameworks son mucho mas estrictos en los requerimientos que KumbiaPHP por eso es muy fácil ajustarlo realizando los siguientes cambios:

Comentar la primer opción de obtener la url y quitar el comentario a la segunda forma:
Archivo: default/public/index.php


<span class="token operator">*</span><span class="token operator">*</span>
<span class="token operator">*</span> Obtiene la url usando <span class="token constant">PATH_INFO</span>
<span class="token operator">*</span><span class="token operator">/</span>
<span class="token comment">//$url = empty($_SERVER['PATH_INFO']) ? '/' : $_SERVER['PATH_INFO'];</span>

<span class="token operator">*</span><span class="token operator">*</span>
<span class="token operator">*</span> Obtiene la url usando <span class="token variable">$_GET</span><span class="token punctuation">[</span><span class="token string">'_url'</span><span class="token punctuation">]</span>
<span class="token operator">*</span> Cambiar también en el <span class="token punctuation">.</span>htaccess
<span class="token operator">*</span><span class="token operator">/</span>
<span class="token variable">$url</span> <span class="token operator">=</span> <span class="token function">isset</span><span class="token punctuation">(</span><span class="token variable">$_GET</span><span class="token punctuation">[</span><span class="token string">'_url'</span><span class="token punctuation">]</span><span class="token punctuation">)</span> <span class="token operator">?</span> <span class="token variable">$_GET</span><span class="token punctuation">[</span><span class="token string">'_url'</span><span class="token punctuation">]</span> <span class="token punctuation">:</span> <span class="token string">'/'</span><span class="token punctuation">;</span>

También debes modificar el .htaccess

Comentar el RewriteRule activo (Se añade # al inicio):

Archivo: default/public/.htaccess


# Para peticiones que no son archivos ni directorios
# Reescribe a index.php/
# RewriteRule (.*) index.php/$1 [L]

Quitar el comentario en el último RewriteRule:

# Reescribe a index.php?_url=URL
RewriteRule ^(.*)$ index.php?_url=/$1 [QSA,L]

Este archivo quedaría así si no has cambiado la configuración:

.htaccess que resuelve No Input file specified

.htaccess que resuelve No Input file specified

Una vez realizados estos cambios como resultado este error debe desaparecer ya que el framework estará creando correctamente las URLs.

Nota: Este artículo estará en constante revisión ya que no es posible asegurar que sea una solución para todos los casos, por eso esperamos contar con su colaboración para obtener su retroalimentación, pueden usar los comentarios de la caja de abajo.


Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

© Kumbia Team