Problem s Quickstartem – nefunguje routovani

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

Ahoj,

zkousim zakladni aplikaci Quickstartu a vypada to, ze mam problem s routovanim :(

Stranky na disku se nachazeji na E:\wwwroot\Todolist
Pristupuji na ne pres http://127.0.0.1/…cument_root/

V bootstrapu jsem si prenastavil:

<?php
// Step 4: Setup application router
$router = $application->getRouter();

$router[] = new Route('index.php', array(
	'presenter' => 'Todolist',
	'action' => 'show',
), Route::ONE_WAY);

$router[] = new Route('<presenter>/<action>/<id>', array(
	'presenter' => 'Todolist',
	'action' => 'show',
	'id' => NULL,
));
?>

Takze kdyz zadam http://127.0.0.1/…cument_root/ , tak se normalne dostanu na action show.
Stejne tak pokud v bootstrapu zmenim action na ‚add‘, tak neni problem.

Uz mi ale nefunguje prepinani mezi akcemi v aplikaci.
http://127.0.0.1/…dolist/show/
a
http://127.0.0.1/…odolist/add/
mi nenalezne :(

Zkousel jsem i menit .htaccess podle tohoto: https://forum.nette.org/…http-request

ale bez uspechu.

Diky vsem za rady.

KONY>

Mikulas Dite
Člen | 756
+
0
-

Máš špatnou rewrite base, hoď ho .htaccess

RewriteBase \Todolist

(přepiš tim tu původní).

KONY
Člen | 16
+
0
-

.htaccess v adresari document_root mam takovy,ale nefacha to :(

# disable directory listing
Options -Indexes

# configure PHP
# <IfModule mod_php5.c>
# php_flag magic_quotes_gpc off
# php_flag register_globals off
# php_flag zend.ze1_compatibility_mode off
# </IfModule>

# mod_rewrite
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase \Todolist

# 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>

Mikulas Dite
Člen | 756
+
0
-

Je dost možné, že tvůj localhost server má zakázané přepisování nastavení, hledej

<Directory />
AllowOverride None

a přepiš na

AllowOverride All

Protože má tohle hodně složek, změň to pouze u todolist aliasové složky.

\\Edit: můžeš to otestovat tim, že do .htaccess vložíš syntax error, pokud se ti nevrátí error 500, tak je to tim.

Editoval Mikulas Dite (30. 3. 2010 9:44)

KONY
Člen | 16
+
0
-

V httpd.conf jsem zmenil (pro jistotu) vsechny AllowOverride na All.
Ale nepomohlo to.

Kdyz jsem do .htaccess napsal nesmysly, tak to vyhodilo Internal Server Error.

Cim to jeste muze byt? Diky za trpelivost.

KONY>

Mikulas Dite
Člen | 756
+
0
-

Možná to apache překousne, ale možná je to tim že sem si poplet lomítka. Správně je

RewriteBase /Todolist

Každopádně – ten htaccess máš v document_rootu, nebo v projektovém rootu?

Editoval Mikulas Dite (30. 3. 2010 10:11)

KONY
Člen | 16
+
0
-

Ja jsem zkousel obe lomitka, ale zadna zmena.
.htaccess mam v document_root, ale ted jsem ho pridal i do projektoveho rootu a rovnez nic :(

Mam zkusit preinstalovat Apache a PHP?

KONY>

Ondřej Mirtes
Člen | 1536
+
0
-

RewriteBase by měl být:

/Todolist/document_root
KONY
Člen | 16
+
0
-

Bohuzel, ani toto nepomohlo :(

SyXcz
Člen | 75
+
0
-

Já používam na localhostu XAMPP server a nikdy žádnej problém… možná bych zkusil reinstall, je to rychlý na pár kliknutí

22
Člen | 1478
+
0
-

co mod_rewrite..funguje?

KONY
Člen | 16
+
0
-

Tak jsem nakonec preinstaloval PHP, Apache a MySQL (doted nainstalovano vsechno zvlast). Zkousel jsem XAMPP, ale ten ma na Vistach problemy se spustenim Apache (alespon u me a spousty dalsich, co jsem se docetl na internetu), tak jsem vyzkousel WAMP. Ten jsem rozjel v pohode. Ale porad to nejelo jak ma.

Zkousel jsem vsechno mozne a nakonec se to rozjelo:

  1. Jsem vul a v URL jsem nemel presne mala a velka pismena.
  2. V .htaccess jsem radek RewriteBase zakomentoval.

Diky moc vsem za pomoc a za trpelivost.

KONY>

raia
Člen | 25
+
0
-

KONY napsal(a):
Zkousel jsem XAMPP, ale ten ma na Vistach problemy se spustenim Apache (alespon u me a spousty dalsich, co jsem se docetl na internetu)
KONY>

Zkus před spuštěním Apache vypnout Skype ;-)

KONY
Člen | 16
+
0
-

raia napsal(a):

Zkus před spuštěním Apache vypnout Skype ;-)

JJ, to jsem zkousel a chvili to i fungovalo, ale pak nepomohlo ani to.