Jak vypnout routování pro aplikaci 3. strany?

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Tomáš Votruba
Moderator | 1114
+
0
-

Mám třeba dokumentaci vygenerovanou Apigenem a chci ji otevřít v rámci projektu v Nette.

<a href="{$basePath}/api/index.html" target="_blank">Dokumentace</a>

Při otevření mi Nette adresu zprzní asi takto: %22%22/api/index%3E.html
Sic při hoveru odkazu je tam adresa správná a také prostředním klikem do nového okna proběhne vše v pořádku.

Jde nějak vypnout převod url pomocí definice routy?

nanuqcz
Člen | 822
+
0
-

Možná teď budu trochu mimo. Ale pokud ti to funguje do nového panelu, ale ne do stávajícího, tak s tím Nette podle mě nebude mít nic společného. Spíš nějaký problém prohlížeče? Zkoušel jsi to ve více prohlížečích, jestli se to projevuje všude stejně?

Editoval nanuqcz (7. 10. 2012 13:07)

Filip Procházka
Moderator | 4668
+
0
-

Pokud nepoužiješ makro {link}, tak ti na to Nette vůbec nesahá. Máš tam nějakou haluz.

Co se týče vypnutí routování, tak podsložka není nejlepší nápad. Popřemýšlel bych o subdoméně, díky které http server nebude neexistující stránky posílat na /index.php Nette aplikace.

jansfabik
Člen | 193
+
0
-

HosipLan Není potřeba vytvářet subdoménu. Stačí přidat podmínku do .htaccess, aby složku api nepřesměrovával na index.php.

nanuqcz
Člen | 822
+
0
-

Ta podmínka tam je defaultně, ne?

Filip Procházka
Moderator | 4668
+
0
-

@jansfabik: Pravda, Apache už dlouho nepoužívám :)

@nanuqcz: Ne, to jenom říká, že všechny neexistující soubory a všechny neexistující složky se mají jako requesty směřovat na /index.php.

Tomáš Votruba
Moderator | 1114
+
0
-

Sorry za zmatky. Tak jsem si nevšmil, že problém bude v zřejmě v onclick:

<a onclick="window.open('{$basePath}/api','','width=960,height=690,toolbar=no,scrollbars=no,location=no,status=no,resizable=yes,left=10,top=10'); return(false);" href="{$basePath}/api/" target="_blank">API</a>

Pomohlo neescapovat proměnnou.

<a onclick="window.open('{!$basePath}...
jansfabik
Člen | 193
+
0
-

Použij radši toto:

{$basePath} + '/api'
arron
Člen | 464
+
0
-

HosipLan wrote:
@nanuqcz: Ne, to jenom říká, že všechny neexistující soubory a všechny neexistující složky se mají jako requesty směřovat na /index.php.

Což ale znamená, že všchny existující složky a soubory tam přesměrovávat nebude :-) Takže to tam fakt je defaultně stačí něco nahrát do podsložky do wwwDir a hotovo, je to přístupné bez zásahu Nette. :-)

Tomáš Votruba
Moderator | 1114
+
0
-

@jansfabik: Zkusil jsem. Sic to funguje stejně, tak mi to zobrazí jako:

window.open(&quot;\/work\/project\/www&quot; + '/api')

Radši bych volil zároveň funkční a zároveň čitelný zápis.

arron
Člen | 464
+
0
-

Schmutzka wrote:

Stejně Ti to smrdí…používáš stenou url na dvou místech → co v tom java scriptu si to vytahnout z toho href atributu? Nebude to čistší? Zároveň by se na to pak už dala udělat nějaká obecnější a znovupoužitelná funkce :-)