qualitum logo
Hjälp mig med htaccess wildcards för mappar

PHPportalen Forum Index » Webbservrar och operativsystem
Lägg ett bokmärke på hela tråden
Skapa nytt inlägg   Svara på inlägget
Visa föregående ämne :: Visa nästa ämne  
Startad av: Meddelande
pettolajnen



Medlem i: 2830 dagar
Från: Täby
Status: Offline



#720743
Inlägg Skrivet: 2012-02-19 14:43      Ämne: Hjälp mig med htaccess wildcards för mappar Citera

Jag vill att om sökvägen

/(.*1)/(.*2)/(.*3)

inte existerar så ska det vara ett alias till:

/book/$3

och om den inte existerar:

/$3

Hur skriver man detta med riktig "htaccess-kod"?

Jag är dålig på det men skulle verkligen behöva funktionaliteten. Vore jätte hjälpsamt om någon kunde visa mig hur det ska se ut.
 

_________________
http://www.websitefactory.se
Till toppen på sidan
Visa användarprofil Skicka privat meddelande Besök användarens hemsida MSN Messenger
pettolajnen



Medlem i: 2830 dagar
Från: Täby
Status: Offline



#720761
Inlägg Skrivet: 2012-02-19 22:16      Ämne: Citera

Ingen som vet hur man gör? Sad
 

_________________
http://www.websitefactory.se
Till toppen på sidan
Visa användarprofil Skicka privat meddelande Besök användarens hemsida MSN Messenger
metalboy



Medlem i: 3322 dagar
Från: Upplands Väsby
Status: Offline



#720767
Inlägg Skrivet: 2012-02-20 09:50      Ämne: Citera

Jag förstår inte riktigt vilken funktionalitet det är du är ute efter. Kan du ge ett mer konkret exempel?
 

_________________
"Det finns tre sorters lögn; vanlig lögn, förbannand lögn och statistik" - Mark Twain
Till toppen på sidan
Visa användarprofil Skicka privat meddelande
pettolajnen



Medlem i: 2830 dagar
Från: Täby
Status: Offline



#720774
Inlägg Skrivet: 2012-02-20 11:07      Ämne: Citera

Okej!

Alltså, det hela handlar ju om att jag vill snygga till webbadressen. Och då vill jag att när man besöker webbsidan på t ex adressen:

exempel.se/fotbollsvm/vm2010/ensida.php

så ska .htaccess kolla om den filen existerar på riktigt i mapp-systemet och i så fall köra den filen. Men om den inte finns, så ska den kolla om denna fil existerar istället:

exempel.se/book/ensida.php

och i så fall köra den. Men om inte den heller finns i mapp-systemet, så ska följande fil köras:

exempel.se/ensida.php

Men i adressfältet ska det alltså fortfarande hela tiden bara stå:

exempel.se/fotbollsvm/vm2010/ensida.php


Blev det klarare nu?
 

_________________
http://www.websitefactory.se
Till toppen på sidan
Visa användarprofil Skicka privat meddelande Besök användarens hemsida MSN Messenger
metalboy



Medlem i: 3322 dagar
Från: Upplands Väsby
Status: Offline



#720775
Inlägg Skrivet: 2012-02-20 11:16      Ämne: Citera

Ja då förstår jag Smile

Testa med följande:

KOD: .htaccess
1:
RewriteEngine On
2:
 
3:
RewriteCond book/$1 =-f
4:
RewriteRule .*/.*/(.*) book/$1 [L,QSA]
5:
 
6:
RewriteRule .*/.*/(.*) $1 [QSA]
 

_________________
"Det finns tre sorters lögn; vanlig lögn, förbannand lögn och statistik" - Mark Twain
Till toppen på sidan
Visa användarprofil Skicka privat meddelande
pettolajnen



Medlem i: 2830 dagar
Från: Täby
Status: Offline



#720776
Inlägg Skrivet: 2012-02-20 11:31      Ämne: Citera

Jag kan inte exakt lokalisera vad som gick snett nu. Men jag kommer in på sidan, men det visas massa felmeddelanden om en include som inte hittar sin fil.

Jag gick nu in på adress som motsvarar följande:

exempel.se/fotbollsvm/vm2010/

vilket inte existerar i mapp-systemet och då alltså ska köra filen:

exempel.se/book/

Och eftersom det finns en index.php-fil i /book så ska denna köras. Alltså exempel.se/book/index.php blir det ju egentligen...

Men vet inte vad som kan ha gått snett nu. Det verkar ju som det fungerar på ett sätt. Men en include hittar alltså inte sin fil helt plötsligt. Får följande:

Warning: include(./calendar.php) [function.include]: failed to open stream: No such file or directory in /var/www/web434/web/index.php on line 77

Warning: include(./calendar.php) [function.include]: failed to open stream: No such file or directory in /var/www/web434/web/index.php on line 77

Warning: include() [function.include]: Failed opening './calendar.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/web434/web/index.php on line 77
 

_________________
http://www.websitefactory.se
Till toppen på sidan
Visa användarprofil Skicka privat meddelande Besök användarens hemsida MSN Messenger
metalboy



Medlem i: 3322 dagar
Från: Upplands Väsby
Status: Offline



#720777
Inlägg Skrivet: 2012-02-20 11:35      Ämne: Citera

Hmm... du bör nog lägga till ett par RewriteCond förresten. Då skriver den inte om i de fall sökvägen existerar.

KOD: .htaccess
1:
RewriteEngine On
2:
 
3:
RewriteCond %{REQUEST_FILENAME} !-d
4:
RewriteCond %{REQUEST_FILENAME} !-f
5:
RewriteCond book/$1 =-f
6:
RewriteRule .*/.*/(.*) book/$1 [L,QSA]
7:
 
8:
RewriteCond %{REQUEST_FILENAME} !-d
9:
RewriteCond %{REQUEST_FILENAME} !-f
10:
RewriteRule .*/.*/(.*) $1 [QSA]



Ändra:
Sen kanske du behöver ange absoluta sökvägar i dina script om du inte gör det nu.
 

_________________
"Det finns tre sorters lögn; vanlig lögn, förbannand lögn och statistik" - Mark Twain
Till toppen på sidan
Visa användarprofil Skicka privat meddelande
pettolajnen



Medlem i: 2830 dagar
Från: Täby
Status: Offline



#720780
Inlägget är accepterad som det rätta svaret Skrivet: 2012-02-20 11:45      Ämne: Citera

Det enda som hände nu var att en bakgrundsbild kom fram som inte syntes innan. Men samma felmeddelanden står fortfarande kvar.

Så här har jag skrivit includen i koden:

include_once $_SERVER['DOCUMENT_ROOT']."/book/calendar.php";

Edit: Nej nu vet jag vad som är fel. Man kom till rootens index-sida. Alltså bara /index.php när man skulle till /book/index.php. Det är problemet. Hur löser man detta?

Edit: Tror jag lyckades lösa det själv nu faktiskt. Så här blev det:

KOD:
1:
RewriteEngine On
2:
 
3:
RewriteCond %{REQUEST_FILENAME} !-d
4:
RewriteCond %{REQUEST_FILENAME} !-f
5:
RewriteRule .*/.*/(.*) book/$1 [QSA]
6:
 
7:
RewriteCond %{REQUEST_FILENAME} !-d
8:
RewriteCond %{REQUEST_FILENAME} !-f
9:
RewriteRule .*/.*/(.*) /$1 [L,QSA]


Tusen tack för hjälpen! Smile
 

_________________
http://www.websitefactory.se
Till toppen på sidan
Visa användarprofil Skicka privat meddelande Besök användarens hemsida MSN Messenger
Visa tidigare inlägg:   
Skapa nytt inlägg   Svara på inlägget
PHPportalen Forum Index » Webbservrar och operativsystem
Hoppa till:  
Du kan inte skapa nya inlägg i det här forumet
Du kan inte svara på inlägg i det här forumet
Du kan inte ändra dina inlägg i det här forumet
Du kan inte ta bort dina inlägg i det här forumet
Du kan inte rösta i det här forumet
Du kan inte bifoga filer i detta forum
Du kan inte ladda ner filer från detta forum
Kontakta oss på adressen: info@phpportalen.net
Webbplatsen bygger i grunden på phpBB © 2001, 2002 phpBB Group

Modifieringar har senare gjorts i systemet av PHPportalen
Sid och logotypdesign skapad av Daren Jularic
qualitum logo