Routování – problém – zřejmě nastavení Apache (.htaccess), ale netuším, co je špatně
- fikus1234
- Člen | 23
Zkoušel jsem vše možné, ale nemohu rozchodit následující jednoduchý příklad.
1)
Nejprve nastaveni Apache –
v etc/apache2/sites-available/default mam nasledujici. Apache byl samozrejme
restartovan.
<Directory „/var/www/muj_adresar“>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
2)
htaccess v mem document_rootu
# 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 muj_adresar/document_root
** # zkousel jsem vse mozne jako napr. / muj_adresar, …**
# 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>
- V bootstrap.php mam nasledujici routy. Presentery mam spravne definovane – jak Personal, tak Appointment.
$router[] = new Route(‚appointment‘, array(
‚presenter‘ ⇒ ‚Appointment‘,
‚action‘ ⇒ ‚appointment‘,
), Route::ONE_WAY);
$router[] = new Route(‚personal‘, array(
‚presenter‘ ⇒ ‚Personal‘,
‚action‘ ⇒ ‚personal‘
));
$router[] = new Route('', array(
‚presenter‘ ⇒ ‚Appointment‘,
‚action‘ ⇒ ‚appointment‘
));
No a co to dela :(((
http://server/…cument_root/
najede ok – zrejme chodi route '', ktera preda ke zpracovani presenteru.
Dale to ale neslape:
http://server/…/appointment
http://server/…oot/personal
vraci
**Not Found
The requested URL /muj_adresar/document_root/personal was not found on this
server.
**
Zkousel jsem ruzne menit .htaccess, hrat si s Apache, ale nic platne.
Nevi nekdo jak na to? Myslim si, ze v tomhle pripade nebude problem v Nette,
spis nekde v nastaveni Apache.
Predem diky za jakoukoliv pomoc.
Fik