FAQ |
Kalender |
![]() |
#1 | ||
|
|||
Nykomling
|
Jag har fått hjälp av kille på nätet med att bygga en ordliste-sajt. På sajten finns det länkar (som leder till PHP-filer) som ser ut så här:
http://www.test.se/add/ (filen 'add.php' finns på servern) http://www.test.se/browse/letter/k (filen 'browse.php' finns på servern) Utvecklaren ger rådet att jag skapar en htaccess-fil och han gissar att den skall se ut något i stil med: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}\.php -f RewriteRule ^(.*)$ $1.php Tyvärr funkar detta inte. Får ett 403-meddelande: "You don't have permission to access /add/ on this server" Jag mailade då tillbaka och får detta svar: "Jag har inte ngn separat .htaccess-fil utan har det i en apacheconfigfil. I den finns bara ”RewriteEngine on” (samt, såklart, massa övriga inställningar för apache. Det är det enda jag kan se som har med mod_rewrite att göra iaf). Du kan ju alltid testa att bara ha det i .htaccessfilen och se hur det går?" Testade då att bara ha ”RewriteEngine on” i filen, men får samma fel. Hoppas att någon med kunskap om 'mod_rewrite' kan hjälpa mig. |
||
![]() |
![]() |
![]() |
#2 | ||
|
|||
Medlem
|
Testa:
Options +FollowSymlinks RewriteEngine on RewriteRule ^/start/$ index.php [NC,L] RewriteRule ^/medlemmar/$ medlemmar.php [NC,L] O.s.v, ser du sambandet? |
||
![]() |
![]() |
![]() |
#3 | ||
|
|||
Klarade millennium-buggen
|
Du gör lite dubbelt arbete med din config.
Du talar inte om att den skall hantera kataloger som en fil, bara att filer som är *.php skall hanteras. Kod:
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^/([A-Za-z0-9_-]+)/([A-Za-z0-9_-]+)/([A-Za-z0-9_-]+)/$ /$1_$2_$3.php [NC,L] RewriteRule ^/([A-Za-z0-9_-]+)/([A-Za-z0-9_-]+)/$ /$1_$2.php [NC,L] RewriteRule ^/([A-Za-z0-9_-]+)/$ /$1.php [NC,L] </IfModule> |
||
![]() |
![]() |
![]() |
#4 | ||
|
|||
Nykomling
|
Tack för snabba svar. Har testat utan större framgång:
1) Testat yehspers variant: RewriteEngine on RewriteRule ^/add/$ add.php [NC,L] 2) Och Jonas variant. Där testade jag även att ändra 'RewriteBase /' till 'RewriteBase /forkortningar.se/' eftersom koden ligger på webbhotellet Levonline där jag har flera olika domäner under public_html Här ligger den fungerande koden som killen knackat ihop: http://abbr.orthogon.se/ Här är den på Levonline http://www.forkortningar.se/ Testar man http://www.forkortningar.se/add.php så visas rätt sida. Gör jag något annat fel? - Jag FTP:ar med ws_ftp i ASCII-format. - Jag Chmod:ar inte om filen. Jag vet att Rewrite funkar hos Levonline eftersom jag gjort andra Rewrite-tester som funkar. |
||
![]() |
![]() |
![]() |
#5 | ||
|
|||
Medlem
|
testade precis det här och det fungerade perfekt
Citat:
|
||
![]() |
![]() |
![]() |
#6 | ||
|
|||
Nykomling
|
Testade även greenio.se förslag, men får fortfarande:
"You don't have permission to access /add/ on this server." Det vore ju bra om åtminstone: http://www.forkortningar.se/add/ kunde fungera. Då skulle man kunna gå vidare till nästa steg i felsökningen. |
||
![]() |
![]() |
![]() |
#7 | ||
|
|||
Medlem
|
Citat:
|
||
![]() |
![]() |
![]() |
#8 | ||
|
|||
Nykomling
|
Här är ett fungerande exempel --> http://www.forkortningar.se/mime_test/page/software (testa byta ut 'software'):
Kod:
RewriteEngine on RewriteRule ^page/([^/\.]+)/?$ index.php?page=$1 [L] Kod:
<html> <head> <title>Second mod_rewrite example</title> </head> <body> <p> The requested page was: <?php echo $_GET['page']; ?> </p> </body> </html> |
||
![]() |
![]() |
![]() |
#9 | ||
|
|||
Klarade millennium-buggen
|
Lägg inte .htaccess i public_html utan i public_html/forkortningar.se/
public_html körs troligen inte .htaccess i. |
||
![]() |
![]() |
![]() |
#10 | ||
|
|||
Medlem
|
Hmm... det är inte så att de andra exemplen också fungerar i den undermapp du testar i nu?
Jag testade koden från din ursprungliga post också av intresse, och den funkar, klarar bara inte av ett avslutande slash eller några extra argument, men för forkortningar.se/add så ska den funka om mod rewrite funkar. |
||
![]() |
![]() |
Svara |
|
|