Problem s Quickstartem – nefunguje routovani
- KONY
- Člen | 16
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
Máš špatnou rewrite base, hoď ho .htaccess
RewriteBase \Todolist
(přepiš tim tu původní).
- KONY
- Člen | 16
.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
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)
- Mikulas Dite
- Člen | 756
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
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:
- Jsem vul a v URL jsem nemel presne mala a velka pismena.
- V .htaccess jsem radek RewriteBase zakomentoval.
Diky moc vsem za pomoc a za trpelivost.
KONY>