Z ničeho nic nefunkční odkazy

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Manny7
Člen | 67
+
0
-

Dobré ráno,
dneska jsem přišel k počítači a zapnul localhost – a z ničeho nic mi nefungují odkazy. Přitom včera a předtím šlapalo vše jak má, ale teďka prostě nic. Týká se to jen projektů v Nette, ostatní projekty jedou v pohodě.

V Nette jde o komplet všechny projekty – ať už o ty, které jsem si zkusil napsat sám nebo i o stažené tutoriály (Akrabat, TodoList)… Ať kliknu prostě na cokoli, „broken link“…

Nesetkal se někdo s podobnou chybkou? Pořádně teď ani nevím, kde hledat chybu, protože do nějakého globálního nastavení Apache nebo něčeho podobného jsem se nepouštěl…

Předem děkuji za vaše tipy a rady

Editoval Manny7 (8. 8. 2010 11:24)

Lopata
Člen | 139
+
0
-

Zkoušel si restartovat Apache?

Manny7
Člen | 67
+
0
-

Lopata ano, ale nepomohlo to

hrach
Člen | 1838
+
0
-

a co znamená, že nefungují?

Manny7
Člen | 67
+
0
-

hrach ať kliknu na jakýkoli odkaz v jakémkoli projektu v Nette, dostanu „Oops! This link appears to be broken.“ …u ostatních projektů, které jsem si napsal mimo tento framework jdou v pořádku.
Problém je jen u věcí s Nette, mrknul jsem do apache logu a mám tam tohle:
[Sun Aug 08 13:22:35 2010] [error] [client 127.0.0.1] File does not exist: /var/www/TodoList/document_root/pridat-ukol, referer: http://localhost/…cument_root/

I když ten soubor samozřejmě existuje… moc nevím co s tím

EDIT: nemůže být třeba něco s mod_rewrite?
EDIT2: teď jsem zkusil příklad na ajaxy a ty fungují. Nefungují „klasické“ odkazy – ani třeba obyčejný příklad na static_web v dokumentaci

Editoval Manny7 (8. 8. 2010 13:47)

Panda
Člen | 569
+
0
-

Pokud to u ostatních projektů jede, tak bude spíš něco s .htaccess. Zkontroluj, jestli sis ho omylem neodmazal, popř. jestli je v něm správně nastavený mod_rewrite.

Manny7
Člen | 67
+
0
-

Panda právě mi bohužel nejde ani příklad na „Statický web“ v dokumentaci, kde se rewritu skoro nevyužívá (ale zkusil jsem ho i s ním, bohužel nic).
A k tomu správně nastavenému rewritu? Já jej přeci můžu jen zapnout a vypnout, ne?
Mám ubuntu a zkusil jsem si: sudo a2enmod rewrite a vypsalo mi to, že rewrite je povolen.

Panda
Člen | 569
+
0
-

I „statický web“ využívá mod_rewrite – ten se právě stará o to, aby se Ti adresa typu http://localhost/pridat-ukol přesměrovala na soubor index.php, který se postará o správné zpracování požadavku.

Můžeš ho sice jen vypnout a zapnout, ale pak taky musíš v aplikaci nastavit, že se má používat. To uděláš v souboru .htaccess v document_root:

<IfModule mod_rewrite.c>
	RewriteEngine On
	# RewriteBase /

	# front controller
	RewriteCond %{REQUEST_FILENAME} !-f
	RewriteCond %{REQUEST_FILENAME} !-d
	RewriteRule !\.(pdf|js|ico|gif|jpg|png|css|rar|zip|tar\.gz)$ index.php [L]
</IfModule>

Proto se Tě ptám, jestli v document_root webu ten soubor .htaccess máš a jestli v něm jsou příslušné direktivy.