Autor Zpráva
Jiří Bednář
Profil
Ahoj,
potrebuju na svuj web kvuli SEO pomuzit mod_rewrite na odkazy a nasel jsem si navod/vysvetleni na http://str4wberry.cz/blog/mod_rewrite-prakticky a pouzil jsem toto:

RewriteEngine on
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

Vlozil jsem to do .htaccess radek po presmerovani 404ky a zmenil jsem i promenou q na id ktere pouzivam.
ulozim to a najedu stranku mythings.ic.cz/mythings a prej neexistuje, tak si zadam http://mythings.ic.cz/mythings/index.php?id=mpc a cekam ze se zmeni adresa, ale ono nic.
Poradi mne nekdo s timto prolemem?

DIK
Mastodont
Profil
cekam ze se zmeni adresa, ale ono nic
A jak by se ta adresa měla měnit?
Jiří Bednář
Profil
Mastodont
Ja o mod_rewrite nevim vubec nic, ale co se na tom webu pise, tak by adresa mela misto http://mythings.ic.cz/mythings/index.php?id=neco vypadat takto http://mythings.ic.cz/mythings/neco
Jiří Bednář
Profil
A super je, ze kdyz pouziju to co je tady (jpw.cz) tak to nefacha jak ma

RewriteEngine on
RewriteRule zadana-stranka\.html podstrcena-stranka.html

misto toho aby odresa byla zadana-stranka.html je podstrcena-stranka.html

a jeste se tam pise ze zustava takto zadana-stranka.html
Mastodont
Profil
mythings.ic.cz/mythings existuje.
http://mythings.ic.cz/mythings/neco se zacyklí.

tak by adresa mela misto .... vypadat takto ....
Ano, to je v pořádku. Uživatel zadá "hezkou" adresu a ta se INTERNĚ změní. Ale uživatel bude mít v prohlížeči pořád tu první.
Jiří Bednář
Profil
Mastodont
http://mythings.ic.cz/mythings/neco se zacyklí.

To byl priklad

Ano, to je v pořádku. Uživatel zadá "hezkou" adresu a ta se INTERNĚ změní. Ale uživatel bude mít v prohlížeči pořád tu první.
Tak to ma bejt, ALE NENÍ!
Anonymní
Profil *
Dlasi sek,

vytvorim slozku mod_rewrite, do ni dam soubor a.html a b.html a do .htaccess dam toto:

RewriteEngine on
RewriteRule a\.html b.html

Zadejte
http://mythings.ic.cz/mod_rewrite/a.html

A mel by se ukazat text "soubor b.html" ktery je v souboru b.html
Mastodont
Profil
Není?
http://mythings.ic.cz/mythings/
Tato stránka se normálně zobrazí.
Jiří Bednář
Profil
Mastodont
Asi neco nechapete,
kdyz zadam http://mythings.ic.cz/mythings/mpc ma se ukazat obsah http://mythings.ic.cz/mythings/index.php?id=mpc a adresa zustat http://mythings.ic.cz/mythings/mpc

ALE NIC! NEFACHA

Znova:

RewriteEngine on
RewriteRule zadana-stranka\.html podstrcena-stranka.html

ma udelat to ze zadam zadan-stranka.html a obsah bude podstrcena-stranka.html ale adresa bude zadan-stranka.html
A TO SE NEDEJE!!!!

PS:
http://mythings.ic.cz/mythings/
Tato stránka se normálně zobrazí.


O tom uz neni rec.
Mastodont
Profil
kdyz zadam http://mythings.ic.cz/mythings/mpc ma se ukazat obsah
No a soubor .htaccess je umístěn kde? A jaký je přesně jeho obsah?
Jiří Bednář
Profil
v .htaccess mam toto:

ErrorDocument 404 /index.php?id=404
RewriteEngine on
RewriteRule ^(.*)$ index.php?id=$1 [L,QSA]
Mastodont
Profil
A je ten soubor umístěn v /mythings ?? Jestli ne, tak nemůže nic přesměrovat na /mythings/index.php
Jiří Bednář
Profil
Je tam.
Mastodont
Profil
No a není v /mythings/index.php nějaké interní přesměrování? Jinak neznám důvod, proč by to nemělo fungovat, ten soubor je v pořádku.
Davex
Profil
Zkus přídat RewriteBase:
RewriteEngine on 
RewriteBase /mythings/
RewriteRule ^(.*)$ index.php?id=$1 [L,QSA]
Kajman_
Profil *
ma udelat to ze zadam zadan-stranka.html a obsah bude podstrcena-stranka.html ale adresa bude zadan-stranka.html
A TO SE NEDEJE!!!!


Tak si povolte .htaccess a mod_rewrite v nastavení apache.

Dokud nebude fungovat

RewriteEngine on
RewriteRule ^(.*)$ http://d.jpw.cz/[/pre]

Tak nebude fungovat nic.


RewriteEngine on
RewriteRule ^(.*)$ index.php?id=$1 [L,QSA]


To se zacyklí... zkuste

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?id=$1 [L,QSA]
Jiří Bednář
Profil
Jak muzu zjistit zda je povoleny mod_rewrite (myslim ze je), php info z ic.cz http://baz.ic.cz/phpinfo/phpinfo.php
a .htaccess funguje, proto ze pouzivam presmerovani 404ky
Jiří Bednář
Profil
Tak, tet mam v .htaccess toto:

#ErrorDocument 404 /index.php?id=404
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?id=$1 [L,QSA]

muzete zkusit.

PS:
Ta $1 je co zac? Mam to mit jeste nekde v indexu?
AM_
Profil
$1 znamená, že adresa mythings/neco se přepíše na index.php?id=neco
/edit: sry, chybka
Mastodont
Profil
$1 vyjadřuje to, co je v prvních kulatých závorkách vzoru ...
Jiří Bednář
Profil
Mastodont
AM_
Dik

A co tet s tim?
Nehodla fungovat.
Jiří Bednář
Profil
Shrnu to:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?id=$1 [L,QSA]

- Nejede

RewriteEngine on
RewriteRule ^(.*)$ index.php?id=$1 [L,QSA]

-Nejede

RewriteEngine on
RewriteRule ^(.*)$ http://d.jpw.cz/[/pre]

-To se snazi presmerovat na http://d.jpw.cz/%5B/pre%5D?id=uvod/novinky... atd.

RewriteEngine on
RewriteBase /mythings/
RewriteRule ^(.*)$ index.php?id=$1 [L,QSA]

-Taky nic.
Mastodont
Profil
Mě už nic nenapadá, tady u mne ten .htaccess funguje naprosto normálně.

Doporučil bych učit se to na localhostu, kromě JPW jsou i jiné české návody.
Jiří Bednář
Profil
Testnu na lokalu
Jiří Bednář
Profil
Jiří Bednář
Lol, jeste kdybych mel mod_rewrite, vi nekdo kde ho stahnout?
Davex
Profil
Zkoušel jsem to na IC na následující dvě varianty fungují za předpokladu, že je skript index.php v adresáři mythings a nejsou žádná další přepisovací pravidla (ani v .htaccess nadřazeného adresáře):

RewriteEngine On 
RewriteBase /mythings/
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)$ index.php?id=$1 [L,QSA] 


nebo

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)$ /mythings/index.php?id=$1 [L,QSA] 

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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