Keresőbarát url? Htaccess miért nem működik rendesen ebben az esetben?
index.php?page=1
index.php?id=1
példa url-ek. htaccess-ben meg vannak adva a paraméterek, és hivatkozásban pedig ez href="page/1" és href="id/1" átirányít a page=1-nek megfelelő helyre de nem találja az adott fájlt, a htaccess nem teszi a dolgát. Vagy a hivatkozáson kell javítani?
<html>
<? for($i=1;$i<=10;$i++) {
echo '<a href="page/'.$i.'">Page '.$i.'</a><br>';
echo '<a href="id/'.$i.'">ID '.$i.'</a><br>';
}
?>
</html>
Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*)/ index.php?page=$1
RewriteRule (.*)/ index.php?id=$1
Azért nem működik, mert ugyanarra a feltételtömbre csak egy szabályt lehet alkalmazni.
Vagyis csak 1 RewriteRule lehet ugyanarra a feltételre.
Ez: (.*)/ ugyanaz mint ez: (.*)/
Mellesleg jobb lenne, ha ez így kerülne be: ^(.*)$
A htaccess hogyan döntse el, hogy te most a page vagy az id változóba akarod visszakapni a requestet?
Javaslom olvasgatásra:
Jelenleg ezt csinálja amikor a linkekre kattintok:
http://localhost/htaccesdemos/page/id/page/page/id/page/page/page/page/id/4
web-programozó vagyok, de ilyet a suliban nem tanítottak, haragszom is rájuk, nem egy gyakorlatorientált képzés volt...
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!