Autor | Zpráva | ||
---|---|---|---|
IdemeNaHavaj Profil |
Ahoj
Ako má vyzerať rewriteRule ak chcem za / iba 1 slovo? Napr. z example.com/index.php?miestnost=zoznamka example.com/zoznamka Už som skúšal aj online generátor ale hádzalo mi to chybu Internal server error - prosím napíšte mi sem ten jeden riadok ako to má presne vyzerať aby to šlo, budem moc rád. Ďakujem edit: maximalne čo som dosiahol je example.com/zoznamka/ (nechcem tam to posledné /)
mám to takto RewriteRule ^(.+[^/])/$ /index.php?room=$1 [L] |
||
Dan Charousek Profil |
#2 · Zasláno: 13. 11. 2015, 18:10:16
IdemeNaHavaj:
„(nechcem tam to posledné /)“ Si to otrimuj: trim($adresa, "/"); |
||
IdemeNaHavaj Profil |
#3 · Zasláno: 13. 11. 2015, 18:11:47
Dan Charousek:
Chcem aby to šlo aj otvoriť enterom priamo bez lomítka. |
||
Dan Charousek Profil |
#4 · Zasláno: 13. 11. 2015, 18:15:36
IdemeNaHavaj:
Omlouvám se, špatně jsem pochopil problém. Jestli chceš jen text do prvního lomítka, tak by toto mohlo fungovat: ^([^\/]* ale moc se mi to nezdá. Co s těmi zbylými řetězci? Jestli je to tak, tak by se .com/neco/asd vyhodnocovalo stejně jako .com/neco/ddd
|
||
IdemeNaHavaj Profil |
Dan Charousek:
Napíšeš mi to prosím presne? Ja totiž to čo mám (čo som písal vyššie) tak to mám vygooglené. A ak to zmením iba za to, čo si napísal tak to hádže internal server error. „Co s těmi zbylými řetězci?“ žiadne iné niesú, bude len jeden string za lomítkom. |
||
Dan Charousek Profil |
#6 · Zasláno: 13. 11. 2015, 18:28:57
IdemeNaHavaj:
Tak vyber vše a otrimuj si to: .htaccess RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*) index.php?room=$1 [QSA,L] index.php echo trim($_GET['room'], "/"); |
||
xROAL Profil |
#7 · Zasláno: 13. 11. 2015, 18:30:02
RewriteRule ^([^/]*)$ index.php?room=$1 [L] ti hádže chybu?
|
||
IdemeNaHavaj Profil |
#8 · Zasláno: 13. 11. 2015, 18:34:36
Dan Charousek:
Nechcem to do php premennej, chcem aby to šlo s enterom normálne otvoriť bez posledného lomítka. xROAL: Ano. Toto som myslím že aj ja skúšal bez toho lomítka pred "$" |
||
Dan Charousek Profil |
#9 · Zasláno: 13. 11. 2015, 18:36:51
IdemeNaHavaj:
> Dan Charousek: > Nechcem to do php premennej, chcem aby to šlo s enterom normálne otvoriť bez posledného lomítka. Však ano, otevřeš adresu example.com/zoznamka a zobrazí se obsah z index.php?room=zoznamka
Jak jinak bys chtěl generovat ten obsah než na základě toho, co je za lomítkem. |
||
IdemeNaHavaj Profil |
#10 · Zasláno: 13. 11. 2015, 19:03:32
Dan Charousek:
Myslim ze som zle pochopil tu spravu pred tym, ze co dalsie retazce. Mam tam uz nastavenych viac pravidiel RewriteRule, asi preto mi to ^(.*) vypisuje znova internal server error.
Pochopil som to predtím zle, myslel som že myslíš, že adresa by mala viac retazcov a viac lomítok .com/a/b/c
Takže problém mám stále.. nejde to nejako normálne nastaviť? |
||
xROAL Profil |
#11 · Zasláno: 13. 11. 2015, 19:16:10
IdemeNaHavaj:
„Ano. Toto som myslím že aj ja skúšal bez toho lomítka pred "$"“ Osobne som to neskúšal, ale nevidím dôvod na to, aby tento regulár sám o sebe spôsoboval chybu. Ostatne, čo ti bráni v použití obyčajného, všeobecného RewriteRule ^(.*)$ index.php?room=$1 [L] ? Keď do adresy / nenapíšeš tak tam logicky nebude a všetko bude normálne fungovať. A ak tam to lomítko niekto napíše, tak sa ho môžeš v PHP zbaviť, alebo má človek smolu a uvidí 404.
Nemáš v .htaccess ešte niečo iné, čo by sa s týmto bilo?
|
||
IdemeNaHavaj Profil |
#12 · Zasláno: 13. 11. 2015, 19:26:31
xROAL:
„Nemáš v .htaccess ešte niečo iné, čo by sa s týmto bilo?“
momentálne tam mám toto: Options +FollowSymLinks -MultiViews -indexes RewriteEngine on RewriteBase / RewriteRule ^login.html /login.php RewriteRule ^register.html /register.php RewriteRule ^blocked.html /blocked.php RewriteRule ^(.+[^/])/$ /index.php?room=$1 [L] #toto je to problémové a hneď pod tym asi 20 riadkov tohto (len vždy iná adresa, ale na rovnaký štýl): RewriteRule ^_/room/([^/]*)/activate$ /actions/activate_room.php?code=$1 [L] Všetkých ďalšich 20 pravidiel sa začína ^_/ teda by sa to nemalo byť. Či?
|
||
Dan Charousek Profil |
#13 · Zasláno: 13. 11. 2015, 19:58:32
IdemeNaHavaj:
„a hneď pod tym asi 20 riadkov tohto (len vždy iná adresa, ale na rovnaký štýl)“ To je právě ono. Obecně se to dělá pomocí toho jednoho pravidla ( [#6] ) a obsah se includuje PHP scriptem. |
||
IdemeNaHavaj Profil |
#14 · Zasláno: 14. 11. 2015, 19:22:52
Dakujem myslim ze som to uz pochopil a funguje to
|
||
Časová prodleva: 9 let
|
0