Piszę z prośbą o pomocy przy połączeniu reguł . Mam takie 2 reguły:
RewriteRule ^(.*)\.html$ $1.php?page=$1[QSA,L]
i
RewriteRule ^(.*)\.html$ page.php?id=$1 [QSA,L]
Załóżmy, że nie istnieje plik text.php i powinno się wykonać takie coś:
Wpisujemy adres www.domena.pl/text.html . jeżeli nie istnieje plik text.php to wykonuje się page.php?id=text . Jeżeli plik istnieje to się wykona. Nie mam pojęcia jak to połączyć, a jest mi to potrzebne w celu skrócenia wpisów to tak to dla każdej podstrony mi się będzie powtarzała jedna reguła czyli:
RewriteRule ^podstrona\.html$ podstrona.php?page=podstrona[QSA,L] RewriteRule ^podstrona2\.html$ podstrona2.php?page=podstrona2[QSA,L]
Takie coś ma być:
RewriteCond %{REQUEST_FILENAME} -d RewriteCond %{REQUEST_FILENAME} -f RewriteRule ^(.*)\.html$ $1.php?page=$1[QSA,L] RewriteRule ^(.*)\.html$ page.php?id=$1 [QSA,L]
wpisałem
i może problem jest to, że po wpisaniu www.domena.pl/test.html wywala takie coś:
Kod
[REQUEST_URI] => /test.html
Kod
RewriteCond %{REQUEST_URI} !-d
RewriteCond %{REQUEST_URI} !-f
RewriteRule ^(.*)\.html$ $1.php [QSA,L]
RewriteRule ^(.*)\.html$ page.php?id=$1 [QSA,L]
RewriteCond %{REQUEST_URI} !-f
RewriteRule ^(.*)\.html$ $1.php [QSA,L]
RewriteRule ^(.*)\.html$ page.php?id=$1 [QSA,L]
jeżeli istnieją pliki [nazwa].php (w przeglądarce wpisuje [nazwa].html) to wszystko dobrze mi dopasowuje. Jednak jeżeli plik nie istnieje powinno mi jakiś dopasować do reguły
Kod
RewriteRule ^(.*)\.html$ page.php?id=$1 [QSA,L]
- tylko nie wiem dlaczego to nie robi ;/ mogę liczyć na pomoc? w mozilli wywala mi błąd:Cytat
Not Found
The requested URL /o-mnie.php was not found on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
The requested URL /o-mnie.php was not found on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
Kod
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(4[^/]*)$ /process.php?variable=$1 [L]
RewriteCond %{SCRIPT_FILENAME} !process\.php
RewriteRule ^([^/]*)$ index.php?$1
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(4[^/]*)$ /process.php?variable=$1 [L]
RewriteCond %{SCRIPT_FILENAME} !process\.php
RewriteRule ^([^/]*)$ index.php?$1
znalazłem coś takiego:
http://stackoverflow.com/questions/1478993...1479971#1479971
ale nie mogłem dopasować tego ;/