Urgente: Mod_write. Ayuda con integración a ajax

Urgente: Mod_write. Ayuda con integración a ajax
Hola Forero.
No funciona bien. ¿Cuál puede ser el inconveniente?
Estamos implementando el modo mod_write. Pido su colaboración.
Creamos un archivo llamado .htaccess y fue colocado en el index
RewriteEngine On
RewriteBase /
#RewriteCond %{REQUEST_URI} ^[0-9]*_
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^([0-9]*)_.*$ rewrite_links.php?id=$1 [L,R=301]
------------
Luego se creo un archivo rewrite_links_crear.php . Este archivo lo
colocamos en el index.php de la siguiente forma
 <?php include 'rewrite_links_crear.php' ?>
El código de este archivo es:
<?php require_once('Connections/anuack_com.php'); ?>
<?php
       session_start();
       mysql_select_db($database_anuack_com, $anuack_com);
       $query = "SELECT id, texto_idioma_".$_SESSION['idm']." AS texto FROM
rewrite_links WHERE activo=1";
       $result = mysql_query($query, $anuack_com) or die(mysql_error());
       $server = $_SERVER['SERVER_NAME'];
       while($row = mysql_fetch_assoc($result)){
               $texto = $row['texto'];
               $texto = strtolower($texto);
               $buscar = array("á","é","í","ó","ú","ñ"," ");
               $reemplazar = array("a","e","i","o","u","n","-");
               $new_texto = str_replace($buscar, $reemplazar, $texto);
               $id = $row['id'];
               echo "<a class='rwl' href='http://".$server."/".$id."_".
$new_texto."/'>".$row['texto']."</a>&nbsp| ";
       }
?>
-----
Ahora creamos un archivo llamado rewrite_links.php
Todo el código que se encontraba en index.php lo colocamos en
rewrite_links.php
Supuesta mente los link deben quedar así:
http://industriaspico.com/52_mesas-de-juntas-linea-steel-glass/
Claro, la idea es que se vea sin el numero 52.
Eso se puede quitar con el archivo rewrite_links_crear.php y lo
dejamos así:
Antes:
               echo "<a class='rwl' href='http://".$server."/".$id."_".
$new_texto."/'>".$row['texto']."</a>&nbsp| ";
Después:
               echo "<a class='rwl' href='http://".$server."/".$new_texto."/'>".$row
['texto']."</a>&nbsp| ";
Pero no me esta funcionando. Cual puede ser el problema.
A propósito, el sitio esta echo en full AJAX. El sitio es http://industriaspico.com
Posdata:
Esta bien los link mostrado abajo
De ante mano espero su colaboración
-----
http://industriaspico.com
http://divicionesenvidrio.com
http://escritorioenvidrio.com
http://escritorioenvidrioyacero.com
http://mesadejunta.com
http://mesasdejunta.com
http://mobiliarioenvidrio.com
http://mueblesenvidrio.com
http://sillasenmaya.com
http://sillasgerenciales.com
Fabricación y comercialización de muebles metálicos para oficina
mueble de oficina
mueble para oficina
escritorio
mesa de junta
mesa
silla
escritorio en vidrio claro de 19mm
escritorio en vidrio
escritorio operativo
escritorio moderno en vidrio y cromo
escritorio en cromo
Respuesta
1
¿en el php.ini esta activo el mod_rewrite?

3 respuestas más de otros expertos

Respuesta
1
Una forma fácil de no utilizar esos números (como tu 52) para saber el ID del producto al que te refieres, es coger el nombre del archivo ya procesado, como mesas-de-juntas-linea-steel-glass, como ID añadido a cada producto. Para evitar duplicidades en nombres de producto, etc, es más conveniente.
Tu código es complejo y no me atrevo a meter mano, porque me tendría que meter a saco con el, considera mi otra propuesta como una solución razonable, si te parece. Sino, te recomiendo un foro específico de expertos en Apache y PHP
Respuesta
1
Esto es apache, incluyes también php.
Pero yo no he profundizado en este tema, ya lo siento.
Respuesta
Esta categoría es PHP y estás preguntando por apache y por php.
Mis conocimientos sobre las directivas de apache son un tanto limitados, por tanto, te recomendaría que probaras a ver si rewrite_links.php funciona bien (por separado, sin que sea llamado desde el htaccess).
Si rewrite_links.php saca los enlaces sin el id, entonces definitivamente no es un problema del archivo php y lo sería del archivo htaccess (quizá no esté bien construida la sentencia del RewriteRule o quizá no esté cumpliendo la condición (¿por qué pones un espacio en la expresión regular? Si son urls no deberían llevar espacios, ¿no?).
Puedes empezar por hacer pruebas "pequeñitas" con el mod_write, como que por ejemplo, te redireccione a google. Así sabrías que no está ignorando el htaccess; ten en cuenta que no tengo ni idea de tu aplicación, puede que esté guardando una cache y debas limpiarla, por ejemplo (y no hablo de la caché del navegador, ojo).
Con lo cual, lo primero que debes hacer, es verificar si lo que falla es el htaccess o el apache...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas