FAQ |
Kalender |
![]() |
#1 | ||
|
|||
Flitig postare
|
Tjena alla.
Har en ganska ordentlig .htaccess-fil 500+ rader med en blandning RewriteRules likt: Kod:
RewriteRule ^wo-man/([a-z]+)$ php_accesser.php?bbcf=c&mrec=19&s=$1 [L] RewriteRule ^two/([a-z]+)$ php_accesser.php?bbcf=c&mrec=20&s=$1 [L] RewriteRule ^fly$ php_accesser.php?bbcf=p&rec=1 [L] RewriteRule ^tobuy.html$ php_accesser.php?bbcf=s&rec=6 [L] RewriteRule ^semester/([0-9]+)/(.*)$ php_accesser.php?bbcf=b&adf=$1&sib=$2 [L] Expempel: wo-man/ab wo-man/ab?woom=1 - query strängen skickas vidare wo-man/ab?hej=1 - query strängen ignoreras av .htaccess Att flagga varje RewriteRule QSA hade löst problemen om det ej vore för att det tillåter samtliga query strings. Min fråga, hur löser man detta bäst? Finns det någon lösning på ett par rader som tillåter samtliga RewriteRules att acceptera den specifikaquery strängen? (Något i stil med: RewriteCond %{QUERY_STRING} woom RewriteRule ^(.*)$ $1 [QSA]) Är ej helt haj på htaccess så alla förslag uppskattas... =) |
||
![]() |
![]() |
![]() |
#2 | ||
|
|||
Supermoderator
|
Jag skulle föreslå att du tänker om helt. Att lägga upp mängder med rewrite rules är ingen bra idé. Du gör bättre i att hantera mer av logiken i PHP + databas istället
__________________
Full-stack developer, free for smaller assignments |
||
![]() |
![]() |
![]() |
#3 | ||
|
|||
Har WN som tidsfördriv
|
Håller med tartareandesire. Det du annars kan göra är satsa på mer generella regler och förflytta delar till PHP. Tex skicka samtliga request till index.
edit. För att svara på din fråga. RewriteCond i kombination med ! tecknet kan nog vara rätt väg. Stackoverflow är din vän ![]() |
||
![]() |
![]() |
![]() |
#4 | ||
|
|||
Flitig postare
|
Tack för svaren.
@tartareandesire Jo, du kanske har rätt. Men då få av urlerna faktiskt innehåller någon slags identifierare vilken typ av data som efterfrågas kändes mer prestandavänligt att köra mängder med rewrite rules än att göra ytterligare ett databasanropp för att ta reda på vilken typ av data som är associerad med urlen och vilken databas-tabel den finns i. ![]() @Björn Jo, är inne lite på RewriteCond, men har ej listat exakt hur det löses, främst om det går att skriva något generiskt som påverkar samtliga RewriteRules. Men är ej helt insatt i ämnet. (och har givetvis googlat och stackowerflowat innan jag frågade) =) |
||
![]() |
![]() |
Svara |
|
|