Ylläpidän sivustoa WordPress-softan avulla ja olen muuttanut sivujen osoitteet parempaan muotoon .htaccessin avulla. Nyt osoitteet ovat muotoa domain.ltd/sivunnimi/ (WP:ssä osoitteet ovat oletuksena muotoa domain.ltd/index.php?p=numero).
Minulla on sivu nimeltä "esimerkit", joka sijaitsee osoitteessa domain.ltd/esimerkit/. Ongelma tulee siinä, että .htaccessin avulla on määritelty nuo WP:n osoitteet näyttämään siltä, että jokaisella sivulla olisi oma kansionsa. Jos luon oikeasti kansion domain.ltd/esimerkit/, osoitteessa domain.ltd/esimerkit/ näkyvä WordPressin sivu ei toimi, vaan tulee virheilmoitus 403.
Miten saisin homman toimimaan niin, että WordPressin sivu toimisi, vaikka kansio "esimerkit" olisi oikeastikin olemassa (ja vaikka tämän kansion alla olisi tiedostoja)? Tällä hetkellä homma toimii vain, mikäli kansiota "esimerkit" ei ole olemassa tai WP-sivun "esimerkit" osoite ei ole domain.ltd/esimerkit/.
Tässä vielä .htaccess-tiedoston koodi:
RewriteEngine On RewriteBase /sivusto/ RewriteCond %{HTTP_HOST} ^domain\.ltd RewriteRule ^(.*)$ http://www.domain.ltd/sivusto/$1 [L,R] # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase /sivusto/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /sivusto/index.php [L] </IfModule> # END WordPress
Laita sinne esimerkit kansioon oma .htaccess, jossa otat RewriteEnginen pois päältä:
RewriteEngine Off
Eipä näytä auttavan. Tulee error 403, joka lähtee vain, jos kansion /esimerkit/ tai WP-sivun "esimerkit" poistaa.
Ah, sori, luin vähän liian hätäisesti. Eli tuo ehdotukseni pitäisi toimia niin, että tuolloin se näyttää tuon esimerkit-hakemiston sisällön, eikä yritä näyttää WP:n sivua. Mutta tosiaan tätähän et hakenut. Täytyypä vähän testailla jos tuohon joku kikka olisi...
Entäpä jos vain käyttäisit tuossa rewrite:llä luodussa osotteessa jotain muuta välimerkkiä kuin /-merkkiä erottamaan sivuja?
Aihe on jo aika vanha, joten et voi enää vastata siihen.