Zend .htaccess probléma?
Sziasztok!
Szeretnék egy óriási segítséget kérni: Zend Framework-ben írok egy miniadmint, és eljutottam ahhoz a részhez, hogy szükségem lenne egy wysiwyg szerkesztőre (tinyMce-t választottam). Be is raktam az index.php-vel egy szinten lévő js/tiny_mce könyvtárba. Behúztam, tök jó, megjelent. Szerettem volna beilleszteni képet, és ehhez a tinyMce editor menüsorán a kép beillesztése gombra kattintottam (még alap tinyMce-m van, nem telepítettem fel hozzá semmilyen kiegészítőt). Ekkor jött fel egy popup ablak, és egy üzenet, hogy letöltöm e az image.htm fájlt. Elméletileg ennek le kéne futni, nem pedig letöltődnie. (ez a fájl a [public_html]/js/tiny_mce/plugins/adimage könyvtárban van).
Elkezdtem agyalni, mi lehet a probléma, és oda jutottam, hogy biztos a .htaccess-ben van valami gebasz. Megnéztem, Zend-ék által ajánlott alap .htaccess fájlom van, a következő tartalommal:
Mivel annyira - leginkább semennyire - nem értek a .htaccess-es dolgokhoz, elkezdtem kutakodni, mit kéne módosítanom, hogy szeresse. Rengeteg dolgot találtam, próbálkoztam, de mégsem működött semmi. Aztán megpróbáltam direktbe beírni a böngészőbe a file-t a teljes útvonallal, de arra is ugyanazt küldte. Aztán egy időre átneveztem a .htaccess fájlt .htaccessx-re, hogy megpróbáljam a nélkül, de úgy sem működöt! :( Viszont megpróbáltam .js fájlokat beadni url-be, működött .htaccess-el és nélküle is.
Fizetős tárhelyet használok, nem lokált és nem ingyeneset. Igazából a szolgáltatóval sosem volt problémám.
Valakinek van ötlete, hogy mi a frászkarikát nézek be, mielőtt a maradék hajállományomat is kitépem? :)
Előre is köszönök minden hozzászólást!
■ Szeretnék egy óriási segítséget kérni: Zend Framework-ben írok egy miniadmint, és eljutottam ahhoz a részhez, hogy szükségem lenne egy wysiwyg szerkesztőre (tinyMce-t választottam). Be is raktam az index.php-vel egy szinten lévő js/tiny_mce könyvtárba. Behúztam, tök jó, megjelent. Szerettem volna beilleszteni képet, és ehhez a tinyMce editor menüsorán a kép beillesztése gombra kattintottam (még alap tinyMce-m van, nem telepítettem fel hozzá semmilyen kiegészítőt). Ekkor jött fel egy popup ablak, és egy üzenet, hogy letöltöm e az image.htm fájlt. Elméletileg ennek le kéne futni, nem pedig letöltődnie. (ez a fájl a [public_html]/js/tiny_mce/plugins/adimage könyvtárban van).
Elkezdtem agyalni, mi lehet a probléma, és oda jutottam, hogy biztos a .htaccess-ben van valami gebasz. Megnéztem, Zend-ék által ajánlott alap .htaccess fájlom van, a következő tartalommal:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
Mivel annyira - leginkább semennyire - nem értek a .htaccess-es dolgokhoz, elkezdtem kutakodni, mit kéne módosítanom, hogy szeresse. Rengeteg dolgot találtam, próbálkoztam, de mégsem működött semmi. Aztán megpróbáltam direktbe beírni a böngészőbe a file-t a teljes útvonallal, de arra is ugyanazt küldte. Aztán egy időre átneveztem a .htaccess fájlt .htaccessx-re, hogy megpróbáljam a nélkül, de úgy sem működöt! :( Viszont megpróbáltam .js fájlokat beadni url-be, működött .htaccess-el és nélküle is.
Fizetős tárhelyet használok, nem lokált és nem ingyeneset. Igazából a szolgáltatóval sosem volt problémám.
Valakinek van ötlete, hogy mi a frászkarikát nézek be, mielőtt a maradék hajállományomat is kitépem? :)
Előre is köszönök minden hozzászólást!
Akkor is ez történik, ha
Más htm file-al is ugyanezt csinálja? És a html file-okkal?
(Az adimage ugye csak elírás, mert advimage a plugin neve?)
Igen, akkor is ugyanezt
Még annyit kell tudni, amit előbb nem írtam, hogy ez aldomain-en van. aldomain.domain.hu/... Úgy van megcsinálva, hogy a public_html könyvtárra közevetlenül rá van irányítva egy domain, és a public_html-ben van egy /aldomain könyvtár, ami a fent említett formában hívható.
Azt is megpróbáltam már, hogy a public_html közvetlen könyvtárból is eltávolítottam a .htaccess-t - annak ellenére, hogy sejtem, hogy semmi köze nincs hozzá -, de úgy sem.
Igen, advimage a plugin neve, csak sikerült elírnom... :)
Ha zend nélkül teszel be
Amúgy nekem is problémáim vannak a zend + htaccess-el. Olyan a tárhelyem, hogy nincs httpd.conf hozzáférésem, aztán a document root-ban van a projekt, és onnan kéne átirányítanom a public mappára. A gond csak annyi, hogyha átirányítom, akkor mindig a projekt 404-es oldala jön fel. Szóval a route környékét érdemes lenne megnézni sztem neked meg nekem is, mert ott lehetnek súlyos gondok...
Próbáld ki enélkül a sor nélkül:
A -s az regular file with size, na most nem tudom mi a különbség a -f (regular file) és eközött? Egyébként meg úgy szokták, hogy !-f, és akkor egy conditionnel el lehet intézni, nem kell három bele.
Nekem is olyan a tárhelyem,
Megpróbáltam, amit írtál, mindkét dolgot:
- kivettem a -s részt. Ekkor megjött az oldala, de a Firebug írta, hogy nem tudja behúzni a tiny_mce.js-t. Úgyhogy ment vissza.
- a RewriteCond-ba a három sor helyett !-f -et adtam, de nagyon nem szerette, 404-et kaptam. (Nem lehet, hogy ezért kapsz 404-et? Próbáld ki az én .htaccess-emmel, hátha menni fog).
Azt írod, hogy "a document root-ban van a projekt, és onnan kéne átirányítanom a public mappára". Átirányítás alatt nem tudom mire gondolsz, leírom hogy én hogy építem fel a struktúrám, hátha tudok valamiben segíteni:
--- Applications
--- --- Projekt1/...
--- --- Projekt2/...
--- --- ...
--- Core
--- --- Zend/...
--- --- Projekt1/...
--- --- Projekt2/...
--- --- ...
--- public_html
--- --- Projekt1
--- --- --- js/...
--- --- --- css/...
--- --- --- images/...
--- --- --- index.php
--- --- --- .htaccess (a barátom... :) )
--- --- Projekt2
--- --- --- ...
A public_html-ben a Projekt1-re húzok mindig egy aldomaint, és úgy futtatom az alkalmazást. Így elméletileg nem szabadna összeakadnom semmivel.
Egyébként az én problémámra megtaláltam a megoldást, hamarosan publikálom! :)
Na nekem közben megoldódott a
HTTP fejlécek
Ezen a címen -
Date: Fri, 08 Jul 2011 17:46:37 GMT
Server: Apache/2.2.19
Last-Modified: Tue, 31 May 2011 18:05:07 GMT
ETag: "984040c-2f36-4a4963e78dac0"
Accept-Ranges: bytes
Content-Length: 12086
Connection: close
Content-Type: application/x-httpd-php
Sajnos nem lettem okosabb tőle. :( Te látsz benne valamit? Lehet hogy az application/x-http-php a probléma?
application/x-httpd-php
Content-Type
-naktext/html
-nek kellene lennie.Ok, köszönöm! Tudsz valami
Lehet
.htaccess
fájlt, ami létezik a kérdéses útvonalig eljutva, valamint megnézni, hogy ha máshova raksz egy.htm
illetve.html
fájlt, az hogyan viselkedik, ugyanis lehet valami globális beállítás (httpd konfigurációs fájlokban). AzAddType
,SetHandler
ésAddHandler
direktívákat kellene keresni.Lehetséges, hogy a php
Töltsd le a html-t, hogy benne van e a teljes tartalom, vagy üres e a fájl?
Srácok! Köszönöm szépen a
Köszönöm szépen a segítséget, úgy néz ki megoldódott a problémám. Nem teljesen értem, hogy miért ez lehet (lett) a megoldás - szerveres dolgokban nincs nagy tapasztalatom, az tény -, de publikálom, hátha valaki egyszer elmagyarázza.
Tehát összefoglalva:
Volt egy Zend-es projektem egy olyan tárhelyen, ahol több Zend-es és egyéb cuccom volt (weboldalak, joomla, wordpress stb). A projekt egy aldomain-ra lett rákötve, tehát elméletileg szeparálva a többi cucctól.
Volt a .htaccess-em (Zend-ék által javasolt alap) az aldomain könyvtárában:
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
Behúztam egy tiny_mce-t, ami működött, de a popup ablakban a .htm fájlokat nem ismerte fel, le akarta mindig tölteni. Meg lett vizsgálva a http header response, amiben volt egy feltűnő sor:
Aztán kaptam egy ötletet, hogy nézzem meg, hogy hol és merre van még .htaccess fájl, mert az bekeverhet.
És NYERT!
A fődomain public_html könyvtárában volt egy könyvtárban joomla telepítve (a maga kis .htaccess fájlaival...). Ezt letöröltem, és azóta nem akarja letölteni a .htm-eket, hanem lefuttatja... :) Ámen.