(https://www.simplemachines.org/community/proxy.php?request=http%3A%2F%2Fwww.hispa-digital.net%2Ftutos%2Fsmf%2Fsmf-simple-machines-forum-optimizando-url-seo-posicionamiento.JPG&hash=ecf31b0535b6ae10a5c961a4ee36870674be437c)
Aquí el pequeño tuto que nunca encontre jajaja...
http://www.hispa-digital.com/seo-4-smf-simple-machines-forum-url-legibles-en-foro-tutorial-instalar-seo4smf.html
Esto es a base de lo que he realizado...
SEO4SMF Solución
El tema más tratado por muchos de nosotros... Y aún no hay mucho sobre, e aquí un pequeño Manual de Instalacion SEO4SMF...
Empezaremos Instalando:
> seo4smf-0.2.9.9
> Lo podemos descargar de aquí...
http://www.webmasterstalks.com/tpmod.html;dl=item48
> Nos dirigimos a la Administración de nuestro Sitio
> Paquetes
> Al tener descargado seo4smf (No lo descomprimimos)
> Le damos descargar paquetes y subimos el paquete (Examinar y lo subimos a nuestro servidor)
> Le damos aplicar mod...
> Nos quedará una administración del mismo así como muestra la imagen(http:///%3Ehttp://www.hispa-digital.net/tutos/smf/administracion-forum-seo-smf.JPG)
Teniendo esto... Listo:> Procedemos a subir el htaccess ( /foro ) si es que el directorio esta así... DESCARGAR (http://hafre.quae.net/DOWNLOAD/htaccess.txt) nos abrira un txt lo guardamos en un bloc de notas (txt) lo subimos a nuestro directorio y estando allí lo renombramos a .htaccess... nada más...
> También subimos este archivito que se llama
php.ini DESCARGAR (http://hafre.quae.net/DOWNLOAD/php.ini)(Este archivo tenemos que subirlo al la carpeta donde se encuentra el paquete del SMF ( /foro ). También lo guardamos en un bloc de notas (txt) lo subimos a la carpeta donde se encuentra instalado el smf (/foro) al tenerlo allí como txt simplemente lo renombramos a php.ini nada más...
> Luego de realizar esto... nos vamos nuestro Cliente FTP y entramos a la carpeta Sources (/foro/Sources/)
> De ese directorio nos descargaremos el archivo QueryString.php
> Lo descargamos a nuestro pc para una pequeña editación...
Teniendo este archivo en nuestra pc...Buscamos esta línea:
// This should work even in 4.2.x, just not CGI without cgi.fix_pathinfo.
if (!empty($modSettings['queryless_urls']) && (!$context['server']['is_cgi'] || @ini_get('cgi.fix_pathinfo') == 1) && $context['server']['is_apache'])
{
// Let's do something special for session ids!
if (defined('SID') && SID != '')
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?(?:' . SID . ';)((?:board|topic)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl . '/' . strtr('\$1', '&;=', '//,') . '.html?' . SID . '\$2\"'", $buffer);
else
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?((?:board|topic)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl . '/' . strtr('\$1', '&;=', '//,') . '.html\$2\"'", $buffer);
}
Y la reemplazamos por esta:
// This should work even in 4.2.x, just not CGI without cgi.fix_pathinfo.
// if (!empty($modSettings['queryless_urls']) && (!$context['server']['is_cgi'] || @ini_get('cgi.fix_pathinfo') == 1) && $context['server']['is_apache'])
// {
// Let's do something special for session ids!
if (defined('SID') && SID != '')
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?(?:' . SID . ';)((?:board|topic)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl . '/' . strtr('\$1', '&;=', '//,') . '.html?' . SID . '\$2\"'", $buffer);
else
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?((?:board|topic)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl . '/' . strtr('\$1', '&;=', '//,') . '.html\$2\"'", $buffer);
// }
Al tenerlo editado lo subimos de nuevo...> Esto lo que realizará será la paginación de los contenidos publicados (que 1, 2, 3, 4, 5 etc) podremos acceder correctamente y otros)...
que mal o es una o es otra... si lo activo no se ve mi editor de los post...
y aun asi no me funciona todo mal jejejej
MMM no se que es pero... hasta ahora no me da dado nada problemillas desde como las 1:30 que lo instale sigue intacto jeje...
Mala suerte she... que pena...
asi es... oye no tienes probemas con el panel del admin???
Nada... he estado pendiente del mismo desde que lo instale y nada ni siquiera una simple letra no aparece Gracias a Dios mejor así... xD...
Te ha quedado muy bueno el tuto, felicidades, yo tampoco tengo ningun problema con el mod de momento, los que teniamos se solucionarón, unicamente era el de la paginación, por lo demas voy probando y todo sigue correcto.
Un saludo.
Le dado vueltas y vueltas al mod... esta excelente...
Sin nada de errores.. uff alivio y alivio...
Esto es un tesoro para mí y para otros...
Gracias... compadre
Quote from: H@free on November 02, 2007, 03:17:04 PM
Le dado vueltas y vueltas al mod... esta excelente...
Sin nada de errores.. uff alivio y alivio...
Esto es un tesoro para mí y para otros...
Gracias... compadre
Ummhh si, la verdad da gusto tener las URL "amigables", jajajaja para mi tb es un tesoro, de momento va todo perfecto yo tb le he estado dando muchas vueltas no te pienses y cada vez me gusta más ^^, espera que google se de cuenta ;) entonces si disfrutaremos como niños :p.
Un saludo y gracias a ti tb!!
Estaba revisando tu web... y cuando instale el mod en hispa me genero description y keywords de cada post...
QueryString.php
En este archivo allí pone metas automaticamente... yo lo quite... y lo puse a mi manera...
Pero veo que a tí no te realizo nada...
Si no me recuerdas de esa línea:
// This should work even in 4.2.x, just not CGI without cgi.fix_pathinfo.
jeje... xD...
Lo que hiba a realizar era darte my archivo modificado para que intentaras... jaja... ;D
como?
Algunos de los archivos que este paquete necesita modificar no son escribibles. Esto necesita ser cambiado ingresando vía FTP y chmod o crear los archivos y directorios. Tu información de FTP puede ser almacenada temporalmente para una operación correcta del manejador de paquetes.
550 /vhosts/fotozone.es/httpdocs: No such file or directory
Quote from: FotoZone on November 30, 2007, 04:25:56 PM
Algunos de los archivos que este paquete necesita modificar no son escribibles. Esto necesita ser cambiado ingresando vía FTP y chmod o crear los archivos y directorios. Tu información de FTP puede ser almacenada temporalmente para una operación correcta del manejador de paquetes.
550 /vhosts/fotozone.es/httpdocs: No such file or directory
xD .... pufff... jejeje hace dos dias formulaste la misma pregunta y te dieron una respuesta a la cual diste las gracias, como se come esto?
pero por que sale ese error tio?
Mira este (http://www.simplemachines.org/community/index.php?topic=207320.0) post.
Saludos.
ola queria saber porque cuando quiero abrir un post kuando esta activado el seo4smf no lo puedo abir i cuando esta descativado si...i en los dos casos la direccion acaba con ".html" muchas gracias... i e echo lo mismo que el tutorial menos reemplaçar el query por me parece que lo an coregido por que no me sale =
muchas gracias por vuestra ayuda
Hola, me decidí por instalar este mod pero me dio fallo al instalarlo en el archivo sources/QueryString.php entonces pensé en modificarlo manualmente como indica el seo4smf.xml , y todo me va bién excepto al realizar la última y mas larga operación.
Aqui las 3 operaciones a realizar del QueryString según el seo4smf.xml
</operation>
</file>
<file name="$sourcedir/QueryString.php">
<operation>
<search position="replace"><![CDATA[
if (empty($_COOKIE) && SID != '' && empty($context['browser']['possibly_robot']) && @version_compare(PHP_VERSION, '4.3.0') != -1)
]]></search>
<add><![CDATA[
if (empty($_COOKIE) && SID != '' && empty($context['browser']['possibly_robot']) && @version_compare(PHP_VERSION, '4.3.0') != -1 && ($modSettings['seo4smf_enable']!="on"))
]]></add>
</operation>
<operation>
<search position="before"><![CDATA[
// If $scripturl is set to nothing, or the SID is not defined (SSI?) just quit.
if ($scripturl == '' || !defined('SID'))
return $buffer;
]]></search>
<add><![CDATA[
$scripturl1=str_replace("/index.php","",$scripturl);
]]></add>
</operation>
<operation>
<search position="replace"><![CDATA[
else
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?((?:board|topic)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl . '/' . strtr('\$1', '&;=', '//,') . '.html\$2\"'", $buffer);
]]></search>
<add><![CDATA[
if ($modSettings['seo4smf_sb_enable'] == "on")
{
$buffer = preg_replace('/<!-- Seo4SMF Social Bookmark -->/', create_sb() , $buffer);
}
if ($modSettings['seo4smf_enable'] == "on")
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?((?:board|topic|page)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl1 . '/' . beautify_urls(strtr('\$1', '&;=', '//,')) . '\$2\"'", $buffer);
if ($modSettings['seo4smf_beautify_profiles'] == "on")
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?action=profile;u=([^#"]+?)?"/e', "'\"' . \$scripturl1 . '/' . beautify_url_profiles(strtr('\$1', '&;=', '//,')) . '\$2\"'", $buffer);
}
if ($modSettings['seo4smf_beautify_actions'] == "on")
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?action=([^#"]+?)?"/e', "'\"' . \$scripturl1 . '/' . beautify_url_action('\$1'). '\$2\"'", $buffer);
}
if ($modSettings['seo4smf_keywords'] == "on")
{
$buffer = preg_replace('<meta name="keywords" content=(.*) />', create_keywords() , $buffer);
}
if ($modSettings['seo4smf_description'] == "on")
{
$buffer = preg_replace('<meta name="description" content=(.*) />', create_description() , $buffer);
}
$buffer = preg_replace('/<a href=\"http:\/\/www.simplemachines.org\/about\/copyright.php\" title=\"Free Forum Software\" target=\"_blank\">SMF © 2006-2007, Simple Machines LLC<\/a>/', '<a href="http://www.simplemachines.org/about/copyright.php" title="Free Forum Software" target="_blank">SMF © 2006-2007, Simple Machines LLC</a><br /> <a href="http://www.webmasterstalks.com" target="blank_">Seo4Smf v0.2 © Webmaster\'s Talks</a>' , $buffer);
$buffer = preg_replace('/<a href=\"http:\/\/www.simplemachines.org\/about\/copyright.php\" title=\"Free Forum Software\" target=\"_blank\">SMF © 2006, Simple Machines LLC<\/a>/', '<a href="http://www.simplemachines.org/about/copyright.php" title="Free Forum Software" target="_blank">SMF © 2006, Simple Machines LLC</a><br /> <a href="http://www.webmasterstalks.com" target="blank_">Seo4Smf v0.2 © Webmaster\'s Talks</a>' , $buffer);
$buffer = preg_replace('/<a href=\"http:\/\/www.simplemachines.org\/about\/copyright.php\" title=\"Free Forum Software\" target=\"_blank\">SMF © 2001-2006, Lewis Media<\/a>/', '<a href="http://www.simplemachines.org/about/copyright.php" title="Free Forum Software" target="_blank">SMF © 2001-2006, Simple Machines, Lewis Media</a><br /> <a href="http://www.webmasterstalks.com" target="blank_">Seo4Smf v0.2 © Webmaster\'s Talks</a>' , $buffer);
}
else
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?((?:board|topic)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl . '/' . strtr('\$1', '&;=', '//,') . '.html\$2\"'", $buffer);
}
]]></add>
</operation>
Aqui la operación donde me falla el foro ya.
<operation>
<search position="replace"><![CDATA[
else
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?((?:board|topic)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl . '/' . strtr('\$1', '&;=', '//,') . '.html\$2\"'", $buffer);
]]></search>
<add><![CDATA[
if ($modSettings['seo4smf_sb_enable'] == "on")
{
$buffer = preg_replace('/<!-- Seo4SMF Social Bookmark -->/', create_sb() , $buffer);
}
if ($modSettings['seo4smf_enable'] == "on")
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?((?:board|topic|page)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl1 . '/' . beautify_urls(strtr('\$1', '&;=', '//,')) . '\$2\"'", $buffer);
if ($modSettings['seo4smf_beautify_profiles'] == "on")
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?action=profile;u=([^#"]+?)?"/e', "'\"' . \$scripturl1 . '/' . beautify_url_profiles(strtr('\$1', '&;=', '//,')) . '\$2\"'", $buffer);
}
if ($modSettings['seo4smf_beautify_actions'] == "on")
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?action=([^#"]+?)?"/e', "'\"' . \$scripturl1 . '/' . beautify_url_action('\$1'). '\$2\"'", $buffer);
}
if ($modSettings['seo4smf_keywords'] == "on")
{
$buffer = preg_replace('<meta name="keywords" content=(.*) />', create_keywords() , $buffer);
}
if ($modSettings['seo4smf_description'] == "on")
{
$buffer = preg_replace('<meta name="description" content=(.*) />', create_description() , $buffer);
}
$buffer = preg_replace('/<a href=\"http:\/\/www.simplemachines.org\/about\/copyright.php\" title=\"Free Forum Software\" target=\"_blank\">SMF © 2006-2007, Simple Machines LLC<\/a>/', '<a href="http://www.simplemachines.org/about/copyright.php" title="Free Forum Software" target="_blank">SMF © 2006-2007, Simple Machines LLC</a><br /> <a href="http://www.webmasterstalks.com" target="blank_">Seo4Smf v0.2 © Webmaster\'s Talks</a>' , $buffer);
$buffer = preg_replace('/<a href=\"http:\/\/www.simplemachines.org\/about\/copyright.php\" title=\"Free Forum Software\" target=\"_blank\">SMF © 2006, Simple Machines LLC<\/a>/', '<a href="http://www.simplemachines.org/about/copyright.php" title="Free Forum Software" target="_blank">SMF © 2006, Simple Machines LLC</a><br /> <a href="http://www.webmasterstalks.com" target="blank_">Seo4Smf v0.2 © Webmaster\'s Talks</a>' , $buffer);
$buffer = preg_replace('/<a href=\"http:\/\/www.simplemachines.org\/about\/copyright.php\" title=\"Free Forum Software\" target=\"_blank\">SMF © 2001-2006, Lewis Media<\/a>/', '<a href="http://www.simplemachines.org/about/copyright.php" title="Free Forum Software" target="_blank">SMF © 2001-2006, Simple Machines, Lewis Media</a><br /> <a href="http://www.webmasterstalks.com" target="blank_">Seo4Smf v0.2 © Webmaster\'s Talks</a>' , $buffer);
}
else
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?((?:board|topic)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl . '/' . strtr('\$1', '&;=', '//,') . '.html\$2\"'", $buffer);
}
]]></add>
</operation>
Mi pregunta es....
Es indispensable modificar este archivo como indica el mod o con solo hacer la que se indica al inicio de este tema es suficiente?
Lo que dice el mod es lo que se debe de hacer casi seguro
El Mod al parecer ya no hay que darle mano al QueryString, ya han modificado tal cosa...
Solo subiendo el mod cambiando de nombre el htacces y modificando la ruta del smf...
Hola,
Para los muy torpes (como yo) habria que añadir al manual que el .htaccess hay que modificarlo! Cambiando /forum por la carpeta real donde esté nuestro foro.
Otra cosa, tengo dudas sobre las opciones del MOD
Seo4SMF Enable
Remove board from front of topic ? >> ¿Qué es lo qué elimina que no veo cambios en los temas?
Beautifying url for profile members ?
Beautifying url for forum actions ?
Remove accented characters from url's ?
Enable SQL Query when we don't find url in SMF Context ? >> ¿Qué quiere decir esto?
Ahora una observación SEO,
Si google ya tiene una buena cantidad de paginas de mi foro indexadas en el formato "url-feas" voy a perder todas esas paginas o incluso me va a detectar las url nuevas como contenido duplicado, ¿no?
creo que google actualizara las paginas
Me gustaria que me responda alguien para que es php.ini ???
para ver las paginas de sitemap? yo lo puse enable y con otras cosas y anda, pero no veo un listado de paginas en sitemap ni nada..
Saludos
php.ini es donde se configuran las fnciones del php, es decir por ejemplo si en tu servidor te dieran acceso al php.ini podrias deshabilitar librerias como la gd zndoptimizer, algunas librerias que se instalan en los servidores necesitan que se agreguen lineas al php.ini para funcionar en mi firma hay un tuto para mpliar un poco la informacion vertida en este post, no lo coloco pues seria casilo mismo, solo que agrego un par de cosas que no vi aqui.
El querystring no hace falta modificarlo para nada.
El querystring no hace falta modificarlo para nada.
En alguna ocaciones lo he modificado otras veces que instalado el seo4, no he realizado dicham modificación no podría explicar a que deba eso...
Pero por si algún caso no te ba el foro o no sigue los hilos de paginación de los post-it tocará modificarlo...
miren ami me pasa 1 problema, arriba en la url me pone en html , pero le doi a propiedades , en un link y el link esta en php :S
Que raro es ese problema
Quote from: _Hogun:_ on February 05, 2008, 07:27:15 AM
Que raro es ese problema
Oh! mi dios! volvio! porqueeeeeeeeeeeee!
eso no cambia nada, de suerte su pr no cambio esta vez en la actualización de enero, spam por puro gusto
Sí es Fotozone, además de este creo que tiene más nick...
Nunca deja la Maña jajaja
Donde nestan esos dos archivos que salen en rojo que hay que descargar?
Hola. He seguido los pasos que habeis dado y me han sucedido estas cosas:
- Se instala correctamente. Vale todo normal.
- Al hacer todo lo que piden, voy al apartado de administración del SEO4SMF y lo activo (Enable), creo el htaccess.txt (y luego lo paso a .htaccess) No me hace falta modificarlo, pues el foro está en la carpeta raíz.
- Puse el php.ini
- Al hacer esto entro al foro y todo correcto, pero cuando pretendo ir a algún apartado, salta un error y no entra.
- Las modificaciones que indican me hace saltar un error en Posquery en línea 495
Tampoco se instaló pues no me indicó el Copyright abajo, como al resto de foros de los que he visto. Tampoco me creó el Sitemap que es lo que más me interesaba :(
Muchas gracias a todos. Me ha servido de mucho.
Aunque me queda un problema para instalar el SEO4smf
He seguido todos los pasos para instalarlo y se instala conrrectamente, pero las urls no se construyen correctamente sino que hay un redireccionamiento a la url amigable para los buscadores, es decir, la url sería:
http://localhost/foro/meteorologia-general-b1.0/
y la url del script te la muestra como:
http://localhost/foro/index.php/board,1.0.html
produciéndose así el redireccionamiento a la primera url
Y una última cosa que tampoco me funciona es la paginación en los topic y los distintos subforos.
Espero alguien nos pueda ayudar con este problema.
Saludos!
Buenas aca463 para tu primera pregunta, entra a las opciones de Seo4SMF en el panel de admin y marca estas casillas:
Seo4SMF Enable
Beautifying url for profile members ?
Beautifying url for forum actions ?
Enable SQL Query when we don't find url in SMF Context ?
Para la segunda pregunta sobre la paginación esta explicado en el primer post del tema por H@free lo que pasa es que esta mal indicado que código hay que cambiar, te dejo un enlace para que veas el código que tienes que cambiar en el archivo QueryString.php:
http://www.simplemachines.org/community/index.php?topic=230135.msg1481283#msg1481283
Un saludo!
Todo esto del se4smf solo funciona el el smf 1.1.3 vrdad¿?
Alguien podria aclararmelo por favor
salu2
.-ErrOr-404-.
Quote from: .-ErrOr-404-. on March 26, 2008, 03:49:30 PM
Todo esto del se4smf solo funciona el el smf 1.1.3 vrdad¿?
Alguien podria aclararmelo por favor
salu2
.-ErrOr-404-.
Compatible With: 1.1 RC3, 1.1, 1.1.1, 1.1.2, 1.1.3 y 1.1.4 de momento que yo sepa.
Un saludo!!
Quote from: Jose7up on March 26, 2008, 04:25:24 PM
Quote from: .-ErrOr-404-. on March 26, 2008, 03:49:30 PM
Todo esto del se4smf solo funciona el el smf 1.1.3 vrdad¿?
Alguien podria aclararmelo por favor
salu2
muchas gracias amigo..
ahora lo pruebo entonces...:P
.-ErrOr-404-.
Compatible With: 1.1 RC3, 1.1, 1.1.1, 1.1.2, 1.1.3 y 1.1.4 de momento que yo sepa.
Un saludo!!
De nada, suerte con el tema.
Un saludo!!
Hola como estan
Tengo el mismo problema del final de las url , o sea se ven así
http://localhost/foro/meteorologia-general-b1.0/
y desde el panel no lo puedo sacar pormas que desmarco la opción sigue sin modificarse en las url .
En el caso de la paginación de los foros tampoco puedo arreglarlas en el archivo QueryString hago las modificaciones pero me da error al querer entrar al panel de administración y tampoco a la pagina del foro principal si a los distintos foros y su paginación anda . Pero bueno no puedo dejarlo así , por ende saco las correcciones del QueryString . Les dejo la parte a modificar del archivo a ver si alguien encuentra el error
// This should work even in 4.2.x, just not CGI without cgi.fix_pathinfo.
if (!empty($modSettings['queryless_urls']) && (!$context['server']['is_cgi'] || @ini_get('cgi.fix_pathinfo') == 1) && $context['server']['is_apache'])
{
// Let's do something special for session ids!
if (defined('SID') && SID != '')
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?(?:' . SID . ';)((?:board|topic)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl . '/' . strtr('\$1', '&;=', '//,') . '.html?' . SID . '\$2\"'", $buffer);
if ($modSettings['seo4smf_sb_enable'] == "on")
{
$buffer = preg_replace('/<!-- Seo4SMF Social Bookmark -->/', create_sb() , $buffer);
}
if ($modSettings['seo4smf_enable'] == "on")
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?((?:board|topic|page)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl1 . '/' . beautify_urls(strtr('\$1', '&;=', '//,')) . '\$2\"'", $buffer);
if ($modSettings['seo4smf_beautify_profiles'] == "on")
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?action=profile;u=([^#"]+?)?"/e', "'\"' . \$scripturl1 . '/' . beautify_url_profiles(strtr('\$1', '&;=', '//,')) . '\$2\"'", $buffer);
}
if ($modSettings['seo4smf_beautify_actions'] == "on")
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?action=([^#"]+?)?"/e', "'\"' . \$scripturl1 . '/' . beautify_url_action('\$1'). '\$2\"'", $buffer);
}
if ($modSettings['seo4smf_keywords'] == "on")
{
$buffer = preg_replace('<meta name="keywords" content=(.*) />', create_keywords() , $buffer);
}
if ($modSettings['seo4smf_description'] == "on")
{
$buffer = preg_replace('<meta name="description" content=(.*) />', create_description() , $buffer);
}
$buffer = preg_replace('/<a href=\"http:\/\/www.simplemachines.org\/about\/copyright.php\" title=\"Free Forum Software\" target=\"_blank\">SMF © 2006-2007, Simple Machines LLC<\/a>/', '<a href="http://www.simplemachines.org/about/copyright.php" title="Free Forum Software" target="_blank">SMF © 2006-2007, Simple Machines LLC</a><br /> <a href="http://www.webmasterstalks.com" target="blank_">Seo4Smf v0.2 © Webmaster\'s Talks</a>' , $buffer);
$buffer = preg_replace('/<a href=\"http:\/\/www.simplemachines.org\/about\/copyright.php\" title=\"Free Forum Software\" target=\"_blank\">SMF © 2006, Simple Machines LLC<\/a>/', '<a href="http://www.simplemachines.org/about/copyright.php" title="Free Forum Software" target="_blank">SMF © 2006, Simple Machines LLC</a><br /> <a href="http://www.webmasterstalks.com" target="blank_">Seo4Smf v0.2 © Webmaster\'s Talks</a>' , $buffer);
$buffer = preg_replace('/<a href=\"http:\/\/www.simplemachines.org\/about\/copyright.php\" title=\"Free Forum Software\" target=\"_blank\">SMF © 2001-2006, Lewis Media<\/a>/', '<a href="http://www.simplemachines.org/about/copyright.php" title="Free Forum Software" target="_blank">SMF © 2001-2006, Simple Machines, Lewis Media</a><br /> <a href="http://www.webmasterstalks.com" target="blank_">Seo4Smf v0.2 © Webmaster\'s Talks</a>' , $buffer);
}
else
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?((?:board|topic)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl . '/' . strtr('\$1', '&;=', '//,') . '.html\$2\"'", $buffer);
}
}
// Return the changed buffer.
return $buffer;
}
?>
que salgan asi no es problema
http://localhost/foro/meteorologia-general-b1.0/
es lo mas que puedes hacer pues siempre llevan el identificador del foro , inmagina por ejemplo que tengas dos secciones uan musica y otra video y en ambas tengas una de peticiones entonces si temetes a
localhost/peticiones, a que url te dirgiria a la de music o a la de videos?como ves por eso necesario el identificador del foro al final de la url. paara efectos seo eso no afecta
En el archivo php.ini solo agregan estos datos ?
safe_mode = off
register_globals = on
O hay otros nas ?
Donde puedo descargar el htaccess y el php.ini?
Versión mod: la última
Versión SMF: 1.1.4
MOD: mod_icon, mod_seo4smf
Hosting: Goddady
Hola a todos
estoy probando el mod. No me ha dado errores de instalación, pero tampoco reescribe las urls lamentablemente. Activé en el panel de administración la opción "Mostrar URLs sin ?s", el foro está instalado en una carpeta del document root y he probado de editar el htaccess con la directiva
RewriteBase
poniendo la carpeta y también sin. Pero no funciona. En este hosting tengo también un wordpress y su htaccess si que está funcionando sin problemas. El blog está también en una carpeta y dentro tiene su htaccess, como ya os comento. Lo digo para descartar problemas.
Al examinar el htaccess veo que ha creado las reglas por defecto, es decir, están allí. Lo que se me escapa es porque no funciona. Lo menos malo, es que el foro sigue funcionando bien, pero claro, sin urls amigables. En la web del mod no hay soporte, lamentablemente. ¿Alguna idea?¿Hay que reeditar el htaccess en base a si estamos dentro de una carpeta o no ?
Saludos :)
Bueno, después de unos minutos veo que la redirección funciona, aunque devuelve un 404.
De un link tipo: http://todoastrologia.es/index.php?board=2.0
Pasa un link tipo: http://todoastrologia.es/todoastrologia/seo4smf-redirect.php?b=2
Este foro está dentro de una carpeta del DocumentRoot. Y creo que por ahí está el problema. Esto sucede con la directiva RewriteBase como
RewriteBase /todoastrologia
Pero, si la quito, me muestra una url con toooooda la dirección del DocumentRoot :S
http://todoastrologia.es/www/root/home/var/html/todoastrologia/seo4smf-redirect.php?b=9
No se, no tiene buena pinta esto, parece que va a costar que funcione. ¿Alguien ha tenido problemas similares?
Saludos.
Yo he instalado el mod siguiendo los pasos del tutorial y ahora las URLs del panel de administración no funcionan, es decir, me salta un error 404 :'(.
¿Cómo puedo desinstalar el mod sin poder entrar en el panel de administración?
EDITO: He conseguido desactivarlo, pero ¿cómo puedo evitar que esto me ocurra al activarlo?
Quote from: lorogarcia on March 31, 2008, 05:34:31 PM
Donde puedo descargar el htaccess y el php.ini?
Teniendo esto... Listo:
> Procedemos a subir el htaccess
http://hafre.quae.net/descargar/htaccess.txt
> También subimos este archivito que se llama php.ini
http://hafre.quae.net/descargar/php.ini
Seguir Leyendo... (http://www.hispa-digital.com/seo-4-smf-simple-machines-forum-url-legibles-en-foro-tutorial-instalar-seo4smf.html)
Quote from: sumolari on April 08, 2008, 07:23:22 AM
Yo he instalado el mod siguiendo los pasos del tutorial y ahora las URLs del panel de administración no funcionan, es decir, me salta un error 404 :'(.
¿Cómo puedo desinstalar el mod sin poder entrar en el panel de administración?
EDITO: He conseguido desactivarlo, pero ¿cómo puedo evitar que esto me ocurra al activarlo?
Quote from: sumolari on April 08, 2008, 07:23:22 AM
Yo he instalado el mod siguiendo los pasos del tutorial y ahora las URLs del panel de administración no funcionan, es decir, me salta un error 404 :'(.
¿Cómo puedo desinstalar el mod sin poder entrar en el panel de administración?
EDITO: He conseguido desactivarlo, pero ¿cómo puedo evitar que esto me ocurra al activarlo?
Intenten Subir mis Archivos los que Uso:
> Procedemos a subir el htaccess
:D http://hafre.quae.net/descargar/htaccess.txt
> También subimos este archivito que se llama php.ini
:D http://hafre.quae.net/descargar/php.ini
> QueryString.php (Guardarlo en un "txt" con formato .php y subirlo a su
respectivo directorio...
:D http://hafre.quae.net/descargar/QueryString.txt
Estos siempre con su respectiva
COPIA... luego no hay reclamos... ;D
Wow..yo lo estoy usando y me va de maravilla..:)...gracias por el tuto...;)...
Salu2
.-ErrOr-404-.
H@free, ya tenía puesto el .htaccess, el php.ini y el QueryString, sin embargo me parece que el .htaccess que tenía no estaba bien, porque al poner el código del que me has dado ha funcionado todo a la perfección, muchas gracais :D .
Gracias H@free.
Yo tambien lo tenia instalado pero me hacia falta subir el php.ini y htaccess a /foro y modificar el QueryString
Vamos, me faltaba por hacer todo xD
Me costó un rato por que en querystring.php tenía bastante mas codigo por medio del que sale en la página que dijiste y lo primero que se me ocurrió fue suprimirlo todo para poner ese codigo, luego mezclé ambos códigos sin las // que funcionaba casi todo excepto los enlaces a los temas que salian como si no estuviera enlazado, y hasta que probe a ponerle // respetando todo el codigo no me funcionó al 100%.
Si pusieras ambos códgos separados sería mas entendible.
Algo así:
QuoteBuscar
// This should work even in 4.2.x, just not CGI without cgi.fix_pathinfo.
if (!empty($modSettings['queryless_urls']) && (!$context['server']['is_cgi'] || @ini_get('cgi.fix_pathinfo') == 1) && $context['server']['is_apache'])
{
Y reemplazar por
// This should work even in 4.2.x, just not CGI without cgi.fix_pathinfo.
// if (!empty($modSettings['queryless_urls']) && (!$context['server']['is_cgi'] || @ini_get('cgi.fix_pathinfo') == 1) && $context['server']['is_apache'])
// {
Buscar:
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?((?:board|topic)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl . '/' . strtr('\$1', '&;=', '//,') . '.html\$2\"'", $buffer);
}
Y reemplazar por
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?((?:board|topic)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl . '/' . strtr('\$1', '&;=', '//,') . '.html\$2\"'", $buffer);
// }
Aparte de eso que no lograba entender, Es bastante fácil aplicar el mod.
Gracias!!
Quote from: lorogarcia on April 08, 2008, 02:05:37 PM
Gracias H@free.
Yo tambien lo tenia instalado pero me hacia falta subir el php.ini y htaccess a /foro y modificar el QueryString
Vamos, me faltaba por hacer todo xD
Me costó un rato por que en querystring.php tenía bastante mas codigo por medio del que sale en la página que dijiste y lo primero que se me ocurrió fue suprimirlo todo para poner ese codigo, luego mezclé ambos códigos sin las // que funcionaba casi todo excepto los enlaces a los temas que salian como si no estuviera enlazado, y hasta que probe a ponerle // respetando todo el codigo no me funcionó al 100%.
Si pusieras ambos códgos separados sería mas entendible.
Algo así:
QuoteBuscar
// This should work even in 4.2.x, just not CGI without cgi.fix_pathinfo.
if (!empty($modSettings['queryless_urls']) && (!$context['server']['is_cgi'] || @ini_get('cgi.fix_pathinfo') == 1) && $context['server']['is_apache'])
{
Y reemplazar por
// This should work even in 4.2.x, just not CGI without cgi.fix_pathinfo.
// if (!empty($modSettings['queryless_urls']) && (!$context['server']['is_cgi'] || @ini_get('cgi.fix_pathinfo') == 1) && $context['server']['is_apache'])
// {
Buscar:
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?((?:board|topic)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl . '/' . strtr('\$1', '&;=', '//,') . '.html\$2\"'", $buffer);
}
Y reemplazar por
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?((?:board|topic)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl . '/' . strtr('\$1', '&;=', '//,') . '.html\$2\"'", $buffer);
// }
Aparte de eso que no lograba entender, Es bastante fácil aplicar el mod.
Gracias!!
Aparte de facil...es oro refinado...pra nosotros...:D
Bueno, quería decir es facíl... con el tutorial.
Pero facil como otros mods en los que hay que cambiarle cosas. Yo leia por este foro que era dificil de instalar y entre eso y que no tenía los archivos que puso H@free pense que me cargaría el foro o tendría una chapuza, pero es mucho mas facil de lo que esperaba
Jjajaja... Veo que os fue de mucha ayuda...
Bueno es que no solo aquí he visto este tutorial...
Y bueno pos aquí es mejor compartirlo y subirlo que andar buscando aún y peor aún para los que estamos ciegos...
Es mejor así...
Con esto creo que se les termina el problema...
sT2...
Quote from: lorogarcia on April 08, 2008, 02:05:37 PM
Gracias H@free.
Yo tambien lo tenia instalado pero me hacia falta subir el php.ini y htaccess a /foro y modificar el QueryString
Vamos, me faltaba por hacer todo xD
Aparte de eso que no lograba entender, Es bastante fácil aplicar el mod.
Gracias!!
Esto es para mí encontrar una Pichacha de Agua en un Desierto...
Ya,
es facil... con el tutorial dije después por si acaso que supongo que para ti crear el htaccess te debio ser trabajo duro. La verdad esperaba mas dificultad despues de todo lo que oía de lo difícil que era.
Con el tutorial que pusiste es tan facil como cualquier otro mod, que yo estaba leyendo por ahi que era imposible de instalar practicamente, como en este post:
Quote from: HotJoint on April 03, 2008, 10:21:57 AM
Este mod de hecho deberia declararse desactualizado y peligroso y lo peligroso no porque en realidad lo sea sino porque el trabajo que demanda instalarlo lo tiene que hacer alguien que conozca bien este sistema ya que cualquier usuario termina destrozando el foro.
Y la verdad que me costó mas instalar el sbox (al ser el primer mod que aplicaba) o el cambiar el theme para añadirle la publicidad con el ad manager que este que ya no tenia muchas esperanzas de instalarlo y temía de que si lo intentaba me cargase el foro o no fuese capad de instalarlo correctamente.
De nuevo Gracias por el aporte
Se me fue por alto y perdón por auto contestarme...
Quoteif ($modSettings['seo4smf_keywords'] == "of")
{
$buffer = preg_replace('<meta name="keywords" content=(.*) />', create_keywords() , $buffer);
}
if ($modSettings['seo4smf_description'] == "of")
Busquen este código al final del
http://hafre.quae.net/descargar/QueryString.txt
Y donde he dejado de color rojo "of" lo ponen on para que muestre los
Keywords y Description yo lo tengo desabilitado por que estoy trabajando de otra manera...
;D
sT2...
Quote from: MakiaResc on April 15, 2008, 03:31:34 PM
Funciona con SMF 2.0 o ya la medio cage al maximo xD
de momento
no es compatible con la 2.0, he probado ha instalarlo, pero para comenzar hay que modifcar las consultas a la base de datos usando la snuevas funciones de smf 2.0 para las querys,aparte que hay archivos que requieren una modificacion mayor para poder funcionar, en mi caso he logrado que funcione hasta las urls en formato html, pero lso perfiles y las actions aun no funcionan, ni el panel de admin
Quote from: H@free on November 01, 2007, 06:05:59 PM
(https://www.simplemachines.org/community/proxy.php?request=http%3A%2F%2Fwww.hispa-digital.net%2Ftutos%2Fsmf%2Fsmf-simple-machines-forum-optimizando-url-seo-posicionamiento.JPG&hash=ecf31b0535b6ae10a5c961a4ee36870674be437c)
Aquí el pequeño tuto que nunca encontre jajaja...
http://www.hispa-digital.com/seo-4-smf-simple-machines-forum-url-legibles-en-foro-tutorial-instalar-seo4smf.html
The best!!!!
me temoq ue si, la gran mayoria que tenemos un foro abierto al publico aun no actualizamos por eso mismo, no estan muchos mod utiles aun para la 2.0 y aparte aun hay pequeño errores que correjir, me temo demorara un tiempo el smf 2.0
Alguien me podria ayudar con lo siguiente:
http://www.mundote.info/Foro/sitemaps.php
¿Subi todo cual es pero esta parte no me funciona alguien sabe el porque?
Pues mi amigo Maki, veo que no soy el único...
Y tampoco somos los únicos... xD
http://foro.elhacker.net/sitemaps.php
Y otros... más
Haber que nos ingeniamos...
jeje raro que hasta ahora veo este post...
a mi no me da ningun error, funcionando muy bien jeje http://www.forodirecto.com/sitemaps.php >:(
Hola
Perdonad mi ignorancia después de haber instalado el Seo4smf donde esta el sitemap.xml yo solo veo el sitemaps.php que archivo se a de subir al sitemap de gogle
¿ cuantas veces se a de subir el sitemap.....
¿ con una sola vez es suficiente
Gracias
Quote from: sAmMyTo on May 15, 2008, 04:19:41 AM
a mi no me da ningun error, funcionando muy bien jeje http://www.forodirecto.com/sitemaps.php >:(
Que raro... lo he aplicado y pos no me lo corrio intentare de nuevo para ver...
> Has modificado archivos manualmente ó solo lo aplicaste ???
Quote from: cambiarcromos on May 15, 2008, 10:24:02 AM
Hola
Perdonad mi ignorancia después de haber instalado el Seo4smf donde esta el sitemap.xml yo solo veo el sitemaps.php que archivo se a de subir al sitemap de gogle
¿ cuantas veces se a de subir el sitemap.....
¿ con una sola vez es suficiente
Gracias
Solo pon el enlace al sitemap ...
Y de ahí en mas se actualiza automaticamente
Quote from: MakiaResc on May 14, 2008, 04:41:03 PM
Alguien me podria ayudar con lo siguiente:
http://www.mundote.info/Foro/sitemaps.php
¿Subi todo cual es pero esta parte no me funciona alguien sabe el porque?
Sube el sitemap que utilizabas en la versión del 1.1.4 y te funcionara de nuevo...
> Siempre guardo RESPALDOS xD, para andar dandole shinchala jeje...
http://full.hispa-digital.com/sitemaps.php
El problema es que no se sabe nada del autor del mod desde hace mucho tiempo y para colmo desde hace unos dias el mod no sale en la sección de Mods de SMF, será el fin de Seo4SMF y tendremos que pasarnos a Pretty URLs con la nueva versión 2 de SMF??
Quizás se actualice pero de momento en la web del autor no se comenta nada y no se ve ni rastro del autor por ningún sitio. Veremos como acaba el asunto, podría ser bastante perjudicial el asunto, perderiamos PageRank y Backlinks de muchas zonas del foro, igual hicimos una mala elección al escoger Seo4SMF en vez de Pretty URLs.
Un saludo!!
es una lastima si seva Seo4SMF pero a las web que tenga intalado el mod no hay problema hasta que llegemos a la vercion 2. oficial verdad por que por el momento esta 1.1.5 nme imagino que sera 1.1.6.7.8.9 hasta el 2. o no?
Perdonar otra cuestion
Como subes el sitemap. a gogle
1º Como del sitio web general
2º Como gogle code search
Gracias
Quote from: aristides_03 on May 15, 2008, 01:36:24 PM
es una lastima si seva Seo4SMF pero a las web que tenga intalado el mod no hay problema hasta que llegemos a la vercion 2. oficial verdad por que por el momento esta 1.1.5 nme imagino que sera 1.1.6.7.8.9 hasta el 2. o no?
Mientras no cambie demasiado el código de SMF en las proximas versiones no creo que haya problema, pero eso está por ver aún, de momento se puede ir usando.
Quote from: cambiarcromos on May 15, 2008, 01:53:41 PM
Perdonar otra cuestion
Como subes el sitemap. a gogle
1º Como del sitio web general
2º Como gogle code search
Gracias
Entras a tu cuenta en Google te vas a la opción de Herramientas para WebMasters y en Añadir Sitio añades tu sitio, luego en el panel de la izquierda le das donde pone Sitemaps y luego a añadir un Sitemap y eliges la opción Añadir un Sitemap Web general, por ultimo añades la URL del Sitemap de tu web o foro.
Saludos.
OK
subido y esperando
Gracias
A lo que se refieren, tienen razón; es decir el autor de SEO4SMF pues ha desaparecido, y según leí de MakiaResc en en tema que dejo por allí que en la Versión SMF Beta no se pudo instalar...
Y para todos aquellos que hemos dejado url con este mod, pues se perderán al no instalarlo...
Se perderá mucho por delante...
Pero como siempre alguien los actualiza xD... o los modifica todo a su tiempo...
Hola
si el foro lo tengo en el directorio raiz
e de modificar algo del Edit htaccess
¿#RewriteBase in this way: RewriteBase /forum
RewriteBase /
Gracias
Quote from: H@free on May 15, 2008, 04:47:40 PM
A lo que se refieren, tienen razón; es decir el autor de SEO4SMF pues ha desaparecido, y según leí de MakiaResc en en tema que dejo por allí que en la Versión SMF Beta no se pudo instalar...
Y para todos aquellos que hemos dejado url con este mod, pues se perderán al no instalarlo...
Se perderá mucho por delante...
Pero como siempre alguien los actualiza xD... o los modifica todo a su tiempo...
Esperamos que tengas razón H@free y se actualice, pero ya te digo que el mod no esta ni en la zona de descargas de mods de SMF, pero bueno de momento tendremos paciencia.
Quote from: nurg on May 15, 2008, 09:41:20 PM
Hola
si el foro lo tengo en el directorio raiz
e de modificar algo del Edit htaccess
¿#RewriteBase in this way: RewriteBase /forum
RewriteBase /
Gracias
Si lo tienes en la raíz o en otra carpeta que no sea forum si lo tienes que modificar, si es en la raíz como has dicho esta bien.
Saludos.
Creo que ya funciona
si quereis confirmarmelo lo de l sitemap
Gracias
H@free no podrias subir a algun host el sitemap.php lo que pasa es que ya no lo tengo :(
Bueno Jose7up, espero y confío que el Autor regrese con animos para darle duro...
ó
Como digo siempre existe alguien que carga picos y palas para trabajar... xD...
Quote from: MakiaResc on May 18, 2008, 04:18:17 PM
H@free no podrias subir a algun host el sitemap.php lo que pasa es que ya no lo tengo :(
Con gusto Makia, para eso estamos...
http://hafre.quae.net/descargar/sitemaps.txt ;D
http://www.mundote.info/Foro/sitemaps.php
Por lo que veo o una de dos es error de mi host o por las especificaciones del sitemap no lograra hacer el mio jejeje
Ya subi el que me diste H@free y sigue igual xD
Creo saber cual es el problema. No se si podrias mandarme una imagen de como tienes configurado tu seo4smf, aqui te dejo una imagen talves y es eso.....
(https://www.simplemachines.org/community/proxy.php?request=http%3A%2F%2Fwww.subirimagen.es%2F08%2F0518%2F153637%2Fthumb_1.JPG&hash=d8c0be80c33c3d81ec522e94b8569c74a7395d18) (http://www.subirimagen.es/08/0518/153637/1.JPG)
Administración: ;D
(https://www.simplemachines.org/community/proxy.php?request=http%3A%2F%2Fimg525.imageshack.us%2Fimg525%2F7688%2Fhispamo0.jpg&hash=4134a493c3e0f11182fc2f2483019fa51a69be57)
http://img525.imageshack.us/img525/7688/hispamo0.jpg
en la db (phpmyadmin) ;D
(https://www.simplemachines.org/community/proxy.php?request=http%3A%2F%2Fimg525.imageshack.us%2Fimg525%2F8288%2F32128650pg8.png&hash=315fbbd889a451eeedabdc7a27f186159c484d50)
http://img525.imageshack.us/img525/8288/32128650pg8.png
Me toco instalar este Mod Tres Veces hasta que le pegue... :o :D
Pues ya le movi a todo y sigue sin funcionar ....
bueno yo tengo instalado el mod pero no al 100% y bueno quiero volver a intentar lo pero el tuto los links estan muertos podrian verlos H@free
Quote from: H@free on November 01, 2007, 06:05:59 PM
(https://www.simplemachines.org/community/proxy.php?request=http%3A%2F%2Fwww.hispa-digital.net%2Ftutos%2Fsmf%2Fsmf-simple-machines-forum-optimizando-url-seo-posicionamiento.JPG&hash=ecf31b0535b6ae10a5c961a4ee36870674be437c)
Aquí el pequeño tuto que nunca encontre jajaja...
http://www.hispa-digital.com/seo-4-smf-simple-machines-forum-url-legibles-en-foro-tutorial-instalar-seo4smf.html
Es valido para la 1.1.5 ?
Quote from: MakiaResc on May 18, 2008, 09:52:41 PM
Pues ya le movi a todo y sigue sin funcionar ....
Ahora que has movido todo has notado algún cambio es decir algún error te ha sucedido...
Me daba un error de que él "el grupo no se podría escribir" o parecido CLARO en ingles (traducción Chapina) xD...
Que raro, tenemos la misma versión... y que pasa con él
htaccess, intentaste con el que deje, revisa esto:
http://www.simplemachines.org/community/index.php?topic=203647.msg1501026#msg1501026
Revisa también el
querystring.php :
http://www.simplemachines.org/community/index.php?topic=203647.msg1501138#msg1501138
Quote from: aristides_03 on May 19, 2008, 04:40:28 AM
bueno yo tengo instalado el mod pero no al 100% y bueno quiero volver a intentar lo pero el tuto los links estan muertos podrian verlos H@free
Sí me dijeras que link todo lo que se necesita esta en este
Post-it...
Quote from: kKrunchiso on May 19, 2008, 04:57:09 AM
Quote from: H@free on November 01, 2007, 06:05:59 PM
(https://www.simplemachines.org/community/proxy.php?request=http%3A%2F%2Fwww.hispa-digital.net%2Ftutos%2Fsmf%2Fsmf-simple-machines-forum-optimizando-url-seo-posicionamiento.JPG&hash=ecf31b0535b6ae10a5c961a4ee36870674be437c)
Aquí el pequeño tuto que nunca encontre jajaja...
http://www.hispa-digital.com/seo-4-smf-simple-machines-forum-url-legibles-en-foro-tutorial-instalar-seo4smf.html
Es valido para la 1.1.5 ?
Claro todo lo que necesitas está aquí en este Post-it como lo recordamos en estos pequeños dos link...
http://www.simplemachines.org/community/index.php?topic=203647.msg1501026#msg1501026
http://www.simplemachines.org/community/index.php?topic=203647.msg1501138#msg1501138
Buen día a T2...
Att. H@free ;D
al principio del tuto esta unos links pero estan muertos ejemplo
> seo4smf-0.2.9.9
> Lo podemos descargar de aquí...
http://www.webmasterstalks.com/tpmod.html;dl=item48
Teniendo esto... Listo:
> Procedemos a subir el htaccess ( /foro ) si es que el directorio esta así... DESCARGAR nos abrira un txt lo guardamos en un bloc de notas (txt) lo subimos a nuestro directorio y estando allí lo renombramos a .htaccess...
links
http://hafre.quae.net/DOWNLOAD/htaccess.txt
> También subimos este archivito que se llama php.ini DESCARGAR (Este archivo tenemos que subirlo al la carpeta donde se encuentra el paquete del SMF ( /foro ). También lo guardamos en un bloc de notas (txt) lo subimos a la carpeta donde se encuentra instalado el smf (/foro) al tenerlo allí como txt simplemente lo renombramos a php.ini nada más...
links
http://hafre.quae.net/DOWNLOAD/php.ini
esos links
-------------------------------------
intente desintalar el mod pero meda errores
Executar Modificación ./Sources/BoardIndex.php Prueba fallida
Executar Modificación ./Sources/MessageIndex.php Prueba fallida
Executar Modificación ./Sources/QueryString.php Prueba fallida
-----------------------
Otra consulta tengo instalado Pretty URLs - Base, GoogleTagged, Seo 4 SMF no hay conflictos con esos mods o solo debo de tener seo ?
QuoteClaro todo lo que necesitas está aquí en este Post-it como lo recordamos en estos pequeños dos link...
http://www.simplemachines.org/community/index.php?topic=203647.msg1501026#msg1501026
http://www.simplemachines.org/community/index.php?topic=203647.msg1501138#msg1501138
Checa estos...
Quote
esos links
-------------------------------------
intente desintalar el mod pero meda errores
Executar Modificación ./Sources/BoardIndex.php Prueba fallida
Executar Modificación ./Sources/MessageIndex.php Prueba fallida
Executar Modificación ./Sources/QueryString.php Prueba fallida
Eso es porque el Mod fue instalado y esos archivos puedan que sean otros y no encuentre el código del Mod para desinstalarse... ;D puedes borrar el mod y sustituir todos los archivos que el mismo Modifica...
Pero si realizas y tienes otros mod que hacen uso de estos archivos .php se desinstalaran también...
Puedes realizarlo manualmente también... :o
Quote
Otra consulta tengo instalado Pretty URLs - Base, GoogleTagged, Seo 4 SMF no hay conflictos con esos mods o solo debo de tener seo ?
Sobre esto: (Tienes muchas url en google, claro no todas son de utilidad, pero si estas recibiendo visitas frecuentes de algunos link... a la hora de instalar el Mod SEO4SMF, perderás estas visitas de dichos link...)
No se si decirlo o como tomarlo, pero ahora que veo que ya ni la web del
Autor del Mod Funciona es mejor que lo dejes como lo tienes tú solo es de aprovecharse de ello ;D si te das cuenta en comentarios anteriores,
se dice que el Mod ya esta siendo obsoleto para la versión beta, además el Autor ya ni la Web tiene Online... y bueno dependiendo como siga esto... en un futuro no muy lejano creo que todos los que hacemos uso de ello
perderemos más de lo que tenemos ahorita...
NO se si recomendarte instalarlo...
Sería mejor que te quedases con tú Mod, ese siempre será actualizado ;D
Cada caveza es un Mundo ;D
ST2...
Att. H@free
gracias amigo por la respuesta mejor lo dejo asi como esta en el mod enque a un no funciona el 100%
Quote from: TraX22 on May 15, 2008, 11:14:29 AM
Quote from: cambiarcromos on May 15, 2008, 10:24:02 AM
Hola
Perdonad mi ignorancia después de haber instalado el Seo4smf donde esta el sitemap.xml yo solo veo el sitemaps.php que archivo se a de subir al sitemap de gogle
¿ cuantas veces se a de subir el sitemap.....
¿ con una sola vez es suficiente
Gracias
Solo pon el enlace al sitemap ...
Y de ahí en mas se actualiza automaticamente
parece ser que funciona el sitemap, pero en el indice del foro no se ven las url nombre.html
gracias
Ei!!!
La configuracion del archivo QueryString.php en el smf 1.1.5 juraria que no es la misma que la del tutorial que hicistes...
Puedes mirar como configurarlo bien para el smf 1.1.5???
Porque si lo dejo asi no puedo acceder a la 2º pagina de cualquier tema
Gracias
uff.. cada vez tengo mas dudas si conviene instalarlo o no para un foro nuevo, que empieza de 0.
Por lo que veo, aparte de que la web oficial del mod ya no funciona lo han quitado tambien para descargar de simplemachines.
Esta era la direccion de descarga:http://custom.simplemachines.org/mods/downloads/518/seo4smf-0.2.9.9.zip (http://custom.simplemachines.org/mods/downloads/518/seo4smf-0.2.9.9.zip)
Pues a mi me pasa lo mismo , no me pasa de la segunda pagina
Quote from: fran_bcn on June 01, 2008, 05:40:48 AM
Ei!!!
La configuracion del archivo QueryString.php en el smf 1.1.5 juraria que no es la misma que la del tutorial que hicistes...
Puedes mirar como configurarlo bien para el smf 1.1.5???
Porque si lo dejo asi no puedo acceder a la 2º pagina de cualquier tema
Gracias
gracias por el tuto, despues de una semana batallando por fin quedo
1000000000000 gracias
chau!
AHHHHHHHHHH!!!!!!!!!!!!!! necesito ayuda :'(
- Se instala correctamente.
- Descargo el htaccess.txt (y luego lo paso a .htaccess)
(creo que me salte un paso)- Puse el php.ini
- No logro encontrar en donde modificar el archivo querystring.php
Ahora no puedo acceder a ningun post ni a la administracion.
Ayuda por favor que alguien me indique como hacer los pasos que me faltaron !!!
por favor
QuoteEi!!!
La configuracion del archivo QueryString.php en el smf 1.1.5 juraria que no es la misma que la del tutorial que hicistes...
Puedes mirar como configurarlo bien para el smf 1.1.5???
Porque si lo dejo asi no puedo acceder a la 2º pagina de cualquier tema
Gracias
Me pasa lo mismo
QuoteEi!!!
La configuracion del archivo QueryString.php en el smf 1.1.5 juraria que no es la misma que la del tutorial que hicistes...
Puedes mirar como configurarlo bien para el smf 1.1.5???
Porque si lo dejo asi no puedo acceder a la 2º pagina de cualquier tema
Gracias
Quote from: ignaciogdelsolar on June 03, 2008, 03:09:10 PM
AHHHHHHHHHH!!!!!!!!!!!!!! necesito ayuda :'(
- Se instala correctamente.
- Descargo el htaccess.txt (y luego lo paso a .htaccess) (creo que me salte un paso)
- Puse el php.ini
- No logro encontrar en donde modificar el archivo querystring.php
Ahora no puedo acceder a ningun post ni a la administracion.
Ayuda por favor que alguien me indique como hacer los pasos que me faltaron !!!
por favor
el que está en el tutorial no es la misma modificación para el archivo QueryString.php, yo lo quise hacer asi y donde dice buscar las primeras lineas no aparece, aparece diferente. :-\
pasame tu correo, trataré de ayudarte :)
No es la misma, pero en la tercer hoja ya esta claro... cual es la modificación a realizarce...
En cuanto tenga tiempito lo tendre con las opciones que se ajustan a la instalación...
A mas tardar hoy en la noche...
utiliza los ke h@free usa en su web, los ke dejo para descargar, a mi se me solucionaron los problemas con eso
suerte
Gracias ya lo solucione con ayuda de sAmMyTo .. me guie por el tuto de aqui pero no me funcionaba ...
Hola
Alguien me puede ayudar con mi QueryString.php para que ne corran las paginas, por mas que lo miro no veo los codigos iguales que los que a qui salen
Muchas gracias
<?php
/**********************************************************************************
* QueryString.php *
***********************************************************************************
* SMF: Simple Machines Forum *
* Open-Source Project Inspired by Zef Hemel ([email protected]) *
* =============================================================================== *
* Software Version: SMF 1.1.4 *
* Software by: Simple Machines (http://www.simplemachines.org) *
* Copyright 2006 by: Simple Machines LLC (http://www.simplemachines.org) *
* 2001-2006 by: Lewis Media (http://www.lewismedia.com) *
* Support, News, Updates at: http://www.simplemachines.org *
***********************************************************************************
* This program is free software; you may redistribute it and/or modify it under *
* the terms of the provided license as published by Simple Machines LLC. *
* *
* This program is distributed in the hope that it is and will be useful, but *
* WITHOUT ANY WARRANTIES; without even any implied warranty of MERCHANTABILITY *
* or FITNESS FOR A PARTICULAR PURPOSE. *
* *
* See the "license.txt" file for details of the Simple Machines license. *
* The latest version can always be found at http://www.simplemachines.org. *
**********************************************************************************/
if (!defined('SMF'))
die('Hacking attempt...');
/* This file does a lot of important stuff. Mainly, this means it handles
the query string, request variables, and session management. It contains
the following functions:
void cleanRequest()
- cleans the request variables (ENV, GET, POST, COOKIE, SERVER) and
makes sure the query string was parsed correctly.
- handles the URLs passed by the queryless URLs option.
- makes sure, regardless of php.ini, everything has slashes.
- sets up $board, $topic, and $scripturl and $_REQUEST['start'].
- determines, or rather tries to determine, the client's IP.
array addslashes__recursive(array var)
- returns the var, as an array or string, with slashes.
- importantly adds slashes to keys and values!
- calls itself recursively if necessary.
array htmlspecialchars__recursive(array var)
- adds entities (", <, >) to the array or string var.
- importantly, does not effect keys, only values.
- calls itself recursively if necessary.
array urldecode__recursive(array var)
- takes off url encoding (%20, etc.) from the array or string var.
- importantly, does it to keys too!
- calls itself recursively if there are any sub arrays.
array stripslashes__recursive(array var)
- removes slashes, recursively, from the array or string var.
- effects both keys and values of arrays.
- calls itself recursively to handle arrays of arrays.
array htmltrim__recursive(array var)
- trims a string or an the var array using html characters as well.
- does not effect keys, only values.
- may call itself recursively if needed.
array validate_unicode__recursive(array var)
- makes sure a string only contains character which are allowed in
XML/XHTML (not 0-8, 11, 12, and 14-31.)
- tries to handle UTF-8 properly, and shouldn't negatively affect
character sets like ISO-8859-1.
- does not effect keys, only changes values.
- may call itself recursively if necessary.
string ob_sessrewrite(string buffer)
- rewrites the URLs outputted to have the session ID, if the user
is not accepting cookies and is using a standard web browser.
- handles rewriting URLs for the queryless URLs option.
- can be turned off entirely by setting $scripturl to an empty
string, ''. (it wouldn't work well like that anyway.)
- because of bugs in certain builds of PHP, does not function in
versions lower than 4.3.0 - please upgrade if this hurts you.
*/
// Clean the request variables - add html entities to GET and slashes if magic_quotes_gpc is Off.
function cleanRequest()
{
global $board, $topic, $boardurl, $scripturl, $modSettings;
// Makes it easier to refer to things this way.
$scripturl = $boardurl . '/index.php';
// Save some memory.. (since we don't use these anyway.)
unset($GLOBALS['HTTP_POST_VARS'], $GLOBALS['HTTP_POST_VARS']);
unset($GLOBALS['HTTP_POST_FILES'], $GLOBALS['HTTP_POST_FILES']);
// These keys shouldn't be set...ever.
if (isset($_REQUEST['GLOBALS']) || isset($_COOKIE['GLOBALS']))
die('Invalid request variable.');
// Same goes for numeric keys.
foreach (array_merge(array_keys($_POST), array_keys($_GET), array_keys($_FILES)) as $key)
if (is_numeric($key))
die('Invalid request variable.');
// Numeric keys in cookies are less of a problem. Just unset those.
foreach ($_COOKIE as $key => $value)
if (is_numeric($key))
unset($_COOKIE[$key]);
// Get the correct query string. It may be in an environment variable...
if (!isset($_SERVER['QUERY_STRING']))
$_SERVER['QUERY_STRING'] = getenv('QUERY_STRING');
// Are we going to need to parse the ; out?
if ((strpos(@ini_get('arg_separator.input'), ';') === false || @version_compare(PHP_VERSION, '4.2.0') == -1) && !empty($_SERVER['QUERY_STRING']))
{
// Get rid of the old one! You don't know where it's been!
$_GET = array();
// Was this redirected? If so, get the REDIRECT_QUERY_STRING.
$_SERVER['QUERY_STRING'] = urldecode(substr($_SERVER['QUERY_STRING'], 0, 5) == 'url=/' ? $_SERVER['REDIRECT_QUERY_STRING'] : $_SERVER['QUERY_STRING']);
// Replace ';' with '&' and '&something&' with '&something=&'. (this is done for compatibility...)
// !!! smflib
parse_str(preg_replace('/&(\w+)(?=&|$)/', '&$1=', strtr($_SERVER['QUERY_STRING'], array(';?' => '&', ';' => '&'))), $_GET);
}
elseif (strpos(@ini_get('arg_separator.input'), ';') !== false)
{
$_GET = urldecode__recursive($_GET);
if (get_magic_quotes_gpc() != 0 && empty($modSettings['integrate_magic_quotes']))
$_GET = stripslashes__recursive($_GET);
// Search engines will send action=profile%3Bu=1, which confuses PHP.
// !!! smflib
foreach ($_GET as $k => $v)
{
if (is_string($v) && strpos($k, ';') !== false)
{
$temp = explode(';', $v);
$_GET[$k] = $temp[0];
for ($i = 1, $n = count($temp); $i < $n; $i++)
{
@list ($key, $val) = @explode('=', $temp[$i], 2);
if (!isset($_GET[$key]))
$_GET[$key] = $val;
}
}
// This helps a lot with integration!
if (strpos($k, '?') === 0)
{
$_GET[substr($k, 1)] = $v;
unset($_GET[$k]);
}
}
}
// There's no query string, but there is a URL... try to get the data from there.
if (!empty($_SERVER['REQUEST_URI']))
{
// Remove the .html, assuming there is one.
if (substr($_SERVER['REQUEST_URI'], strrpos($_SERVER['REQUEST_URI'], '.'), 4) == '.htm')
$request = substr($_SERVER['REQUEST_URI'], 0, strrpos($_SERVER['REQUEST_URI'], '.'));
else
$request = $_SERVER['REQUEST_URI'];
// Replace 'index.php/a,b,c/d/e,f' with 'a=b,c&d=&e=f' and parse it into $_GET.
parse_str(substr(preg_replace('/&(\w+)(?=&|$)/', '&$1=', strtr(preg_replace('~/([^,/]+),~', '/$1=', substr($request, strpos($request, basename($scripturl)) + strlen(basename($scripturl)))), '/', '&')), 1), $temp);
$_GET += $temp;
}
// Add entities to GET. This is kinda like the slashes on everything else.
$_GET = addslashes__recursive(htmlspecialchars__recursive($_GET));
// Clean up after annoying ini settings. (magic_quotes_gpc might be off...)
if (get_magic_quotes_gpc() == 0 && empty($modSettings['integrate_magic_quotes']))
{
// E(G)PCS: ENV, (GET was already done), POST, COOKIE.
$_ENV = addslashes__recursive($_ENV);
$_POST = addslashes__recursive($_POST);
$_COOKIE = addslashes__recursive($_COOKIE);
// FILES work like this: k -> name -> array. So be careful.
foreach ($_FILES as $k => $dummy)
$_FILES[$k]['name'] = addslashes__recursive($_FILES[$k]['name']);
}
// Take care of the server variables.
$_SERVER = addslashes__recursive($_SERVER);
// Let's not depend on the ini settings... why even have COOKIE in there, anyway?
$_REQUEST = $_POST + $_GET;
// Make sure $board and $topic are numbers.
if (isset($_REQUEST['board']))
{
// Make sure that its a string and not something else like an array
$_REQUEST['board'] = (string) $_REQUEST['board'];
// If there's a slash in it, we've got a start value! (old, compatible links.)
if (strpos($_REQUEST['board'], '/') !== false)
list ($_REQUEST['board'], $_REQUEST['start']) = explode('/', $_REQUEST['board']);
// Same idea, but dots. This is the currently used format - ?board=1.0...
elseif (strpos($_REQUEST['board'], '.') !== false)
list ($_REQUEST['board'], $_REQUEST['start']) = explode('.', $_REQUEST['board']);
// Now make absolutely sure it's a number.
$board = (int) $_REQUEST['board'];
// This is for "Who's Online" because it might come via POST - and it should be an int here.
$_GET['board'] = $board;
}
// Well, $board is going to be a number no matter what.
else
$board = 0;
// If there's a threadid, it's probably an old YaBB SE link. Flow with it.
if (isset($_REQUEST['threadid']) && !isset($_REQUEST['topic']))
$_REQUEST['topic'] = $_REQUEST['threadid'];
// We've got topic!
if (isset($_REQUEST['topic']))
{
// Make sure that its a string and not something else like an array
$_REQUEST['topic'] = (string)$_REQUEST['topic'];
// Slash means old, beta style, formatting. That's okay though, the link should still work.
if (strpos($_REQUEST['topic'], '/') !== false)
list ($_REQUEST['topic'], $_REQUEST['start']) = explode('/', $_REQUEST['topic']);
// Dots are useful and fun ;). This is ?topic=1.15.
elseif (strpos($_REQUEST['topic'], '.') !== false)
list ($_REQUEST['topic'], $_REQUEST['start']) = explode('.', $_REQUEST['topic']);
$topic = (int) $_REQUEST['topic'];
// Now make sure the online log gets the right number.
$_GET['topic'] = $topic;
}
// There should be a $_REQUEST['start'], some at least. If you need to default to other than 0, use $_GET['start'].
if (empty($_REQUEST['start']) || $_REQUEST['start'] < 0)
$_REQUEST['start'] = 0;
// The action needs to be a string and not an array or anything else
if (isset($_REQUEST['action']))
$_REQUEST['action'] = (string) $_REQUEST['action'];
if (isset($_GET['action']))
$_GET['action'] = (string) $_GET['action'];
// Store the REMOTE_ADDR for later - even though we HOPE to never use it...
$_SERVER['BAN_CHECK_IP'] = isset($_SERVER['REMOTE_ADDR']) && preg_match('~^((([1]?\d)?\d|2[0-4]\d|25[0-5])\.){3}(([1]?\d)?\d|2[0-4]\d|25[0-5])$~', $_SERVER['REMOTE_ADDR']) === 1 ? $_SERVER['REMOTE_ADDR'] : 'unknown';
// Find the user's IP address. (but don't let it give you 'unknown'!)
if (!empty($_SERVER['HTTP_X_FORWARDED_FOR']) && !empty($_SERVER['HTTP_CLIENT_IP']) && (preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $_SERVER['HTTP_CLIENT_IP']) == 0 || preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $_SERVER['REMOTE_ADDR']) != 0))
{
// We have both forwarded for AND client IP... check the first forwarded for as the block - only switch if it's better that way.
if (strtok($_SERVER['HTTP_X_FORWARDED_FOR'], '.') != strtok($_SERVER['HTTP_CLIENT_IP'], '.') && '.' . strtok($_SERVER['HTTP_X_FORWARDED_FOR'], '.') == strrchr($_SERVER['HTTP_CLIENT_IP'], '.') && (preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $_SERVER['HTTP_X_FORWARDED_FOR']) == 0 || preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $_SERVER['REMOTE_ADDR']) != 0))
$_SERVER['REMOTE_ADDR'] = implode('.', array_reverse(explode('.', $_SERVER['HTTP_CLIENT_IP'])));
else
$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_CLIENT_IP'];
}
if (!empty($_SERVER['HTTP_CLIENT_IP']) && (preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $_SERVER['HTTP_CLIENT_IP']) == 0 || preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $_SERVER['REMOTE_ADDR']) != 0))
{
// Since they are in different blocks, it's probably reversed.
if (strtok($_SERVER['REMOTE_ADDR'], '.') != strtok($_SERVER['HTTP_CLIENT_IP'], '.'))
$_SERVER['REMOTE_ADDR'] = implode('.', array_reverse(explode('.', $_SERVER['HTTP_CLIENT_IP'])));
else
$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_CLIENT_IP'];
}
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
{
// If there are commas, get the last one.. probably.
if (strpos($_SERVER['HTTP_X_FORWARDED_FOR'], ',') !== false)
{
$ips = array_reverse(explode(', ', $_SERVER['HTTP_X_FORWARDED_FOR']));
// Go through each IP...
foreach ($ips as $i => $ip)
{
// Make sure it's in a valid range...
if (preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $ip) != 0 && preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $_SERVER['REMOTE_ADDR']) == 0)
continue;
// Otherwise, we've got an IP!
$_SERVER['REMOTE_ADDR'] = trim($ip);
break;
}
}
// Otherwise just use the only one.
elseif (preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $_SERVER['HTTP_X_FORWARDED_FOR']) == 0 || preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $_SERVER['REMOTE_ADDR']) != 0)
$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
elseif (!isset($_SERVER['REMOTE_ADDR']))
{
$_SERVER['REMOTE_ADDR'] = '';
// A new magic variable to indicate we think this is command line.
$_SERVER['is_cli'] = true;
}
// Make sure we know the URL of the current request.
if (empty($_SERVER['REQUEST_URI']))
$_SERVER['REQUEST_URL'] = $scripturl . (!empty($_SERVER['QUERY_STRING']) ? '?' . $_SERVER['QUERY_STRING'] : '');
elseif (preg_match('~^([^/]+//[^/]+)~', $scripturl, $match) == 1)
$_SERVER['REQUEST_URL'] = $match[1] . $_SERVER['REQUEST_URI'];
else
$_SERVER['REQUEST_URL'] = $_SERVER['REQUEST_URI'];
// And make sure HTTP_USER_AGENT is set.
$_SERVER['HTTP_USER_AGENT'] = isset($_SERVER['HTTP_USER_AGENT']) ? htmlspecialchars(stripslashes($_SERVER['HTTP_USER_AGENT']), ENT_QUOTES) : '';
// Some final checking.
if (preg_match('~^((([1]?\d)?\d|2[0-4]\d|25[0-5])\.){3}(([1]?\d)?\d|2[0-4]\d|25[0-5])$~', $_SERVER['REMOTE_ADDR']) === 0)
$_SERVER['REMOTE_ADDR'] = '';
}
// Adds slashes to the array/variable. Uses two underscores to guard against overloading.
function addslashes__recursive($var, $level = 0)
{
if (!is_array($var))
return addslashes($var);
// Reindex the array with slashes.
$new_var = array();
// Add slashes to every element, even the indexes!
foreach ($var as $k => $v)
$new_var[addslashes($k)] = $level > 25 ? null : addslashes__recursive($v, $level + 1);
return $new_var;
}
// Adds html entities to the array/variable. Uses two underscores to guard against overloading.
function htmlspecialchars__recursive($var, $level = 0)
{
global $func;
if (!is_array($var))
return isset($func) ? $func['htmlspecialchars']($var, ENT_QUOTES) : htmlspecialchars($var, ENT_QUOTES);
// Add the htmlspecialchars to every element.
foreach ($var as $k => $v)
$var[$k] = $level > 25 ? null : htmlspecialchars__recursive($v, $level + 1);
return $var;
}
// Removes url stuff from the array/variable. Uses two underscores to guard against overloading.
function urldecode__recursive($var, $level = 0)
{
if (!is_array($var))
return urldecode($var);
// Reindex the array...
$new_var = array();
// Add the htmlspecialchars to every element.
foreach ($var as $k => $v)
$new_var[urldecode($k)] = $level > 25 ? null : urldecode__recursive($v, $level + 1);
return $new_var;
}
// Strips the slashes off any array or variable. Two underscores for the normal reason.
function stripslashes__recursive($var, $level = 0)
{
if (!is_array($var))
return stripslashes($var);
// Reindex the array without slashes, this time.
$new_var = array();
// Strip the slashes from every element.
foreach ($var as $k => $v)
$var[stripslashes($k)] = $level > 25 ? null : stripslashes__recursive($v, $level + 1);
return $var;
}
// Trim a string including the HTML space, character 160.
function htmltrim__recursive($var, $level = 0)
{
global $func;
// Remove spaces (32), tabs (9), returns (13, 10, and 11), nulls (0), and hard spaces. (160)
if (!is_array($var))
return isset($func) ? $func['htmltrim']($var) : trim($var, " \t\n\r\x0B\0\xA0");
// Go through all the elements and remove the whitespace.
foreach ($var as $k => $v)
$new_var[$k] = $level > 25 ? null : htmltrim__recursive($v, $level + 1);
return $new_var;
}
// !!!
function validate_unicode__recursive($var)
{
if (is_array($var))
return array_map('validate_unicode__recursive', $var);
$cleanup = array_merge(range(0, 8), range(11, 12), range(14, 31));
// Assuming unicode for now - won't really hurt if we're wrong.
for ($i = 0; $i < strlen($var); $i++)
{
$c = ord($var{$i});
if (in_array($c, $cleanup))
{
$var = substr($var, 0, $i) . substr($var, $i + 1);
$i--;
continue;
}
if ($c < 192)
continue;
elseif ($c < 224)
$i++;
elseif ($c < 240)
$i += 2;
elseif ($c < 248)
$i += 3;
elseif ($c < 252)
$i += 4;
elseif ($c < 254)
$i += 5;
}
return $var;
}
// Rewrite URLs to include the session ID.
function ob_sessrewrite($buffer)
{
global $scripturl, $modSettings, $user_info, $context;
// If $scripturl is set to nothing, or the SID is not defined (SSI?) just quit.
if ($scripturl == '' || !defined('SID'))
return $buffer;
$scripturl1=str_replace("/index.php","",$scripturl);
// Do nothing if the session is cookied, or they are a crawler - guests are caught by redirectexit(). This doesn't work below PHP 4.3.0, because it makes the output buffer bigger.
// !!! smflib
if (empty($_COOKIE) && SID != '' && empty($context['browser']['possibly_robot']) && @version_compare(PHP_VERSION, '4.3.0') != -1 && ($modSettings['seo4smf_enable']!="on"))
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '(?!\?' . preg_quote(SID, '/') . ')(\?)?/', '"' . $scripturl . '?' . SID . '&', $buffer);
// Debugging templates, are we?
elseif (isset($_GET['debug']))
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '(\?)?/', '"' . $scripturl . '?debug;', $buffer);
// This should work even in 4.2.x, just not CGI without cgi.fix_pathinfo.
if (!empty($modSettings['queryless_urls']) && (!$context['server']['is_cgi'] || @ini_get('cgi.fix_pathinfo') == 1) && $context['server']['is_apache'])
{
// Let's do something special for session ids!
if (defined('SID') && SID != '')
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?(?:' . SID . ';)((?:board|topic)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl . '/' . strtr('\$1', '&;=', '//,') . '.html?' . SID . '\$2\"'", $buffer);
if ($modSettings['seo4smf_sb_enable'] == "on")
{
$buffer = preg_replace('/<!-- Seo4SMF Social Bookmark -->/', create_sb() , $buffer);
}
if ($modSettings['seo4smf_enable'] == "on")
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?((?:board|topic|page)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl1 . '/' . beautify_urls(strtr('\$1', '&;=', '//,')) . '\$2\"'", $buffer);
if ($modSettings['seo4smf_beautify_profiles'] == "on")
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?action=profile;u=([^#"]+?)?"/e', "'\"' . \$scripturl1 . '/' . beautify_url_profiles(strtr('\$1', '&;=', '//,')) . '\$2\"'", $buffer);
}
if ($modSettings['seo4smf_beautify_actions'] == "on")
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?action=([^#"]+?)?"/e', "'\"' . \$scripturl1 . '/' . beautify_url_action('\$1'). '\$2\"'", $buffer);
}
if ($modSettings['seo4smf_keywords'] == "on")
{
$buffer = preg_replace('<meta name="keywords" content=(.*) />', create_keywords() , $buffer);
}
if ($modSettings['seo4smf_description'] == "on")
{
$buffer = preg_replace('<meta name="description" content=(.*) />', create_description() , $buffer);
}
$buffer = preg_replace('/<a href=\"http:\/\/www.simplemachines.org\/about\/copyright.php\" title=\"Free Forum Software\" target=\"_blank\">SMF © 2006-2007, Simple Machines LLC<\/a>/', '<a href="http://www.simplemachines.org/about/copyright.php" title="Free Forum Software" target="_blank">SMF © 2006-2007, Simple Machines LLC</a><br /> <a href="http://www.webmasterstalks.com" target="blank_">Seo4Smf v0.2 © Webmaster\'s Talks</a>' , $buffer);
$buffer = preg_replace('/<a href=\"http:\/\/www.simplemachines.org\/about\/copyright.php\" title=\"Free Forum Software\" target=\"_blank\">SMF © 2006, Simple Machines LLC<\/a>/', '<a href="http://www.simplemachines.org/about/copyright.php" title="Free Forum Software" target="_blank">SMF © 2006, Simple Machines LLC</a><br /> <a href="http://www.webmasterstalks.com" target="blank_">Seo4Smf v0.2 © Webmaster\'s Talks</a>' , $buffer);
$buffer = preg_replace('/<a href=\"http:\/\/www.simplemachines.org\/about\/copyright.php\" title=\"Free Forum Software\" target=\"_blank\">SMF © 2001-2006, Lewis Media<\/a>/', '<a href="http://www.simplemachines.org/about/copyright.php" title="Free Forum Software" target="_blank">SMF © 2001-2006, Simple Machines, Lewis Media</a><br /> <a href="http://www.webmasterstalks.com" target="blank_">Seo4Smf v0.2 © Webmaster\'s Talks</a>' , $buffer);
}
else
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?((?:board|topic)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl . '/' . strtr('\$1', '&;=', '//,') . '.html\$2\"'", $buffer);
}
}
// Return the changed buffer.
return $buffer;
}
?>
Hola foreros, yo lo tengo instalado en smf 1.1.5 y va todo ok, salvo un pequeño-gran problema que no le encuentro solución.
Al asociar algun evento al calendario la url del evento en el calendario no sale correctamente, sale con el formato:
http://localhost/foro/empty-t755.0.html
No tengo activado el mod porque probablemente google no me las indexe por duplicacion de url para la misma pagina, ¿alguien sabria decirme como solucionar el problema o el archivo que tengo que modificar ?
:-\ :-\
Agrego, acabo de darme cuenta que las urls de los post mas visitados y vistos de las sección de estadisticas del foro tambien las genera en el mismo formato con el empty...
He intentado preguntar en el foro oficial pero no hay manera de registrarse, no me llega el correo ni en bandeja de entrada ni en spam ni nada.
Os agradezco cualquier ayuda !
hola teng un problema, hice todo lo k dice aki al principio no funcionaba,pero luego consegui tener las url amigables, ahora el problema k teng es ke no puedo entrar a login, registrer, foro, admin, perfil, etc etc. ejemplo login.html pero al pulsar me sale un error 404 ... uso el SMF 1.1.4 con el Tinyportal 0.98, desearia me ayuden. mi pagina esta en el directorio principal. aqui dejo los archivos k estoy usando a ver si le encuentran algun error.
htaccess
RewriteEngine on
#Some apache servers need Rewritebase.
#delete # from start of Rewrite base to enable it.
#If your forum is something like http://www.forum-example.com/forum then modify your
#RewriteBase in this way: RewriteBase /forum
RewriteBase /
#Archive/Sitemaps
RewriteRule ^sitemaps-([a-zA-Z0-9-]*)\.html index.php?dummy=1&action=seo4smfsitemaps&sa=$1 [L]
#uncomment if you use beautifying url actions
#RewriteCond %{REQUEST_METHOD} =GET
#RewriteCond %{QUERY_STRING} ^action=(.*)$
#RewriteRule ^(.*)$ seo4smf-redirect.php?a=%1 [R=301,L]
RewriteCond %{QUERY_STRING} ^topic=([0-9]*)$
RewriteRule ^(.*)$ seo4smf-redirect.php?t=%1 [R=301,L]
RewriteCond %{QUERY_STRING} ^topic=([0-9]*).([0-9]*)
RewriteRule ^(.*)$ seo4smf-redirect.php?t=%1 [R=301,L]
RewriteCond %{QUERY_STRING} ^board=([0-9]*).([0-9]*)
RewriteRule ^(.*)$ seo4smf-redirect.php?b=%1 [R=301,L]
RewriteCond %{QUERY_STRING} ^action=profile;u=([0-9]*);(.*)$
RewriteRule ^(.*)$ seo4smf-redirect.php?u=%1;param=%2 [R=301,L]
RewriteCond %{QUERY_STRING} ^action=profile;u=([0-9]*)
RewriteRule ^(.*)$ seo4smf-redirect.php?u=%1 [R=301,L]
#Tiny Portal Old Url's
RewriteCond %{QUERY_STRING} ^page=([0-9]*)
RewriteRule ^(.*)$ seo4smf-redirect.php?p=%1 [R=301,L]
#Rewrite Old urls
RewriteRule ^index.php/board,(.*).html seo4smf-redirect.php?b=$1 [R=301,L]
RewriteRule ^index.php/board,(.*).html;(.*) seo4smf-redirect.php?b=$1&o=$2 [R=301,L]
RewriteRule ^index.php/topic,(.*).html seo4smf-redirect.php?t=$1 [R=301,L]
RewriteRule ^index.php/topic,(.*).html;(.*) seo4smf-redirect.php?t=$1&o=$2 [R=301,L]
#Bad Url's
#RewriteCond %{REQUEST_URI} ^(.*)\.html$
#RewriteCond %{REQUEST_URI} !^(.+)/(.*)-t([0-9]*)\.([0-9]*).html$
#RewriteRule ^(.*)-t([0-9]*)\.([0-9]*)\.html seo4smf-redirect.php?t=$2 [R=301,L]
RewriteRule ^(.*)/-t(.*).html seo4smf-redirect.php?t=$2 [R=301,L]
RewriteRule ^-b(.*)/$ seo4smf-redirect.php?b=$1 [R=301,L]
RewriteRule ^-b(.*)/(.*)$ seo4smf-redirect.php?b=$1 [R=301,L]
RewriteRule ^(.*)/-b(.*)/$ seo4smf-redirect.php?b=$2 [R=301,L]
#New board URL's
RewriteRule ^(.*)-b([0-9]*)\.([0-9]*)/;(.*) index.php?dummy=1&board=$2.$3&$4 [L]
RewriteRule ^(.*)-b([0-9]*)\.([0-9]*)/$ index.php?dummy=2&board=$2.$3 [L]
RewriteRule ^(.*)-b([0-9]*)\.([0-9])$ index.php?dummy=2&board=$2.$3 [L]
#New topic URL's
RewriteRule ^(.*)-t([0-9]*)\.([0-9]*)\.html;((\?:from|msg|new)[0-9]*);(.*)$ index.php?dummy=1&topic=$2.$4&$6 [L]
RewriteRule ^(.*)-t([0-9]*)\.([0-9]*)\.html;((\?:from|msg|new)[0-9]*) index.php?dummy=1&topic=$2.$4 [L]
RewriteRule ^(.*)-t([0-9]*)\.([0-9]*)\.html;(.*)$ index.php?dummy=1&topic=$2.$3&$4 [L]
RewriteRule ^(.*)-t([0-9]*)\.([0-9]*)\.html$ index.php?dummy=1&topic=$2.$3 [L]
#New profiles URL's
RewriteRule ^(.*)-u([0-9]*)\.html;sa,(.*);start,([0-9]*);delete,([0-9]*);sesc,([a-z0-9]*)$ index.php?dummy=1&action=profile;u=$2;sa=$3;start=$4;delete=$5;sesc=$6 [L]
RewriteRule ^(.*)-u([0-9]*)\.html;sa,(.*);start,([0-9]*)$ index.php?dummy=1&action=profile;u=$2;sa=$3;start=$4 [L]
RewriteRule ^(.*)-u([0-9]*)\.html;sa,(.*)$ index.php?dummy=1&action=profile;u=$2;sa=$3 [L]
RewriteRule ^(.*)-u([0-9]*)\.html index.php?dummy=1&action=profile;u=$2 [L]
#New Tinyportal Articles URL's
RewriteRule ^(.*)-p([0-9]*)\.html index.php?dummy=1&page=$2 [L]
#New action Url's - uncomment if you use beautifying url actions
#RewriteRule ^(.*)\.html(.*)$ index.php?dummy=1;action=$1;$2 [L]
#RewriteRule ^(.*)\.html$ index.php?dummy=1;action=$1 [L]
#Sitemaps
RewriteRule sitemap.xml sitemaps.php [L]
RewriteRule urllist.txt urllist.php [L]
QueryString
<?php
/**********************************************************************************
* QueryString.php *
***********************************************************************************
* SMF: Simple Machines Forum *
* Open-Source Project Inspired by Zef Hemel ([email protected]) *
* =============================================================================== *
* Software Version: SMF 1.1.4 *
* Software by: Simple Machines (http://www.simplemachines.org) *
* Copyright 2006 by: Simple Machines LLC (http://www.simplemachines.org) *
* 2001-2006 by: Lewis Media (http://www.lewismedia.com) *
* Support, News, Updates at: http://www.simplemachines.org *
***********************************************************************************
* This program is free software; you may redistribute it and/or modify it under *
* the terms of the provided license as published by Simple Machines LLC. *
* *
* This program is distributed in the hope that it is and will be useful, but *
* WITHOUT ANY WARRANTIES; without even any implied warranty of MERCHANTABILITY *
* or FITNESS FOR A PARTICULAR PURPOSE. *
* *
* See the "license.txt" file for details of the Simple Machines license. *
* The latest version can always be found at http://www.simplemachines.org. *
**********************************************************************************/
if (!defined('SMF'))
die('Hacking attempt...');
/* This file does a lot of important stuff. Mainly, this means it handles
the query string, request variables, and session management. It contains
the following functions:
void cleanRequest()
- cleans the request variables (ENV, GET, POST, COOKIE, SERVER) and
makes sure the query string was parsed correctly.
- handles the URLs passed by the queryless URLs option.
- makes sure, regardless of php.ini, everything has slashes.
- sets up $board, $topic, and $scripturl and $_REQUEST['start'].
- determines, or rather tries to determine, the client's IP.
array addslashes__recursive(array var)
- returns the var, as an array or string, with slashes.
- importantly adds slashes to keys and values!
- calls itself recursively if necessary.
array htmlspecialchars__recursive(array var)
- adds entities (", <, >) to the array or string var.
- importantly, does not effect keys, only values.
- calls itself recursively if necessary.
array urldecode__recursive(array var)
- takes off url encoding (%20, etc.) from the array or string var.
- importantly, does it to keys too!
- calls itself recursively if there are any sub arrays.
array stripslashes__recursive(array var)
- removes slashes, recursively, from the array or string var.
- effects both keys and values of arrays.
- calls itself recursively to handle arrays of arrays.
array htmltrim__recursive(array var)
- trims a string or an the var array using html characters as well.
- does not effect keys, only values.
- may call itself recursively if needed.
array validate_unicode__recursive(array var)
- makes sure a string only contains character which are allowed in
XML/XHTML (not 0-8, 11, 12, and 14-31.)
- tries to handle UTF-8 properly, and shouldn't negatively affect
character sets like ISO-8859-1.
- does not effect keys, only changes values.
- may call itself recursively if necessary.
string ob_sessrewrite(string buffer)
- rewrites the URLs outputted to have the session ID, if the user
is not accepting cookies and is using a standard web browser.
- handles rewriting URLs for the queryless URLs option.
- can be turned off entirely by setting $scripturl to an empty
string, ''. (it wouldn't work well like that anyway.)
- because of bugs in certain builds of PHP, does not function in
versions lower than 4.3.0 - please upgrade if this hurts you.
*/
// Clean the request variables - add html entities to GET and slashes if magic_quotes_gpc is Off.
function cleanRequest()
{
global $board, $topic, $boardurl, $scripturl, $modSettings;
// Makes it easier to refer to things this way.
$scripturl = $boardurl . '/index.php';
// Save some memory.. (since we don't use these anyway.)
unset($GLOBALS['HTTP_POST_VARS'], $GLOBALS['HTTP_POST_VARS']);
unset($GLOBALS['HTTP_POST_FILES'], $GLOBALS['HTTP_POST_FILES']);
// These keys shouldn't be set...ever.
if (isset($_REQUEST['GLOBALS']) || isset($_COOKIE['GLOBALS']))
die('Invalid request variable.');
// Same goes for numeric keys.
foreach (array_merge(array_keys($_POST), array_keys($_GET), array_keys($_FILES)) as $key)
if (is_numeric($key))
die('Invalid request variable.');
// Numeric keys in cookies are less of a problem. Just unset those.
foreach ($_COOKIE as $key => $value)
if (is_numeric($key))
unset($_COOKIE[$key]);
// Get the correct query string. It may be in an environment variable...
if (!isset($_SERVER['QUERY_STRING']))
$_SERVER['QUERY_STRING'] = getenv('QUERY_STRING');
// Are we going to need to parse the ; out?
if ((strpos(@ini_get('arg_separator.input'), ';') === false || @version_compare(PHP_VERSION, '4.2.0') == -1) && !empty($_SERVER['QUERY_STRING']))
{
// Get rid of the old one! You don't know where it's been!
$_GET = array();
// Was this redirected? If so, get the REDIRECT_QUERY_STRING.
$_SERVER['QUERY_STRING'] = urldecode(substr($_SERVER['QUERY_STRING'], 0, 5) == 'url=/' ? $_SERVER['REDIRECT_QUERY_STRING'] : $_SERVER['QUERY_STRING']);
// Replace ';' with '&' and '&something&' with '&something=&'. (this is done for compatibility...)
// !!! smflib
parse_str(preg_replace('/&(\w+)(?=&|$)/', '&$1=', strtr($_SERVER['QUERY_STRING'], array(';?' => '&', ';' => '&'))), $_GET);
}
elseif (strpos(@ini_get('arg_separator.input'), ';') !== false)
{
$_GET = urldecode__recursive($_GET);
if (get_magic_quotes_gpc() != 0 && empty($modSettings['integrate_magic_quotes']))
$_GET = stripslashes__recursive($_GET);
// Search engines will send action=profile%3Bu=1, which confuses PHP.
// !!! smflib
foreach ($_GET as $k => $v)
{
if (is_string($v) && strpos($k, ';') !== false)
{
$temp = explode(';', $v);
$_GET[$k] = $temp[0];
for ($i = 1, $n = count($temp); $i < $n; $i++)
{
@list ($key, $val) = @explode('=', $temp[$i], 2);
if (!isset($_GET[$key]))
$_GET[$key] = $val;
}
}
// This helps a lot with integration!
if (strpos($k, '?') === 0)
{
$_GET[substr($k, 1)] = $v;
unset($_GET[$k]);
}
}
}
// There's no query string, but there is a URL... try to get the data from there.
if (!empty($_SERVER['REQUEST_URI']))
{
// Remove the .html, assuming there is one.
if (substr($_SERVER['REQUEST_URI'], strrpos($_SERVER['REQUEST_URI'], '.'), 4) == '.htm')
$request = substr($_SERVER['REQUEST_URI'], 0, strrpos($_SERVER['REQUEST_URI'], '.'));
else
$request = $_SERVER['REQUEST_URI'];
// Replace 'index.php/a,b,c/d/e,f' with 'a=b,c&d=&e=f' and parse it into $_GET.
parse_str(substr(preg_replace('/&(\w+)(?=&|$)/', '&$1=', strtr(preg_replace('~/([^,/]+),~', '/$1=', substr($request, strpos($request, basename($scripturl)) + strlen(basename($scripturl)))), '/', '&')), 1), $temp);
$_GET += $temp;
}
// Add entities to GET. This is kinda like the slashes on everything else.
$_GET = addslashes__recursive(htmlspecialchars__recursive($_GET));
// Clean up after annoying ini settings. (magic_quotes_gpc might be off...)
if (get_magic_quotes_gpc() == 0 && empty($modSettings['integrate_magic_quotes']))
{
// E(G)PCS: ENV, (GET was already done), POST, COOKIE.
$_ENV = addslashes__recursive($_ENV);
$_POST = addslashes__recursive($_POST);
$_COOKIE = addslashes__recursive($_COOKIE);
// FILES work like this: k -> name -> array. So be careful.
foreach ($_FILES as $k => $dummy)
$_FILES[$k]['name'] = addslashes__recursive($_FILES[$k]['name']);
}
// Take care of the server variables.
$_SERVER = addslashes__recursive($_SERVER);
// Let's not depend on the ini settings... why even have COOKIE in there, anyway?
$_REQUEST = $_POST + $_GET;
// Make sure $board and $topic are numbers.
if (isset($_REQUEST['board']))
{
// Make sure that its a string and not something else like an array
$_REQUEST['board'] = (string) $_REQUEST['board'];
// If there's a slash in it, we've got a start value! (old, compatible links.)
if (strpos($_REQUEST['board'], '/') !== false)
list ($_REQUEST['board'], $_REQUEST['start']) = explode('/', $_REQUEST['board']);
// Same idea, but dots. This is the currently used format - ?board=1.0...
elseif (strpos($_REQUEST['board'], '.') !== false)
list ($_REQUEST['board'], $_REQUEST['start']) = explode('.', $_REQUEST['board']);
// Now make absolutely sure it's a number.
$board = (int) $_REQUEST['board'];
// This is for "Who's Online" because it might come via POST - and it should be an int here.
$_GET['board'] = $board;
}
// Well, $board is going to be a number no matter what.
else
$board = 0;
// If there's a threadid, it's probably an old YaBB SE link. Flow with it.
if (isset($_REQUEST['threadid']) && !isset($_REQUEST['topic']))
$_REQUEST['topic'] = $_REQUEST['threadid'];
// We've got topic!
if (isset($_REQUEST['topic']))
{
// Make sure that its a string and not something else like an array
$_REQUEST['topic'] = (string)$_REQUEST['topic'];
// Slash means old, beta style, formatting. That's okay though, the link should still work.
if (strpos($_REQUEST['topic'], '/') !== false)
list ($_REQUEST['topic'], $_REQUEST['start']) = explode('/', $_REQUEST['topic']);
// Dots are useful and fun ;). This is ?topic=1.15.
elseif (strpos($_REQUEST['topic'], '.') !== false)
list ($_REQUEST['topic'], $_REQUEST['start']) = explode('.', $_REQUEST['topic']);
$topic = (int) $_REQUEST['topic'];
// Now make sure the online log gets the right number.
$_GET['topic'] = $topic;
}
// There should be a $_REQUEST['start'], some at least. If you need to default to other than 0, use $_GET['start'].
if (empty($_REQUEST['start']) || $_REQUEST['start'] < 0)
$_REQUEST['start'] = 0;
// The action needs to be a string and not an array or anything else
if (isset($_REQUEST['action']))
$_REQUEST['action'] = (string) $_REQUEST['action'];
if (isset($_GET['action']))
$_GET['action'] = (string) $_GET['action'];
// Store the REMOTE_ADDR for later - even though we HOPE to never use it...
$_SERVER['BAN_CHECK_IP'] = isset($_SERVER['REMOTE_ADDR']) && preg_match('~^((([1]?\d)?\d|2[0-4]\d|25[0-5])\.){3}(([1]?\d)?\d|2[0-4]\d|25[0-5])$~', $_SERVER['REMOTE_ADDR']) === 1 ? $_SERVER['REMOTE_ADDR'] : 'unknown';
// Find the user's IP address. (but don't let it give you 'unknown'!)
if (!empty($_SERVER['HTTP_X_FORWARDED_FOR']) && !empty($_SERVER['HTTP_CLIENT_IP']) && (preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $_SERVER['HTTP_CLIENT_IP']) == 0 || preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $_SERVER['REMOTE_ADDR']) != 0))
{
// We have both forwarded for AND client IP... check the first forwarded for as the block - only switch if it's better that way.
if (strtok($_SERVER['HTTP_X_FORWARDED_FOR'], '.') != strtok($_SERVER['HTTP_CLIENT_IP'], '.') && '.' . strtok($_SERVER['HTTP_X_FORWARDED_FOR'], '.') == strrchr($_SERVER['HTTP_CLIENT_IP'], '.') && (preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $_SERVER['HTTP_X_FORWARDED_FOR']) == 0 || preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $_SERVER['REMOTE_ADDR']) != 0))
$_SERVER['REMOTE_ADDR'] = implode('.', array_reverse(explode('.', $_SERVER['HTTP_CLIENT_IP'])));
else
$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_CLIENT_IP'];
}
if (!empty($_SERVER['HTTP_CLIENT_IP']) && (preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $_SERVER['HTTP_CLIENT_IP']) == 0 || preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $_SERVER['REMOTE_ADDR']) != 0))
{
// Since they are in different blocks, it's probably reversed.
if (strtok($_SERVER['REMOTE_ADDR'], '.') != strtok($_SERVER['HTTP_CLIENT_IP'], '.'))
$_SERVER['REMOTE_ADDR'] = implode('.', array_reverse(explode('.', $_SERVER['HTTP_CLIENT_IP'])));
else
$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_CLIENT_IP'];
}
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
{
// If there are commas, get the last one.. probably.
if (strpos($_SERVER['HTTP_X_FORWARDED_FOR'], ',') !== false)
{
$ips = array_reverse(explode(', ', $_SERVER['HTTP_X_FORWARDED_FOR']));
// Go through each IP...
foreach ($ips as $i => $ip)
{
// Make sure it's in a valid range...
if (preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $ip) != 0 && preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $_SERVER['REMOTE_ADDR']) == 0)
continue;
// Otherwise, we've got an IP!
$_SERVER['REMOTE_ADDR'] = trim($ip);
break;
}
}
// Otherwise just use the only one.
elseif (preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $_SERVER['HTTP_X_FORWARDED_FOR']) == 0 || preg_match('~^((0|10|172\.16|192\.168|255|127\.0)\.|unknown)~', $_SERVER['REMOTE_ADDR']) != 0)
$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
elseif (!isset($_SERVER['REMOTE_ADDR']))
{
$_SERVER['REMOTE_ADDR'] = '';
// A new magic variable to indicate we think this is command line.
$_SERVER['is_cli'] = true;
}
// Make sure we know the URL of the current request.
if (empty($_SERVER['REQUEST_URI']))
$_SERVER['REQUEST_URL'] = $scripturl . (!empty($_SERVER['QUERY_STRING']) ? '?' . $_SERVER['QUERY_STRING'] : '');
elseif (preg_match('~^([^/]+//[^/]+)~', $scripturl, $match) == 1)
$_SERVER['REQUEST_URL'] = $match[1] . $_SERVER['REQUEST_URI'];
else
$_SERVER['REQUEST_URL'] = $_SERVER['REQUEST_URI'];
// And make sure HTTP_USER_AGENT is set.
$_SERVER['HTTP_USER_AGENT'] = isset($_SERVER['HTTP_USER_AGENT']) ? htmlspecialchars(stripslashes($_SERVER['HTTP_USER_AGENT']), ENT_QUOTES) : '';
// Some final checking.
if (preg_match('~^((([1]?\d)?\d|2[0-4]\d|25[0-5])\.){3}(([1]?\d)?\d|2[0-4]\d|25[0-5])$~', $_SERVER['REMOTE_ADDR']) === 0)
$_SERVER['REMOTE_ADDR'] = '';
}
// Adds slashes to the array/variable. Uses two underscores to guard against overloading.
function addslashes__recursive($var, $level = 0)
{
if (!is_array($var))
return addslashes($var);
// Reindex the array with slashes.
$new_var = array();
// Add slashes to every element, even the indexes!
foreach ($var as $k => $v)
$new_var[addslashes($k)] = $level > 25 ? null : addslashes__recursive($v, $level + 1);
return $new_var;
}
// Adds html entities to the array/variable. Uses two underscores to guard against overloading.
function htmlspecialchars__recursive($var, $level = 0)
{
global $func;
if (!is_array($var))
return isset($func) ? $func['htmlspecialchars']($var, ENT_QUOTES) : htmlspecialchars($var, ENT_QUOTES);
// Add the htmlspecialchars to every element.
foreach ($var as $k => $v)
$var[$k] = $level > 25 ? null : htmlspecialchars__recursive($v, $level + 1);
return $var;
}
// Removes url stuff from the array/variable. Uses two underscores to guard against overloading.
function urldecode__recursive($var, $level = 0)
{
if (!is_array($var))
return urldecode($var);
// Reindex the array...
$new_var = array();
// Add the htmlspecialchars to every element.
foreach ($var as $k => $v)
$new_var[urldecode($k)] = $level > 25 ? null : urldecode__recursive($v, $level + 1);
return $new_var;
}
// Strips the slashes off any array or variable. Two underscores for the normal reason.
function stripslashes__recursive($var, $level = 0)
{
if (!is_array($var))
return stripslashes($var);
// Reindex the array without slashes, this time.
$new_var = array();
// Strip the slashes from every element.
foreach ($var as $k => $v)
$var[stripslashes($k)] = $level > 25 ? null : stripslashes__recursive($v, $level + 1);
return $var;
}
// Trim a string including the HTML space, character 160.
function htmltrim__recursive($var, $level = 0)
{
global $func;
// Remove spaces (32), tabs (9), returns (13, 10, and 11), nulls (0), and hard spaces. (160)
if (!is_array($var))
return isset($func) ? $func['htmltrim']($var) : trim($var, " \t\n\r\x0B\0\xA0");
// Go through all the elements and remove the whitespace.
foreach ($var as $k => $v)
$new_var[$k] = $level > 25 ? null : htmltrim__recursive($v, $level + 1);
return $new_var;
}
// !!!
function validate_unicode__recursive($var)
{
if (is_array($var))
return array_map('validate_unicode__recursive', $var);
$cleanup = array_merge(range(0, 8), range(11, 12), range(14, 31));
// Assuming unicode for now - won't really hurt if we're wrong.
for ($i = 0; $i < strlen($var); $i++)
{
$c = ord($var{$i});
if (in_array($c, $cleanup))
{
$var = substr($var, 0, $i) . substr($var, $i + 1);
$i--;
continue;
}
if ($c < 192)
continue;
elseif ($c < 224)
$i++;
elseif ($c < 240)
$i += 2;
elseif ($c < 248)
$i += 3;
elseif ($c < 252)
$i += 4;
elseif ($c < 254)
$i += 5;
}
return $var;
}
// Rewrite URLs to include the session ID.
function ob_sessrewrite($buffer)
{
global $scripturl, $modSettings, $user_info, $context;
// If $scripturl is set to nothing, or the SID is not defined (SSI?) just quit.
if ($scripturl == '' || !defined('SID'))
return $buffer;
$scripturl1=str_replace("/index.php","",$scripturl);
// Do nothing if the session is cookied, or they are a crawler - guests are caught by redirectexit(). This doesn't work below PHP 4.3.0, because it makes the output buffer bigger.
// !!! smflib
if (empty($_COOKIE) && SID != '' && empty($context['browser']['possibly_robot']) && @version_compare(PHP_VERSION, '4.3.0') != -1 && ($modSettings['seo4smf_enable']!="on"))
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '(?!\?' . preg_quote(SID, '/') . ')(\?)?/', '"' . $scripturl . '?' . SID . '&', $buffer);
// Debugging templates, are we?
elseif (isset($_GET['debug']))
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '(\?)?/', '"' . $scripturl . '?debug;', $buffer);
// This should work even in 4.2.x, just not CGI without cgi.fix_pathinfo.
// if (!empty($modSettings['queryless_urls']) && (!$context['server']['is_cgi'] || @ini_get('cgi.fix_pathinfo') == 1) && $context['server']['is_apache'])
// {
// Let's do something special for session ids!
if (defined('SID') && SID != '')
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?(?:' . SID . ';)((?:board|topic)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl . '/' . strtr('\$1', '&;=', '//,') . '.html?' . SID . '\$2\"'", $buffer);
if ($modSettings['seo4smf_sb_enable'] == "on")
{
$buffer = preg_replace('/<!-- Seo4SMF Social Bookmark -->/', create_sb() , $buffer);
}
if ($modSettings['seo4smf_enable'] == "on")
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?((?:board|topic|page)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl1 . '/' . beautify_urls(strtr('\$1', '&;=', '//,')) . '\$2\"'", $buffer);
if ($modSettings['seo4smf_beautify_profiles'] == "on")
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?action=profile;u=([^#"]+?)?"/e', "'\"' . \$scripturl1 . '/' . beautify_url_profiles(strtr('\$1', '&;=', '//,')) . '\$2\"'", $buffer);
}
if ($modSettings['seo4smf_beautify_actions'] == "on")
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?action=([^#"]+?)?"/e', "'\"' . \$scripturl1 . '/' . beautify_url_action('\$1'). '\$2\"'", $buffer);
}
if ($modSettings['seo4smf_keywords'] == "of")
{
$buffer = preg_replace('<meta name="keywords" content=(.*) />', create_keywords() , $buffer);
}
if ($modSettings['seo4smf_description'] == "of")
{
$buffer = preg_replace('<meta name="description" content=(.*) />', create_description() , $buffer);
}
$buffer = preg_replace('/<a href=\"http:\/\/www.simplemachines.org\/about\/copyright.php\" title=\"Free Forum Software\" target=\"_blank\">SMF © 2006-2007, Simple Machines LLC<\/a>/', '<a href="http://www.simplemachines.org/about/copyright.php" title="Free Forum Software" target="_blank">SMF © 2006-2007, Simple Machines LLC</a><br /> <a href="http://www.webmasterstalks.com" target="blank_">Seo4Smf v0.2 © Webmaster\'s Talks</a>' , $buffer);
$buffer = preg_replace('/<a href=\"http:\/\/www.simplemachines.org\/about\/copyright.php\" title=\"Free Forum Software\" target=\"_blank\">SMF © 2006, Simple Machines LLC<\/a>/', '<a href="http://www.simplemachines.org/about/copyright.php" title="Free Forum Software" target="_blank">SMF © 2006, Simple Machines LLC</a><br /> <a href="http://www.webmasterstalks.com" target="blank_">Seo4Smf v0.2 © Webmaster\'s Talks</a>' , $buffer);
$buffer = preg_replace('/<a href=\"http:\/\/www.simplemachines.org\/about\/copyright.php\" title=\"Free Forum Software\" target=\"_blank\">SMF © 2001-2006, Lewis Media<\/a>/', '<a href="http://www.simplemachines.org/about/copyright.php" title="Free Forum Software" target="_blank">SMF © 2001-2006, Simple Machines, Lewis Media</a><br /> <a href="http://www.webmasterstalks.com" target="blank_">Seo4Smf v0.2 © Webmaster\'s Talks</a>' , $buffer);
}
else
{
$buffer = preg_replace('/"' . preg_quote($scripturl, '/') . '\?((?:board|topic)=[^#"]+?)(#[^"]*?)?"/e', "'\"' . \$scripturl . '/' . strtr('\$1', '&;=', '//,') . '.html\$2\"'", $buffer);
// }
}
// Return the changed buffer.
return $buffer;
}
?>
php.ini
cgi.fix_pathinfo = on
safe_mode = off
register_globals = on
allow_url_fopen = off
allow_url_fopen = on
expose_php = Off
max_input_time = 60
variables_order = "EGPCS"
extension_dir = ./
upload_tmp_dir = /tmp
precision = 12
SMTP = relay-hosting.secureserver.net
url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=,fieldset="
[Zend]
zend_extension=/usr/local/zo/ZendExtensionManager.so
zend_extension=/usr/local/zo/4_3/ZendOptimizer.so
espero su ayuda profavor. Aqui dejo mi URL de mi web para que la revisen mejor. gracias de ante mano.
http://www.dvicios.com
En el cambio de Servidor que se realizo tube algunos problemas con ellos permisos y resto de cosas...
Hace como 15" lo he solucionado...
Sube estos archivos o comparalos...
Y lo tendrás trabajando excelente...
Este archivos renombralo a .htaccess
http://hafre.quae.net/descargar/seo4smf/htaccess.txt
php.ini
http://hafre.quae.net/descargar/seo4smf/php.ini
Este renombralo a QueryString.php
http://hafre.quae.net/descargar/seo4smf/QueryString.txt
Nada más eso...
if ($modSettings['seo4smf_keywords'] == "of")
{
$buffer = preg_replace('<meta name="keywords" content=(.*) />', create_keywords() , $buffer);
}
if ($modSettings['seo4smf_description'] == "of")
{
$buffer = preg_replace('<meta name="description" content=(.*) />', create_description() , $buffer);
}
Busca esto y en donde tengo == "of") yo lo he dejado "of" porque lo tengo configurado con Metas diferente... si quieres que quede con configuración del seo4smf es cuestión tulla... nada más... ;D
Quote from: bierzo on June 10, 2008, 07:08:38 AM
Agrego, acabo de darme cuenta que las urls de los post mas visitados y vistos de las sección de estadisticas del foro tambien las genera en el mismo formato con el empty...
He intentado preguntar en el foro oficial pero no hay manera de registrarse, no me llega el correo ni en bandeja de entrada ni en spam ni nada.
Os agradezco cualquier ayuda !
Hola, ahora he visto tu pregunta, tienes que entrar al panel de admin de Seo4SMF y marcar la opción que dice:
Enable SQL Query when we don't find url in SMF Context ?Y así se soluciona el tema de las URL que contienen empty.
Un saludo.
Yo no se porque pero este mod tiene muchos errores
1. Tiene fallas con el editor avanzado para smf 1.1.5 (arregladas)
2. Cuando marco una opcion en el admin del seo al darle en save se recarga la pagina y queda desmarcada :s
Ademas de los otros errores que ya han mencionado como el que no deja pasar de pagina en los foros
gracias hafre x tu respuesta, cambie los archivos k tenia x los ke me diste. y el problema k tenia, de no poder entrar admin, foro,usuarios.registro,login se ha solucionado :), pero ahora me da otro problema :'( el cual no me deja escrbir un tema, me sale error lo curioso es ke me sale un mensaje de error pero cuando regreso al foro el nuevo esta ahi, al eliminar tambien me pasa lo mismo me sale el mismo error pero cuando le doy atras se ha eliminado dicho tema, tambien al entrar al admin. todo va bien pero cuando le doy clic a un boton para guardar cambios me sale error. el error es el siguiente a ver si me ayudan gracias.
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, [email protected] and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
Apache/1.3.41 Server at www.dvicios.com Port 80
Has instalado algún otro Mod...
No creo que el SEO4smf te este dando este problema...
Sería recomendable que realizaras un backup... (db)
Y reemplazar todos los archivos que se han modificado con la instalación del Mod "seo4" o verificar si tienes algun otro Mod Desinstalarlo y comprobar el error y "si persiste" desinstalar otro de los que tengas... hasta dar con el error...
A mi me falla la paginacion , dentro de temas tenia error pero hise lo que dice el primer post y se soluciono pero en el indice de mensajes dentro de la categoria me da error:
http://www.mundo-se.com/java_zone-b31.0/
si dan click para ir a la pagina dos quedaran en la uno
Alguna solucion??
Hola, gracias ante todo por este fantástico manual que me ha permitido instalar sin problemas esta mod. Pero tengo una duda, ¿se puede cambiar la descripción de la página para que muestre siempre el nombre de la web?. Es decir, que siempre muestra en la barra del navegador el nmbre de mi web. Por el momento, cada vez que entro en algún apartado de mi foro, por ejemplo "Música", en la barra del navegador me aparece como descripción "Música" y no el nombre de la web. Me gustaría que apareciera ,lo que está en la imágen en cada uno de los apartados, siempre lo primero.Gracias por vuestra atención y espero que me puedan ayudar ;)
(https://www.simplemachines.org/community/proxy.php?request=http%3A%2F%2Fimg103.imageshack.us%2Fimg103%2F2218%2Fperss5.jpg&hash=379b02f98a25a4e169ca5876339ec8bb9d3b2277)
Quote from: NIBOGO on June 30, 2008, 07:19:14 PM
A mi me falla la paginacion , dentro de temas tenia error pero hise lo que dice el primer post y se soluciono pero en el indice de mensajes dentro de la categoria me da error:
http://www.mundo-se.com/java_zone-b31.0/
si dan click para ir a la pagina dos quedaran en la uno
Alguna solucion??
Con esto último lo he solucionado...
http://www.simplemachines.org/community/index.php?topic=203647.msg1585512#msg1585512
Quote from: akaimer on July 01, 2008, 10:21:58 AM
Hola, gracias ante todo por este fantástico manual que me ha permitido instalar sin problemas esta mod. Pero tengo una duda, ¿se puede cambiar la descripción de la página para que muestre siempre el nombre de la web?. Es decir, que siempre muestra en la barra del navegador el nmbre de mi web. Por el momento, cada vez que entro en algún apartado de mi foro, por ejemplo "Música", en la barra del navegador me aparece como descripción "Música" y no el nombre de la web. Me gustaría que apareciera ,lo que está en la imágen en cada uno de los apartados, siempre lo primero.Gracias por vuestra atención y espero que me puedan ayudar ;)
(https://www.simplemachines.org/community/proxy.php?request=http%3A%2F%2Fimg103.imageshack.us%2Fimg103%2F2218%2Fperss5.jpg&hash=379b02f98a25a4e169ca5876339ec8bb9d3b2277)
Quizá te sirva algo esto, así lo tengo configurado en hispa...
http://www.google.com.gt/search?hl=es&q=metas+smf&btnG=Buscar&lr=
Muchisimas gracias H@free solamente reemplaze la funcion ob_sessrewrite($buffer) que usted puso con la de mi archivo y quedo sirviendo re bn
Gracias
Muchas gracias H@free. Ya me aclaró la dude que tenía. Es un placer contar con gente como usted. ;)
Yo cuando selecciono alguna opcion en el admin del seo4smf , y guardar los cambios me queda la opcion desmarcada , esto me sucede con todo a excepcion de las 4 primeras opciones , alguna idea??
Gracias
No se por que les da tantos problemas ¬¬ Yo no recuerdo haberlo tenido en los sitios que tengo utilizando el mod.
Y es obvio que cuando salga una version nueva de SMF. este mod va a quedar descontinuado al menos que sepan bien las lineas a editar de los ficheros. Aunque en las dos ultimas versiones de SMF funciono el mod con su ultima version.
Hay otras lineas que hay que editar pues tiene codigos de mas que hacen mas consultas al mysql.
Como quisiera que los seo´s de vbseo trabajaran tambien en SMF... seguro estaria mas potente en SMF
Muchas gracias jose7up, creo que seria algo mas complicado O:) O:)
El install me marca el siguiente error Fatal error: Call to undefined function: db_query() in /hermes/web03/b417/pow.mundote/htdocs/Foro/install.php on line 41
Bueno pues lo de la paginacion era mi problema por eso quise instalar de nuevo, pero ya baje los archivos que dices aqui http://www.simplemachines.org/community/index.php?topic=203647.msg1585512#msg1585512 y listo funciono correcto grax man...
para que es que se utiliza esto
Error, si la ruta es http://www.mundote.info/Foro/algo-que-desconocian-de-mi-opinen-t14385.0.html;msg42609;topicseen#msg42609 No habre y si la ruta es http://www.mundote.info/Foro/algo-que-desconocian-de-mi-opinen-t14385.0.html sui habre como puedo corregir esto que me pasa...
tengo un problema, el siguiente problemas es que cuando le doy a un enlaze para un post en el foro me da el siguiente error y nos e qeu azer no puedo ni entrar a administracion
http://www.rinconp2m.net/smf/seo4smf-redirect.php?t=2366#new
Quote from: Intruso on September 01, 2008, 11:25:14 AM
tengo un problema, el siguiente problemas es que cuando le doy a un enlaze para un post en el foro me da el siguiente error y nos e qeu azer no puedo ni entrar a administracion
http://www.rinconp2m.net/smf/seo4smf-redirect.php?t=2366#new
Si configuro bien el .htaccess ???
Quote from: MakiaResc on August 31, 2008, 05:30:19 PM
Error, si la ruta es http://www.mundote.info/Foro/algo-que-desconocian-de-mi-opinen-t14385.0.html;msg42609;topicseen#msg42609 No habre y si la ruta es http://www.mundote.info/Foro/algo-que-desconocian-de-mi-opinen-t14385.0.html sui habre como puedo corregir esto que me pasa...
Alguien sabe como solucionar esto, es la primera ves que me pasa y no puedo corregirlo.... deberia hacer alguna modificacion al htaccess?
Quote from: MakiaResc on September 21, 2008, 03:21:22 PM
Quote from: MakiaResc on August 31, 2008, 05:30:19 PM
Error, si la ruta es http://www.mundote.info/Foro/algo-que-desconocian-de-mi-opinen-t14385.0.html;msg42609;topicseen#msg42609 No habre y si la ruta es http://www.mundote.info/Foro/algo-que-desconocian-de-mi-opinen-t14385.0.html sui habre como puedo corregir esto que me pasa...
Alguien sabe como solucionar esto, es la primera ves que me pasa y no puedo corregirlo.... deberia hacer alguna modificacion al htaccess?
Deberia modificar el .htaccess pues ya que probablemente esta para foros que estan en el / del dominio el suyo esta en /Foro
Si eso esta modificado correctamente y sigue sin funcionar....
Para q sirve este mod?
revisa u log de errores de apache alli debe haber info util, quiza los de tu host hayan cambiado alguna configuracion en el php o apache y/o has pruebas en otro foro haber si pasa lo mismo
Aquí los tienes "NIBOGO", perdona es que el Hosting, tubo unas recaidas, pero ya esta... ;D
Este archivos renombralo a .htaccess
http://hafre.quae.net/descargar/seo4smf/htaccess.txt
php.ini
http://hafre.quae.net/descargar/seo4smf/php.ini
Este renombralo a QueryString.php
http://hafre.quae.net/descargar/seo4smf/QueryString.txt
St2...
Att. H@free
Quote from: H@free on October 01, 2008, 05:29:36 PM
Aquí los tienes "NIBOGO", perdona es que el Hosting, tubo unas recaidas, pero ya esta... ;D
Este archivos renombralo a .htaccess
http://hafre.quae.net/descargar/seo4smf/htaccess.txt (http://hafre.quae.net/descargar/seo4smf/htaccess.txt)
php.ini
http://hafre.quae.net/descargar/seo4smf/php.ini (http://hafre.quae.net/descargar/seo4smf/php.ini)
Este renombralo a QueryString.php
http://hafre.quae.net/descargar/seo4smf/QueryString.txt (http://hafre.quae.net/descargar/seo4smf/QueryString.txt)
St2...
Att. H@free
Muchas gracias por la subida :)
alguien me dice como se desinstala manualmente. los alchivos que modifica son:
Ejecutar Modificación ./SSI.php
2. Ejecutar Modificación ./index.php
3. Ejecutar Modificación ./Sources/BoardIndex.php
4. Ejecutar Modificación ./Sources/Display.php
5. Ejecutar Modificación ./Sources/Load.php
6. Ejecutar Modificación ./Sources/MessageIndex.php
7. Ejecutar Modificación ./Sources/QueryString.php
8. Ejecutar Modificación ./Sources/Search.php
9. Ejecutar Modificación ./Sources/Subs.php
10. Ejecutar Modificación ./Sources/TPortal.php
11. Ejecutar Modificación ./Themes/default/Display.template.php
12. Ejecutar Modificación ./Themes/default/index.template.php
13. Ejecutar Modificación ./Themes/default/BoardIndex.template.php
14. Ejecutar Modificación ./Sources/News.php
15. Ejecutar Modificación ./Sources/Subs-Post.php
Y si usas la opcion de desinstalacion que trae el mod mismo?
Use el parser pero invierta los procesos
RewriteEngine on
#Some apache servers need Rewritebase.
#delete # from start of Rewrite base to enable it.
#If your forum is something like http://www.forum-example.com/forum then modify your
#RewriteBase in this way: RewriteBase /foro
RewriteBase /foro
Lo tengo así pero... nada.
Me falta algo??
Ya subi el php.ini y .htaccess
Y me salta este error..
Internal Server Error
File "/home/gz*****/public_html/foro/seo4smf-redirect.php" is writeable by group
Quote from: Radamanthys on October 30, 2008, 02:44:54 AM
File "/home/gz*****/public_html/foro/seo4smf-redirect.php" is writeable by group
Prueba poniendole estos permisos:
644
Quote from: Seba! on October 30, 2008, 10:31:13 AM
Quote from: Radamanthys on October 30, 2008, 02:44:54 AM
File "/home/gz*****/public_html/foro/seo4smf-redirect.php" is writeable by group
Prueba poniendole estos permisos:
644
Ala carpeta del "foro" verdad? ya Probe colocando
777
permisos.. y sigue igual :(.
Gracias d todas formas!
Ahora trate de instalar de nuevo el mod y me salta esto..
Duplicate entry 'seo4smf_enable' for key 1
Archivo: /home/gz****/public_html/foro/Packages/temp/install.php
Línea: 41
Al archivo "seo4smf-redirect.php" debes ponerle los permisos 644, lo demas no lo toques, dejalo como esta
Sobre esto
Duplicate entry 'seo4smf_enable' for key 1
Archivo: /home/gz****/public_html/foro/Packages/temp/install.php
Línea: 41
Se me hace a que ya una vez haz instalado el seo4smf, y lo que te dice ahi es que hay una entrada que esta duplicada. Te recomiendo que desinstales el seo4smf, borres las tablas en la base de datos (porque no te los borra) y reinstala todo de nuevo.
PD: Este mod trae demasiados problemas, ademas de que esta muy desactualizado. Usa Pretty Urls que es mas confiable.
Eso quise hacer apenas me salio ,pero en las tablas no me aparece el seo..
# Examinar smf_ads
# Examinar smf_ads_settings
# Examinar smf_attachments
# Examinar smf_ban_groups
# Examinar smf_ban_items
# Examinar smf_bbcode_lookup
# Examinar smf_boards
# Examinar smf_board_permissions
# Examinar smf_bookmarks
# Examinar smf_buddies
# Examinar smf_calendar
# Examinar smf_calendar_holidays
# Examinar smf_categories
# Examinar smf_collapsed_categories
# Examinar smf_feedbot
# Examinar smf_feedbot_log
# Examinar smf_googletagged
# Examinar smf_hp_settings
# Examinar smf_hp_shoutbox
# Examinar smf_hp_shoutbox_ban
# Examinar smf_log_actions
# Examinar smf_log_activity
# Examinar smf_log_banned
# Examinar smf_log_boards
# Examinar smf_log_errors
# Examinar smf_log_floodcontrol
# Examinar smf_log_karma
# Examinar smf_log_mark_read
# Examinar smf_log_notify
# Examinar smf_log_online
# Examinar smf_log_polls
# Examinar smf_log_ratings
# Examinar smf_log_search_messages
# Examinar smf_log_search_results
# Examinar smf_log_search_subjects
# Examinar smf_log_search_topics
# Examinar smf_log_topics
# Examinar smf_membergroups
# Examinar smf_members
# Examinar smf_messages
# Examinar smf_message_icons
# Examinar smf_moderators
# Examinar smf_package_servers
# Examinar smf_permissions
# Examinar smf_personal_messages
# Examinar smf_picture_comments
# Examinar smf_pm_recipients
# Examinar smf_polls
# Examinar smf_poll_choices
# Examinar smf_profile_albums
# Examinar smf_profile_comments
# Examinar smf_profile_pictures
# Examinar smf_sessions
# Examinar smf_settings
# Examinar smf_smileys
# Examinar smf_sp_blocks
# Examinar smf_sp_categories
# Examinar smf_sp_functions
# Examinar smf_tags
# Examinar smf_tags_log
# Examinar smf_thank_you_post
# Examinar smf_themes
# Examinar smf_topics
# Examinar smf_xlinks
busca en smf_settings
Campo Tipo Cotejamiento Atributos Nulo Predeterminado Extra Acción
variable tinytext latin1_swedish_ci No
value text latin1_swedish_ci No
Pos ahí dentro tengo eso, pero nada del Seo4smf :(:(
Ya el links del tuto no funciona me pueden ayudar
yo instale el mods y todo bien pero a parece asi
www.simplemachines.org/community/index.php?topic=203647.120
y tendria que salir asi
www.simplemachines.org/community/Tutoria-Instalar-Seo4smf-Url-Legibles-en-Foro-SMF.html
me dan un tuto porfa
Al parecer una Modificación de parte del Creador del Mod...
Y empezando año 8)
Seo4SMF 2.9.10 was released.
http://www.webmasterstalks.com/seo-4-smf/seo4smf-2-9-10-t1700.0.html;msg10090;topicseen#new
Leí q ese mod tiene bug... tengan cuidado.
muchasgracias n.n
alguien me pasa el mod ?
baja de la web oficial
Quote from: gohanjaja on March 04, 2009, 07:52:15 PM
alguien me pasa el mod ?
http://lmgtfy.com/?q=Seo4SMF+0.2.9.10
Quote from: DJBOYS on February 07, 2009, 08:47:50 AM
Leí q ese mod tiene bug... tengan cuidado.
Aquí se tiene algo de información sobre ello
http://forums.seo.com/showthread.php?t=3478
Pero se indica que hay que actualizar...
Quote from: H@free on February 06, 2009, 02:52:40 AM
Al parecer una Modificación de parte del Creador del Mod...
Y empezando año 8)
Seo4SMF 2.9.10 was released.
http://www.webmasterstalks.com/seo-4-smf/seo4smf-2-9-10-t1700.0.html;msg10090;topicseen#new
Con la aparición de este Mod seo4SMF ha sido el vivir de muchos de nosotros...
Y aquí no se sí es el mismo del Mod Creador que están dando soporte a este mismo...
Pero en realidad me alegro por este Mod.
- Gracias a los creadores...
http://www.smfseo.gen.tr/index.php?action=tpmod;dl=item22
No puedo descargar ni el .htaccess ni el php.ini del manual de instalación. Tampoco veo las imágenes... :o
$4lu2
Quote from: Nearr on April 08, 2009, 04:04:42 AM
No puedo descargar ni el .htaccess ni el php.ini del manual de instalación. Tampoco veo las imágenes... :o
$4lu2
Puedes pasarte por el tutorial que hicimos en nuestra web, la misma esta en mi firma.. ;)
salu2
Gracias, pero tengo un problema...
QuoteDuplicate entry 'seo4smf_enable' for key 1
Archivo: /home/morfeoo/domains/pcways.es/public_html/Packages/temp/install.php
Línea: 41
Nota: Parece que tu base de datos puede necesitar una actualización. La versión de los archivos de tu foro están en la versión SMF 1.1.8, mientras que tu base de datos está en la versión de SMF 1.1.6. Te recomendamos que ejecutes la última versión de upgrade.php.
Lo había subido una vez y no me había salido nada de eso, luego lo volví a subirlo porque pensé que la descarga de tu web era distinta a la que yo puse y ha sido cuando ha empezado a salir ese error. Acto seguido, he vuelvo a intentar instalar el mismo que había puesto al principio, pero no ha funcionado.
$4lu2
En el mismo foro esta la respuesta a ese inconveniente
http://www.sharedownload.org/foro/reparar+arreglar+duplicate+entry+seo4smfenable+for+key+1+lucasruroken-t4957.0.html
;) cualquier consutla solo hazla..
salu2
Hola
se puede instalar teniendo Pretty URLs instalada
Gracias
esto me parece interesante....lastima que no se puede aplicar a SMF 2.0 RC1 , pues ni modo XD
tengo un pequeño problema.
lo he instalado todo y he cambiado la ruta del .htacces y he activado las casillas
Seo4SMF Enable
Beautifying url for profile members ?
Beautifying url for forum actions ?
Enable SQL Query when we don't find url in SMF Context ?
y me funcionan los posts pero ahora no puedo acceder a la administración.
alguna idea ?
una cosita más.
tampoco puedo responder a los posts
bueno te recomiendo desactivar esa casilla
Beautifying url for forum actions ?
ya que para el proposito que se usa ese mod esa casilla no ayuda en nada y es lo que causa tu error
lo malo que supongo tendras que arreglarlo manual por no poder acceder a la administracion
pero si lo quieres dejar me imagino que en el .htaccess te falta el codigo para los action
muchisimas gracias, voy a ver si puedo solucionarlo.
thanks
Quote from: dvpl on June 03, 2009, 05:09:54 AM
muchisimas gracias, voy a ver si puedo solucionarlo.
thanks
debes entrar al phpmyadmin, y buscar en el smf_settings, en las ultimas partes de esa tabla, el campo seo4smf_actions (no me acuerdo bien pero hace alusion a lo que debes cambiar).
y ahi debes asignarle el valor opuesto al que aparece, si es 1 ponele "0 (cero)", si es "on" cambiale por "off"
salu2
siento no haber podido contestar antes pero he estado super liado.
gracias por tu respuesta, me ayudó mucho,
ya esta solucionado.
thanks
por favor, aver si alguien me ayuda con esto...hice el tutorial...lei todas las paginas de este post de el de la pagina
http://www.sharedownload.org/foro/seo4smf+instalar+simplemachinesforum+url+legibles+tutorial+definitivo-t4591.75.html (http://www.sharedownload.org/foro/seo4smf+instalar+simplemachinesforum+url+legibles+tutorial+definitivo-t4591.75.html) pero sigo teniendo este error:
Not Found
The requested URL /forum2/informacion+general-b1.0/ was not found on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
Le di permisos 644 al htaccess
Le di permisos 755 al sitemaps.php
Le di permisos 755 al seo4smf-redirect.php
Les adjunto los archivos aver si me dicen cual esta mal.
www.phyrexianarena.com/archivos.rar (http://www.phyrexianarena.com/archivos.rar)
has puesto bien el directorio donde se encuentra tu foro en el .htacces ?
Zeratul, probablemente tu archivo .httacces este en blanco.
Hace tiempo que uso este mod y no me ha dado problemas despues de conseguir que funcione.
Ahora quiero migrar mi Foro a SMF 2, no he encontrado documentación sobre este mod y estoy seguro que el autor demorara mucho en hacerlo por que este mod casi siempre ha estado asi, medio abandonado.
Tal vez alguien me pueda orientar para usarlo en SMF 2.0
Saludos.
el archivo .htaccess fijate qe diga
RewriteBase\ y donde tengas alojado Smf
Saludos
hay alguna forma de evitar el redireccionamiento..
es decir.. que enlace directamente a las urls amigables??
Gracias ;)
edit: aca hay un ejemplo de lo que quiero hacer: http://www.webmasterstalks.com/forum.html
Fijate aca en la parte del querystring
http://www.animedk.org/foro/seo4smf-instalar-simplemachinesforum-url-legibles-tutorial-definitivo-t34.0.html
Saludos ;)
Hay alguna manera de que cambie los corchetes por guiones medios?
cuando publico algo que lleva corchetes, en la URL me une las palabras y ese no creo que sea bueno. Ej:
La peli que sea [DVDRIP][Castellano][Fantasia][1 Link]
La url amigable seria:
http://www.miweblaquesea.org/forum/la-montana-embrujada-dvdripcastellanofantasia1-link-t7951.0.html
Quisiera que el propio MOD cambiase automaticamente los "][" por guion medio. Puede ser?
Hay una forma pero es un tanto complicada, y un amigo lo estaba desarrollando.
Lo qe te recomiendo es qe no lo pongas asi, sino entre corchetes y separados
(DvdRip) (Castellano) (Fantasia)....
Saludos
ok gracias.
Con las URLs con la palabras unidas es peor verdad? me refiero en cuanto a los buscadores
con las palabras unidas en las keywords sino me ekivoco aparecen juntas
por ejemplo pones:
(dvdrip)(español)
y en las keys te aparece: dvdripespañol, blablabla
Creo qe era en las keys o en el titulo.
eso es, poniendo corchetes o parentesis, la palabras se unen en la URL. en el titulo salen bien
Quote from: Nearr on April 08, 2009, 01:15:00 PM
Gracias, pero tengo un problema...
QuoteDuplicate entry 'seo4smf_enable' for key 1
Archivo: /home/morfeoo/domains/pcways.es/public_html/Packages/temp/install.php
Línea: 41
Nota: Parece que tu base de datos puede necesitar una actualización. La versión de los archivos de tu foro están en la versión SMF 1.1.8, mientras que tu base de datos está en la versión de SMF 1.1.6. Te recomendamos que ejecutes la última versión de upgrade.php.
Lo había subido una vez y no me había salido nada de eso, luego lo volví a subirlo porque pensé que la descarga de tu web era distinta a la que yo puse y ha sido cuando ha empezado a salir ese error. Acto seguido, he vuelvo a intentar instalar el mismo que había puesto al principio, pero no ha funcionado.
$4lu2
Desde el phpmyadmin ve a la base que estes usando. de ahi entra a la tabla smf_settings
las variables
seo4smf_ eliminalas
y vuelve a subir de nuevo el seo4smf desde tu smf...
lo mismo se debe de hacer siempre que vayas a actualizar de version
a mi el unico problema que me queda por solucionar es el de las notificaciones por email.
La primera URL que es la que te lleva al post, no sale como URL, sin embargo, la de desinscribirse sale perfecta.
Un nuevo mensaje, 'Radio Macande - Soy Callejero 2009', ha sido publicado en un foro que estás monitoreando.
Lo puedes ver en
http://www.duriespain.org/forum/radio-macande-soy-callejero-2009-t8266.0.html;new#new
Pueden haber sido publicados mas temas, pero no recibiras mas notificaciones por email hasta que visites el foro.
Desinscribirse a nuevos temas desde este foro haciendo click aquí: http://www.duriespain.org/forum/index.php?action=notifyboard;board=18.0
Saludos,
El equipo DurieSpain.
Agradeceria mucho la ayuda, esto asi es un asco
nadie tiene los conocimientos suficientes para este problema?
Hola,
Vereis tengo un problema, este mod me a funcionado siempre bien, pero tras la ultima actualizacion a smf 1.1.10 ( instalandolo manualmente ) las URL de los ultimos temas que salen en portada:
(https://www.simplemachines.org/community/proxy.php?request=http%3A%2F%2Fimg685.imageshack.us%2Fimg685%2F1474%2Fdibujowj.jpg&hash=7b5571d51ffef104205c7cdc2051b17ca58a8133)
me salen mal, me salen del tipo:
http:// titulodelpost . html
en vez de:
http:// www . miweb . net / categoria/ titulodelpost . html
alguien sabe pork ? mi web por si la necesitais es colgados.net
un saludo
url de tu foro para ver?
nadie sabe que pasa ?
consegui instalar el mod seo
pero me faltan los archivod htdacces y el php.ini
si alguien pudiera ponerlos seria de mucha ayuda gracias
if somebody have de htdacces and de php.ini could put it here plz.....that would be great
Thanx
A mi tmb me faltan los archivos :S
salu2
Este Mod fue retirado por su inseguridad. No deberían tratar de usarlo, porque no prueban Pretty Urls?
es mucho mas efectivo seo4smf..
Para empezar las Urls Bonitas no aportan a mejorar el SEO de una página web como se ha confirmado en SMF, adicionalmente como dicen el SEO4SMF es un mod supremamente viejo y que su desarrollo ha cesado muy probablemente tenga más bugs y huecos de seguridad que no se han dado a conocer.
Personalmente tampoco recomiendo este mod, el unico posible beneficio que tiene son los sitemaps que pueden ser facilmente reemplazados por el SMF Sitemap
Hola, en mi web www.ax-anime.com, las urls antes eran asi www.ax-anime.com/index.php?board=5.0
pero al momento de aplicarles el mod esta asi: www.ax-anime.com/anime-descargas-b5.0/ hasta alli todo bien, pero
he hecho una nueva aplicacion para mi web, por ejemplo si entran a
www.ax-anime.com/index.php?board=5.0 , veran que debajo de cada post estan los generos a los que pertenece
y los enlaces quedan asi : http://www.ax-anime.com/index.php?board=5.0;genero=11, ahora lo quiero es que las url me
salgan asi: www.ax-anime.com/anime-descargas-b5.0/fantasia/ o asi :
www.ax-anime.com/anime-descargas-b5.0/genero/fantasia/
en donde "fantasia" es el nombre del genero, alguien sabe que archivos debo modificar para obtener este resultado?