Autor Zpráva
asitak
Profil *
Prosím, jak přesměrovat např.
pokus.cz/test/data/obrazky/20blabla.png do pokus.cz/test/data/obrazky/20/20blabla.png
pokus.cz/test/data/obrazky/19blabla.png do pokus.cz/test/data/obrazky/19/19blabla.png
pokus.cz/test/data/obrazky/18blabla.png do pokus.cz/test/data/obrazky/18/18blabla.png
atd...

Děkuji za radu
Kajman
Profil
Zkusil bych v adresáři obrazky něco jako
RewriteBase /test/data/obrazky/
RewriteRule ^([^/]{2})([^/]*)$ $1/$1$2 [R,NE,L]
asitak
Profil *
Kajman [#2]: Děkuji, a ještě přesněji aby bylo pravidlo blíže specifikováno aby tedy první dva znaky byly čísla tzn. 0-9 a přípona byla png.
a šlo by i cestu zobecnit a nějak ji uvést přímo v RewriteRule bez RewriteBase

já jsem vytvořil toto, ale to mě prostě nefunguje a nevidím chybu RewriteRule ^/([0-9]{2})(.*)\.png$ /$1/$1$2.png

Ještě jednou díky za radu
Kajman
Profil
Tak obecně pro jakoukoliv cestu bych zkusil v rootu

RewriteBase /
RewriteRule ^(.*/)?[0-9]{2}/[^/]*\.png$ - [S=1,NC]
RewriteRule ^(.*/)?([0-9]{2})([^/]*\.png)$ $1$2/$2$3 [R,NE,L,NC]
asitak
Profil *
Kajman [#4]:
hmmm, ale když to testuji na htaccess.madewithlove.be
tak to vrací např. pro www.pokus.cz/pokus/200000.jpg

1    RewriteBase /    Using / as the base for the rewrites.
2    RewriteRule ^(.*/)?[0-9]{2}/[^/]*\.png$ - [S=1,NC]    This rule was not met.
3    RewriteRule ^(.*/)?([0-9]{2})([^/]*\.png)$ $1$2/$2$3 [R,NE,L,NC]    This rule was not met.
Kajman
Profil
Chtěl jste to jen pro png. A ten tester nepodporuje flag S.
asitak
Profil *
Kajman [#6]:
jej moc se omlouvám, to je tak, když člověk něco dělá ve shonu a zkouší více alternativ ... je to paráda, tak jsem si to přál, moc díky za pomoc
asitak
Profil *
tak prosím obdobný požadavek, jen trochu jiný
aby číslo za - v souborech bylo vždy 3 místné tzn. teď mám soubory
pokus1-02p.png -> pokus1-002.png
pokusx-123p.png -> pokusx-123p.png
458pok-25e.png -> 458hokus-025e.png
atd...

děkuji za radu


oprava
458hokus-25e.png -> 458hokus-025e.png
Kajman
Profil
Zkusil bych něco jako
RewriteBase /
RewriteRule ^(.*-)([0-9]{1}([^/0-9][^/]*)?\.png)$ $100$2 [R,NE,L,NC]
RewriteRule ^(.*-)([0-9]{2}([^/0-9][^/]*)?\.png)$ $10$2 [R,NE,L,NC]

Pokud to nemá být jen png soubory, tak místo png můžete zkusit dát [^/]*
asitak
Profil *
[#9] Kajman Opět funguje jak má, opět děkuji za pomoc.
asitak
Profil *
Kajman [#9]: Tak ještě změna, dělá mě to asi trochu bordel u jiných souborů jiných adresářích

1.varianta- pevně stanovený adresář např. /pokus/ a jméno výsledného souboru mělo masku za pomlčkou vždy 3 místné číslo a znak e nebo p (dle zdroje) a pak pak přípona png
/pokus/pokus1-02p.png -> /pokus/pokus1-002p.png
/pokus/pokusx-123p.png -> /pokus/pokusx-123p.png
/pokus/458pok-25e.png -> /pokus/458hokus-025e.png
atd...

2.budoucí varianta- pevně stanovený adresář dle 1. znaku souboru a jméno výsledného souboru mělo masku za pomlčkou vždy 3 místné číslo a znak e nebo p (dle zdroje) a pak pak přípona png

/pokus/pokus1-02p.png -> /pokus/p/pokus1-002p.png
/pokus/hokusx-123p.png -> /pokus/h/hokusx-123p.png
/pokus/458pok-25e.png -> /pokus/4/458hokus-025e.png
atd...

Opět děkuji za případnou pomoc
Kajman
Profil
Na to stačí použít kódy, co už tu jsou napsané, jen je mírně upravit. Nejjednodušší je dát pravidla do adresáře pokus a upravit RewriteBase.
asitak
Profil *
Kajman [#12]: jo, jo, tak to je lepší. diky

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0