Htaccess RewriteRule 404-es hibát eredményez

Címkék
Htaccess RewriteRule 404-es hibát eredményez
2022-11-05T12:40:13+01:00
2022-11-05T17:55:53+01:00
2022-11-05T19:15:35+01:00
Breaknet
Sziasztok!

Vanegy htaccess-em, ami majdnem teljesen jól működik, kivéve egy esetben: ha az oldalam.hu/news helyett oldalam.hu/news/-t írok (tehát marad egy / jel a végén). Ilyenkor 404-es hibát dob. Miért van ez? Biztosan csak valami apróság.

RewriteEngine On RewriteCond %{THE_REQUEST} \s/category\.php\?catid=(\S+)\s [NC] RewriteRule ^ /news/categories/%1? [R=301,L] RewriteCond %{THE_REQUEST} \s/new\.php\?title=(\S+)\s [NC] RewriteRule ^ /news/%1? [R=301,L] RewriteCond %{REQUEST_URI} !/(exception\.php|admin) [NC] RewriteCond %{THE_REQUEST} \s/([^.]*)\.php/?\s [NC] RewriteRule ^ /%1? [R=301,L] RewriteRule ^news/categories/([^/]*)$ category.php?catid=$1 [NC,QSA,L] RewriteRule ^news/([^/]*)$ new.php?title=$1 [NC,QSA,L] RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}.php -f RewriteRule ^(.+?)/?$ $1.php [L]


Előre is köszönöm a segítséget.
Mutasd a teljes hozzászólást!

  • A /news/ -ra ez a szabály illeszkedik:

    RewriteRule ^news/([^/]*)$ new.php?title=$1 [NC,QSA,L]
    Gondolom nem ezt szeretnéd, hanem hogy az utolsó sor illeszkedjen és a news.php-ra írja át.

    A legegyszerűbb az, ha megkövetelsz legalább egy karaktert a /news/ után:

    RewriteRule ^news/([^/]+)$ new.php?title=$1 [NC,QSA,L]
    Mutasd a teljes hozzászólást!
  • Köszönöm a választ.

    Valójában az lenne a legjobb, ha valaki oldal.hu/valami/-t ír be, akkor az oldal.hu/valami-re írja át, hogy ne maradjon ott az a perjel. Azt hogy tudnám?
    Mutasd a teljes hozzászólást!
  • Próbálkozz egy kicsit önállóan, aztán ha nem megy akkor írd ide hogy mivel próbálkoztál.
    Mutasd a teljes hozzászólást!
  • Sajnos elindulni se tudok, hogy mit kéne átírjak ahhoz, hogy úgy működjön, ahogy szeretném.
    Mutasd a teljes hozzászólást!
  • Akkor ezt most úgy kell érteni, hogy azt se érted ami eddig összejött, vagy esetleg copy-paste-elve volt innen-onnan? Csak mert segíteni szeretek, de az ilyen "közösségi projektként" születő megoldásokhoz nem szeretek hozzájárulni.

    Egyébként az Apache oldalán van mod_rewrite dokumentáció, ami alapján el lehet indulni a megértésben.
    Mutasd a teljes hozzászólást!
  • Nem értelek. Ennek a fórumnak az a célja, hogyha valaki nem tud megoldani valamit, akkor mások segítenek benne. Az nem segítség, hogy idedobsz egy linket (amit én is megtalálok) vagy leírod, hogy próbálkozz magad. Ezeken már nyilván túl vagyok, azért hoztam létre a topikot. A segítség az, ha átírod a hibás kódrészletet (gondolom 1-2 karakter az egész), és elmagyarázod, hogy miért úgy írtad át. Innentől kezdve érteni fogom, hogy mi volt a hiba. Ha nem szeretnél segíteni, nem kell, de akkor a hozzászólásaidat sem értem.
    Mutasd a teljes hozzászólást!
  • Én pedig azt nem értem, hogy ha az eddigi kódod működésével tisztában vagy, akkor hogy lehet hogy még ötleted sincs arra a plusz egy sorra ami hiányzik. Még átirányításos szabály is van, amiből kiindulhatsz.

    Egyébként az eredeti problémádat megoldottam, most csak azon beszélgetünk hogy egy plusz kívánságodat hogyan kéne még implementálni. Szóval ha szigorúan vesszük a szabályzatot akkor már zárnod is kéne a témát.

    A hozzászólásaim megértéséhez annyi segítséget adok még, hogy annak próbálok segíteni akin látom hogy érti mit csinál csak elakadt. A "sajnos hozzá sem tudok kezdeni" témákra direkt nem szoktam reagálni, de ugye az elején még ilyesmiről nem volt szó.
    Mutasd a teljes hozzászólást!
Címkék
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd