Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: Anonymatrix en 1 Marzo 2017, 22:17 pm



Título: ¿Acortar url?
Publicado por: Anonymatrix en 1 Marzo 2017, 22:17 pm
Hola, qué tal, alguien me ayuda porfa? grx =)


Se puede transformar esto

http://mi-web.com/carpeta/pepito

a

http://mi-web.com/pepito

?

Prefiero que la gente escriba la segunda url para acceder al sitio, porque es más corta.

Pero manteniendo la ruta real de mi archivo pepito.php (primera url).


Título: Re: ¿Acortar url?
Publicado por: dato000 en 1 Marzo 2017, 22:47 pm
Hola, qué tal, alguien me ayuda porfa? grx =)


Se puede transformar esto

http://mi-web.com/carpeta/pepito

a

http://mi-web.com/pepito

?

Prefiero que la gente escriba la segunda url para acceder al sitio, porque es más corta.

Pero manteniendo la ruta real de mi archivo pepito.php (primera url).

Depende de como estes montando la página, pero básicamente, cualquier servidor te permite realizar eso, en .NET yo hago eso mediante código javascript o IIS, o en raras ocasiones por código fuente directo compilado.

En apache puede configurarse el archivo para usar virtualhost que usen determinadas url para ciertos enlaces o dominios en general. Esto aplica básicamente a cualquier sitio web montado en php.

También si se usa un CMS como joomla, puede usarse ese tipo de enmascaramiento para conveniencia del administrador o facilidad de acceso para clientes, o para seo, o para analytics, drupal también ofrece esa configuración.

Un poderoso CMS como sitefinity permite habilitar multiples urls para resolver esas cuestiones, pero, al ser de pago, y no es barato, pues yo lo sugeriria para opción comercial.

IIS como mencionaba antes también permite hacer eso, haciendo uso de muchas opciones, es excelente para ese tipo de cosas como resolver dominios o habilitar multiples urls, pero hay que configurar bastantes archivos para que quede bien organizado.

Linux también ofrece ese tipo de cosas, aunque pues depende de la plataforma web sobre la este montada. Solo conozco webmin (sin tener en cuenta apache, pues es multiplataforma) y funciona bastante bien, aunque hay que tener cuidado con los DNS, y las ips dinamicas del sitio.

En resumen, hay varias formas, depende más de lo que se use y explorar las opciones.


Título: Re: ¿Acortar url?
Publicado por: Anonymatrix en 9 Marzo 2017, 21:13 pm
Mis archivos están en la carpeta miembros.

Ejemplo:

http://mi-web.com/miembros/Manolo_El_de_la_Fanta

Y quiero quitar el texto 'miembros/' de la url.

Para que quede así:

http://mi-web.com/Manolo_El_de_la_Fanta


Probé a utilizar el siguiente código en .htaccess:

Código:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^miembros/(.+)$ http://mi-web.com/$1 [R=301,L]
</IfModule>

Pero lo que hace no es quitar el texto, sino redireccionar, y claro, mis archivos están en 'miembros/', no en la raíz web.

Y si redireccionas de

http://mi-web.com/miembros/Manolo_El_de_la_Fanta

a

http://mi-web.com/Manolo_El_de_la_Fanta

Te da error porque no existe ningún archivo con ese nombre en esa ruta.


Título: Re: ¿Acortar url?
Publicado por: engel lex en 9 Marzo 2017, 21:27 pm
lo redireccionas al index y en el index lees $_SERVER["REQUEST_URI"] para obtener el parametro pasado


Título: Re: ¿Acortar url?
Publicado por: Anonymatrix en 9 Marzo 2017, 22:28 pm
lo redireccionas al index y en el index lees $_SERVER["REQUEST_URI"] para obtener el parametro pasado

Pero se veria

http://mi-web/index?Manolo_El_de_la_Fanta

o

http://mi-web/index?m=Manolo_El_de_la_Fanta

Y yo quiero que se vea así:

http://mi-web/Manolo_El_de_la_Fanta


Título: Re: ¿Acortar url?
Publicado por: #!drvy en 9 Marzo 2017, 23:59 pm
Citar
Probé a utilizar el siguiente código en .htaccess:

Código:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^miembros/(.+)$ http://mi-web.com/$1 [R=301,L]
</IfModule>

Quita el R=301 y pon QSA para pasar los parámetros. También deberías asegúrate de que no es un archivo o una carpeta. Luego simplemente cambia el orden.

Código
  1. <IfModule mod_rewrite.c>
  2. RewriteEngine on
  3. RewriteCond %{REQUEST_FILENAME} !-f
  4. RewriteCond %{REQUEST_FILENAME} !-d
  5. RewriteRule ^(.+)$ miembros/$1 [L,QSA]
  6. </IfModule>

Saludos


Título: Re: ¿Acortar url?
Publicado por: Anonymatrix en 10 Marzo 2017, 04:19 am
Quita el R=301 y pon QSA para pasar los parámetros. También deberías asegúrate de que no es un archivo o una carpeta. Luego simplemente cambia el orden.

Código
  1. <IfModule mod_rewrite.c>
  2. RewriteEngine on
  3. RewriteCond %{REQUEST_FILENAME} !-f
  4. RewriteCond %{REQUEST_FILENAME} !-d
  5. RewriteRule ^(.+)$ miembros/$1 [L,QSA]
  6. </IfModule>

Saludos

Gracias.


Título: Re: ¿Acortar url?
Publicado por: Anonymatrix en 11 Marzo 2017, 03:18 am
Muchas gracias a los 2. Sois los mejores. Os quiero.


Título: Re: ¿Acortar url?
Publicado por: Anonymatrix en 12 Marzo 2017, 02:56 am
Repito, sois los mejores, no sé si habrá quedado ya claro, pero quiero que conste ello en este post, así que os dejo un vídeo musical que expresa lo que siento cuando la gente me ayuda:

QTOu1q-lCCs

Atte: Soy bipolar.