es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo crear enrutadores sin añadir index.php o usar .htaccess en Slim framework.

require DIR . ‘/vendor/autoload.php’;

$app = new \Slim\app;

$app->get(‘/’, function(){
echo “Hola”;
});

$app->get(‘/h’, function(){
echo “Hola mundo 2”;
});

$app->run();

Salida

en la página principal “/”
funciona normalmente mostrando “Hola”

pero cuando voy a “/h”
da este error

No encontrado
La URL solicitada no se encontró en este servidor.

Tengo que ir a “index.php/h” para que funcione
¿Puedo eliminar “index.php” y simplemente escribir “/h” en la URL?

sin usar “.htaccess” ?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Sí, puedes eliminar el index.php de la URL sin usar .htaccess agregando una base_path personalizada a tu aplicación Slim.

    Aquí te mostramos cómo puedes hacerlo:

    require __DIR__ . '/vendor/autoload.php';
    
    $app = new \Slim\app([
        'settings' => [
            'base_path' => '/mi-aplicacion'
        ]
    ]);
    
    $app->get('/', function() {
        echo "Hola";
    });
    
    $app->get('/h', function() {
        echo "Hola mundo 2";
    });
    
    $app->run();
    

    En el código anterior, hemos agregado una base_path personalizada de /mi-aplicacion en la configuración de la aplicación Slim. Esto le indicará a Slim que la raíz de nuestra aplicación es /mi-aplicacion en lugar de /.

    Ahora, si accedes a http://tu-domino.com/mi-aplicacion`, se mostraráHola, y si accedes ahttp://tu-domino.com/mi-aplicacion/h`, se mostrará Hola mundo 2.

    Ten en cuenta que también deberás actualizar los enlaces en tus plantillas HTML para incluir la base_path. Por ejemplo:

    <a href="/mi-aplicacion/h">Ir a /h</a>
    

    Al hacer esto, podrás eliminar el index.php de la URL y seguir accediendo a las rutas de tu aplicación Slim.

Comments are closed.