Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Apache-ongelma

Sivun loppuun

Lemtz81 [07.02.2007 17:12:24]

#

moro

yksi ongelma on jo pidemmän aikaa kismittäny...koitan saada apacheen rewrite sääntöä...

elikä, koitan saada seuraavaa aikaiseksi:

jos käyttäjä kirjoittaa www.saitti.fi/fi/sohva niin se muokkaisi fi ja sohvalla olevat muuttujiksi, eli kieli=fi ja paikka=sohva...Tässä sääntö mitä olen koittanu

<Directory "/var/www/html">
   RewriteEngine on
   RewriteRule   ^([a-z]+)$/^([a-z]+)$ index.php?kieli=$1&paikka=$2
</Directory>

mikähän mulla mättää ks. säännössä???

folio [07.02.2007 18:29:52]

#

Tuo säännöllinen lauseke

^([a-z]+)$/^([a-z]+)$ :

Ymmärtääkseni hattu tarkoittaa stringin alkua, dollari loppua. Eli ongelma on ts. siinä ettei urlissa voi olla kuin yksi alku ja loppu? Eli mielestäni tuo toimisi jos laitat tilalle.

^([a-z]+)/([a-z]+)$

Ja itseasiassa tuo viimeinen dollarikaan ei ole välttämätön, jolloin myös kauttaviivaan loppuvat osoitteet toimisivat (.fi/fi/sohva/)

Lemtz81 [07.02.2007 21:51:43]

#

ok

tosin vielä hieman ihmetyttää noi konffaukset.....tässä kikkailen omalla koneella noita localhostissa eikä meinaa lähteä pelittämään millään....laitoin .htaccess tiedostoon

RewriteEngine on
Options +FollowSymlinks
RewriteBase /
RewriteRule ^([a-zA-Z]+)/([a-zA-Z]+)\.html$ /index\.php?kieli=$1&paikka=$2 [L]

KOmmentteja???

folio [07.02.2007 22:36:54]

#

/index\.php?kieli=$1&paikka=$2

Tuossa on yksi ylimääräinen merkki, saat itse selvittää mikä ;)

Lemtz81 [08.02.2007 00:06:55]

#

Arrgh

nyt taitaa olla silmät ristissä ku ei pelitä vaikka mitä muuttaa....tai sitten vika on käyttäjässä :D

Lemtz81 [08.02.2007 08:42:29]

#

taistelu jatkuu...
nyt ei ymmärrä...testannu juttua sekä .htaccess tiedossa sekä httpd.conf tiedostossa mutta ei vain lähe pelittämään...

Hjälp mig

folio [08.02.2007 15:51:44]

#

RewriteEngine on

RewriteRule ^([a-zA-Z]+)/([a-zA-Z]+)\.html$ /index.php?kieli=$1&paikka=$2 [L]

Pitäisi kyllä toimia, ja jos ei niin apachen error_logista yleensä löytyy vinkkiä miksei.

Toinen vaihtoehto mitä itse olen käyttänyt on ohjata kaikki index.php:hen ja parsia siellä tarvittavat tiedot esiin esim. $server[request_uri]:sta.

Lemtz81 [11.02.2007 20:36:37]

#

Hmmm.... joo pitääpä koittaa tuota..
ihmetteln suuresti että noi ei lähde jostain syystä pelittämään.

Lemtz81 [12.02.2007 12:06:08]

#

Joo-o

elikkö pääsen siihen tilaan että saan osoitteen muodosta www.saitti.fi/fi/sohva.html muotoon www.saitti.fi/index.php?kieli=fi&paikka=sohva asetuksilla

RewriteEngine On
RewriteRule ^/([^/]*)/([^/]*) /index.php?kieli=$1&sohva=$2

mutta haluaisin vielä tuon osoitteen olevan samassa muodossa kuin tuo /fi/sohva.html ja käsittääkseni tuo flag [PT] mahdollistaa sen, mutta sen jälkeen kun lisään sen, alkaa puskemaan erroria.?????

folio [13.02.2007 14:46:42]

#

Mitä tarkoitat sillä että haluaisit osoitteen olevan samassa muodossa?

Kun osoiteriville kirjottaa www.saitti.fi/fi/sohva.html niin kyllä siellä pitäisi lukea sivun latauksen jälkeen tuo sama oli käytössä rewrite moduuli tai ei, vai ymmärsinkö nyt ihan väärin. Ja en kyllä ymmärrä miten PT-lippu liittyy millään tavalla tähän.

edit. Niin ja eihän tuo rewrite tee edes haluamaasi ohjausta. Jospa tällä toimisi:

RewriteRule ^([^/]*)/([^/]*)\.html /index.php?kieli=$1&paikka=$2

Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta