Új hozzászólás Aktív témák

  • Taci

    addikt

    Sziasztok!

    .htaccess-hez ért valaki esetleg közületek?

    Már egy ideje elakadtam vele, de eddig volt más amit csinálni kellett - most viszont már hátráltat, hogy nem megy.

    Azt szeretném elérni, hogy
    - a www.pelda.hu/site1, .../site2, .../site30
    és a
    www.pelda.hu/category1, .../category2, .../category50
    URL-ekre a szerveren lévő tartalmat hozza be, tehát simán nyissa meg az oldalakat,
    (ezzel ugye nincs teendő a fájlban, de a "feladat" talán így jobban érthető)

    - viszont amikor van site és category is (ebben a sorrendben), pl.:
    www.pelda.hu/site1/category1, .../site1/category50, .../site30/category50 stb.
    akkor az irányítson át a főoldalra (index.html).

    (Minden mást ami nem valid, futtasson 404-re.)

    Csak egy olyan megoldásig sikerült eljutni, ami a .../site, illetve a .../site/category válozatokat (úgy ahogy) jól kezeli (de nem tökéletesen azokat sem - pl. ha / van az url végén (pl. www.pelda.hu/site1/), akkor azt hibásnak veszi, és 404-re dob).

    DirectoryIndex index.html
    RewriteEngine On
    # If the request is not of the form
    # "/site" or "/site/category" then stop here
    RewriteRule !^[^/.]+(/[^/.]+)?$ - [L]
    # Validate "site" (first path segment)
    RewriteCond $1 !=site1
    RewriteCond $1 !=site2
    RewriteCond $1 !=site3
    # etc.
    RewriteCond $1 !=site30
    RewriteRule ^([^/.]+) - [R=404]
    # Validate "category" (second path segment)
    RewriteCond $1 !=category1
    RewriteCond $1 !=category2
    RewriteCond $1 !=category3
    # etc.
    RewriteCond $1 !=category50
    RewriteRule ^[^/.]+/([^/.]+)$ - [R=404]
    # Front-controller
    RewriteRule . index.html [L]

    Ért valaki közületek annyira ehhez, hogy tudna ebben segíteni?
    Köszönöm.

    ----------
    Esetleg egy ilyen egyszerű megoldás? Még csak most leltem rá:
    RewriteRule ^/?(site1|site2|site3)/(category1|category2|category3)/?$ index.html [L]

Új hozzászólás Aktív témák