¿Por qué no se muestra la ruta index.php en el entorno nginx del marco thinkphp?
Ayudó al usuario a migrar un sitio web en Apache al entorno nginx. Se descubrió que el marco ThinkPHP utilizado por el usuario para el desarrollo utilizaba pathinfo de forma predeterminada.
Este es un problema muy problemático, porque nginx no admite pathinfo y no es seguro abrirlo todo a la vez.
Entonces después de consultar la información, la organicé de la siguiente manera:
Busque el archivo de configuración config.php de apps/Conf/
return array( p>
' URL_MODEL'=gt; 2, //Para obtener más información sobre la URL, consulte Tinkphp/Common/convention.php
);
Copiar código
Configurar Nginx .conf
Agregar
ubicación / {
if (!-e $request_filename){
reescribe bajo tu host virtual ^/(.*)$ /index.php/$1 último;
}
}
Copia el código
Si su archivo de entrada del proyecto está en un subdirectorio
ubicación /directorio/ {
if (!-e $request_filename){
reescribe ^/directorio/( .*)$/directorio/index.php/$1 último;
}
}