Autor | Zpráva | ||
---|---|---|---|
Tonny Profil * |
#1 · Zasláno: 6. 5. 2013, 20:22:22
Ahoj,
v souboru .htaccess mám tento obsah: RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?url=$1 [L,QSA] pomocí toho vytvářím "pěkné url". problém nastvává ve chvíly, kdy chci použít například tuto ajaxovou funkci: function contentAjax(hodnota){ var xmlhttp; if(window.XMLHttpRequest){xmlhttp=new XMLHttpRequest();} else{xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");} xmlhttp.onreadystatechange=function(){ if(xmlhttp.readyState==4&&xmlhttp.status==200){document.getElementById("obsah").innerHTML=xmlhttp.responseText;} } xmlhttp.open("GET","cesta k souboru(zkoušel jsem relativní i absolutní)",true); xmlhttp.send(); } stane se to, že, do divu (obsah) se načte celá stránka, nakteré zrovna jsem a ne výsledek skriptu na který "odkazuji" Posím, nevíte někdo co s tím? |
||
Davex Profil |
Za předpokladu, že je cesta ke skriptu správně a vede k existujícímu souboru, by toto přepisovací pravidlo nemělo mít vliv na obsah načítaný AJAXem. Příčina bude pravděpodobně v něčem jiném.
|
||
Tonny Profil * |
#3 · Zasláno: 7. 5. 2013, 16:06:55
Cesta je na 100% správně, když adresu zkopíruji do prohlížeče, zobrazí se mi výsledek.
Když jsem tu stejnou ajaxovou funkci používal na webu, kde není url měněna pomocí přepisovacího pravidla, tak fungovala správně :( |
||
Joker Profil |
#4 · Zasláno: 7. 5. 2013, 17:03:01
Tonny:
Stejně jako Davex bych řekl, že příčina bude jinde, než v .htaccess. Co by šlo ověřit: • Jaký je výsledek toho XMLHTTPRequestu? (OK, 404ka, nebo něco jiného?) • Kam se na serveru jde? (Šlo by zjistit ze serverového logu, otevřít si prohlížeč a log, poslat AJAX, obnovit log a podívat se.) • Primitivní způsob ověření je změnit adresy na „GET-ové“, přejmenovat .htaccess a zkusit, jestli to začne fungovat. Když ne, bude nejspíš chyba jinde. Ještě mě napadá, že ten stav, kdy při otevření v prohlížeči se obsah objeví, ale přes AJAX nefunguje, by způsobilo i přesměrování na jinou doménu (při zadání adresy v prohlížeči se bude následovat, přes AJAX ne). Ale .htaccess z [#1] sám o sobě nevyvolá přesměrování na jinou doménu. Ale lze to prověřit otevřením té adresy třeba přes Otevřít soubor z Internetu v PSPadu. |
||
Časová prodleva: 11 let
|
0