Sziasztok, van egy kis gondom egy htacces fajlal. A projekt a kovetkezokeppen nez ki:
projekt/
projekt/web/
projekt/web/images/
projekt/web/site/
Azt szeretnem elerni hogy ha pl. egy ilyen keres jon projekt/site/oldal.php
akkor ezt ertelmezze a szerver projekt/web/site/oldal.php
-nak. Ez meg is van ha a keres a site/
-ra jon, de ha a keres az images-re vonatkozik (projekt/images/kep.png
) akkor 500-as http error kapok.
A .htaccess file a kovetkezokeppen nez ki:
Options +FollowSymlinks
RewriteEngine on
RewriteBase /
RewriteRule ^(.*)$ projekt/web/$1
- 7309 megtekintés
Hozzászólások
Rule ele tedd be ezt:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
Ezzel letezo konyvar vagy fajl eseten nem csinal rewrite-ot.
--
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!
- A hozzászóláshoz be kell jelentkezni
Koszonom szepen, tokeletesen mukodik. :-)
- A hozzászóláshoz be kell jelentkezni
Zend Framework? :)
- A hozzászóláshoz be kell jelentkezni
Sziasztok
Röpke kérdésemért nem akartam új topikot nyitni.
Hogyan lehet megoldani azt, hogy egy nyitó oldal jöjjön be, ha http://domain.hu -t írnak be, majd ne csináljon semmit, ha http://domain.hu/valami az URL?
Az oldal egyébként egy druapl.
Ilyesmivel próbálkozom sikertelenül:
RewriteRule !/^$ http://domain.hu/index.html [L]
Néha jól működik, de szerintem csak a böngésző cache szivat.
Az index.html tartalma egy linkelt kép, ami az index.php-ra visz. A DirectoryIndex index.php -ra van beállítva.
Előre is köszönöm a segítséget.
- A hozzászóláshoz be kell jelentkezni
Senki többet?
- A hozzászóláshoz be kell jelentkezni
Nem ertem a kerdest sem.
RewriteRule ^/?$ http://domain.hu/nyito-oldal [L,QSA]
A te kodod meg... nem is tudom, mit csinal, a !/^$ ebben a formaban nem ervenyes Rewrite regex. Ha !^/$ akarna lenni, akkor viszont meg azt csinalna, hogy ha valaki nem a gyokeret akarja elerni, akkor dobja el az index.html -re. Ebben az a csapda, hogy ez konnyen okozhat infinite redirect loop-ot.
Legyszi adj teljes konfigot.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
Nincs konfig, kérdés van meg sajna sikertelen próbálkozás.
Van egy drupal site, kellene nyitó lap, ahol egy kanyi nagy logó van, ráírva: belépés. Ennyi:)
Logikus gondolat: irányítsa át a kérést index.html-re, HA a kérésben csak a domain szerepel.
oldalam.hu/ -> oldalam.hu/index.html
Itt pedig ne nyúljon bele:
oldalam.hu/?q=node/1
Ez nem jön össze. Játszottam a rewriteconddal, directoryindex-szel, eddig sikertelenül.
Drupalon keresztül is meg lehetne oldani menü, fejléc, stb blokkok nélküli oldal létrehozásával, de nem lenne az igazi, mert elvileg akkor azt kellene alapértelmezett kezdő node-nak megjelölni.
- A hozzászóláshoz be kell jelentkezni
Megteszed, hogy kiprobalod azt a rewrite-t, amit en irtam? Nekem ez megoldotta a problemat (hasonlo igenyem volt, csak mas indokokkal).
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
Nem lenne egyszerubb ha
DirectoryIndex index.html index.php
sort vezetned be?
A belepes meg mutasson a oldalam.hu/index.php -re
A ruleok meg maradhatnak ahogy vannak...
- A hozzászóláshoz be kell jelentkezni
Ezen indultam el én is, de felvet egy másik problémát: A drupal egyem a szivét nem azt linkeli, hogy /index.php?q=node/1 hanem azt, hogy /?q=node/1
Így a / első indexének átadja, azaz index.html?q=node/1
Ami szívás.
Nem tudom át lehet-e ütni valahol a drupalban ezt a baseURL-t?
- A hozzászóláshoz be kell jelentkezni
nem uti az sehol a rewriteot, mert a rewriteban index.php -nak adja at.
es a masik, hogy hasznalj rovid cimeket. /q?=node/1 helyett /node/1 -et
- A hozzászóláshoz be kell jelentkezni
"nem uti az sehol a rewriteot, mert a rewriteban index.php -nak adja at."
Logikus lenne, de nem így működik.
Az directoryindex miatt a \q=valamit rögtön az index.html-nek adja, azt pedig próbáld ki, index.html?q=valami -re is ugyanúgy index.html jön be.
Ennél fogva mindig a nyitó oldal fog megjelenni a linkekre.
A rewrite szabály itt még hozzá sem szólhat, a directoryindex hamarabb lerendezi.
Az lenne a megoldás, ha a drupal rávehető lenne, hogy írja ki rendesen: /index.php?q=valami.
Nem találtam ilyet hirtelen, úhogy megoldottam az index.php első sorai közé szúrt utasítással:
if( $_SERVER['REQUEST_URI'] == "/" )header( 'Location: http://domainem.hu/index.html' ) ;
Lehet, hogy paraszt módszer, de ezzel megoldva.
Köszönöm mindenkinek aki próbált segíteni a megoldásban.
- A hozzászóláshoz be kell jelentkezni
Azert az index.php modositgatasa kezlecsapasos dijazasban szokott reszesulni, meg a ganyolok koreben is.
Ha mar, akkor tedd a settings.php -be. Azt legalabb nem csapja felul az elso frissites.
Ja es a header() utan ne felejts el exit() -alni.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni