Autor Zpráva
Sitole
Profil
Ahoj, chci se zeptat na jednu takovou ve vašem případě asi blbost, ale která mě trápí již tři dny. Dělal jsem stránky pro vypsání článků, které budou v adrese vypisovat článek dle obsahu proměnné v url jménem "adresa". Celá adresa ze které se vše bere je tedy xx.cz/clanky?adresa=prvni-clanek a já by jsem chtěl adresu upravit na výslednou xx.cz/clanky/prvni-clanek. Hledal jsem spousty návodů a spoustu jsem jich i zde na DJPW našel, ale vždy tam něco unikalo. Nejspíše jsem to špatně zapisoval a nebo jsem to měl a jen jsem někde něco zvrtal. Soubor .htaccess mám aktuálně umístěný v xx.cz/.
Případně děkuji všem za pomoc, ale už jsem si opravdu nevěděl rady. :-)
Slark
Profil *
Jako pravidlo pro přepis url přidejte do .htaccess:
RewriteRule ^clanky/([^/]+)$ index.php?clanky=$1 [QSA]



Tak ještě jsem si všiml, že máte url ve tvaru xx.cz/clanky?adresa=prvni-clanek, to by pravidlo vypadalo takto:

RewriteRule ^clanky/([^/]+)$ index.php?clanky&adresa=$1 [QSA]
Sitole
Profil
Slark:
Děkuji moc za pomoc! Vše fungovalo, ale stačilo přepsat jen proměnnou v adrese.
RewriteRule ^clanky/([^/]+)$ index.php?clanky=$1 [QSA]
RewriteRule ^clanky/([^/]+)$ clanky.php?adresa=$1 [QSA]
Nakonec jsem asi něco podobného koumal celou dobu, ale trvalo by to jistě tak týden, než by jsem to sám vykoumal. Děkuji moc. :-)
jakub.frasunek
Profil
Já používám třeba toto
RewriteEngine on
RewriteBase /
RewriteRule ^([^/\.]+)(/?)$ index.php?p=$1 [L,QSA]
RewriteRule ^([^/\.]+)/([^/\.]+)(/?)$ index.php?p=$1&sp=$2 [L,QSA]
RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)(/?)$ index.php?p=$1&sp=$2&ssp=$3 [L,QSA]
RewriteRule ^([^/\.]+)/([^/\.]+)/([^/\.]+)/([^/\.]+)(/?)$ index.php?p=$1&sp=$2&ssp=$3&sssp=$4 [L,QSA]

pak nemusíte mít url ve tvaru xx.cz/clanky?adresa=prvni-clanek ale o dost hezčím tvaru xx.cz/clanky/prvni-clanek
Sitole
Profil
Omlouvám se, že otvírám stará již vyřešená témata, ale s kodem nastal problém.
Mám pevnou adresu xx.cz/clanek/index.php?adresa=mleko
Ta je pomocí htaccess přesměrovávám na hezčí adresu xx.cz/clanek/melko, ale nastala kolize. Google začal neočekávaně indexovat nejden adresu xx.cz/clanek/mleko, ale dokonce adresu xx.cz/clanky/clanek/mleko, která opravdu při kliknutí zobrazuje obsah článku. Jak to mám nyní vyřešit, aby tyto druhé adresy neindexoval? Děkuji za odpověd.

htaccess nyní mám
# Přesměrování adres článků
RewriteRule ^clanek/([^/]+)$ clanek/index.php?c=$1 [QSA]
Sitole
Profil
Tak jsem se snažil nastavit i absolutní adresu, ale stále nic. Zjístil jsem, že se chyba projevuje na všech složkách. Tedy xx.cz/ahoj/clanek také funguje přestože by to měla být samostatná stránka reálně postavená xx.cz/ahoj.php. Už fakt ztrácím naději.
Davex
Profil
Sitole:
Chyba bude asi někde jinde, protože uvedené pravidlo přepisuje jen adresu, ve které cesta začíná na clanek/.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0