Modificar barra de direcciones con PHP

Weahl

Imaginemos que tenemos un sitio web con una organización tal que así:

Root

Index.php
Seccion

Metal

prueba.php

Yo quiero hacer que en la barra de direcciones (la barra de arriba donde se escribe la dirección web), en vez de esto:
http://www.pagina.com/seccion/metal/prueba.php

salga esto:
http://www.pagina.com/prueba

¿Hay alguna manera humana de conseguirlo?
He estado tocando el .htaccess pero solo he conseguido quitarle el .php del final.

Agradecería cualquier ayuda, mil gracias.

tada

No tiene mucho que ver con php, se hace con mod_rewrite de apache (usando .htaccess x ej). Supongo que sería algo tal que así:

Options +FollowSymLinks
RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^([^/]*)?$ seccion/metal/$1.php [L,QSA]

Puede que esté mal.. xD

1 respuesta
Weahl

#2 No tengo cojones de hacerlo, y mira que he mirado webs sobre URL Friendly, de htaccess y tal.

Lo máximo que he conseguido es esto:
http://www.pagina.com/seccion/metal/prueba

:(

1 respuesta
tada

#3 pues lo que te he puesto funciona perfestamente que lo acabo de testear.. mira que tengas activado el mod_rewrite.

1 respuesta
Weahl

#4 Está activado.

Quizá estoy haciendo algo mal con el href...

Es tal que así:

<a href='prueba'>Prueba</a>

Y otra cosa, que pasa si quiero pasarle dos parámetros, en plan:

<a href='metal/prueba'>Prueba</a>

Y el htaccess

    Options +FollowSymLinks
    RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^([^/]*)/([^/]*)?$ seccion/$1/$2.php [L,QSA]

¿Sería algo asi?

Gracias ;)

1 respuesta
tada

#5 En principio está bien. El .htaccess lo metes donde está el index.php (o donde esté el enlace). Lo de los dos parametros si sería como tu has puesto.

Index.php (con el enlace)
.htaccess
Seccion

Metal

prueba.php

1 1 respuesta
Weahl

#6 Vale joder, ahora si, era que tenía
RewriteCond %{REQUEST_FILENAME}.php -f en vez de ! -f

Muchísimas gracias tada, has sido de muchísima ayuda :)

1

Usuarios habituales

  • Weahl
  • tada