Parametre v URL spôsobujú 404, na localhoste nie
- goddamnitswizzy
- Člen | 3
Ahojte,
Mám identický kód na localhoste (Xampp) a FTP serveri. Všetko krásne ide, okrem jednej veci – keď mám url s akýmkoľvek parametrom, na externom serveri hádže Nette 404 error.
Je to fakt divné, keďže všetky ostatné stránky aj podpriečinky fungujú správne. Okrem presenterov by všetko malo byť nastavené defaultne, s Nette som toho veľa nerobil.
http://localhost/nettefolder/www/user/edit?userId=1
funguje, ale
http://abc.com/nettefolder/www/user/edit?userId=1
nie.
Na druhej strane, http://abc.com/nettefolder/www/visits/
error
nehádže, aj keď je to tiež subfolder.
Toto je môj .htaccess pod www/:
# Apache configuration file (see httpd.apache.org/docs/2.2/mod/quickreference.html)
# disable directory listing
#Options -Indexes
# enable cool URL
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule !\.(pdf|js|ico|gif|jpg|png|css|rar|zip|tar\.gz)$ index.php [L]
<IfModule mod_env.c>
SetEnv NETTE_HTACCESS ok
</IfModule>
</IfModule>
# enable gzip compression
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css application/x-javascript text/javascript application/javascript application/json
</IfModule>
# allow combined JavaScript & CSS. Inside of script.combined.js you could use <!--#include file="script.js" -->
<IfModule mod_include.c>
<FilesMatch "\.combined\.(js|css)$">
#Options +Includes
#SetOutputFilter INCLUDES
</FilesMatch>
</IfModule>
RouterFactory:
<?php
namespace App;
use Nette;
use Nette\Application\Routers\RouteList;
use Nette\Application\Routers\Route;
class RouterFactory
{
use Nette\StaticClass;
/**
* @return Nette\Application\IRouter
*/
public static function createRouter()
{
$router = new RouteList;
$router[] = new Route('<presenter>/<action>[/<id>]', 'Homepage:default');
return $router;
}
}
Error posiela Nette, nie Apache.
Vie niekto, o čo ide?
Ďakujem za pomoc!
Editoval goddamnitswizzy (7. 12. 2016 22:42)
- goddamnitswizzy
- Člen | 3
CZechBoY napsal(a):
Ajakej error haze teda Nette?
Design/@layout.latte sa zobrazuje správne, ale namiesto blocku content je tam
Page Not Found
The page you requested could not be found. It is possible that the address is incorrect, or that the page no longer exists. Please use a search engine to find what you are looking for.
error 404
klasická 404ka.
- goddamnitswizzy
- Člen | 3
Okay, neviem, či som blbý, slepý alebo oboje, ale chyba bola zjavne v tom, že server berie URLs case-sensitive a Xampp nie. Všetky templates som začínal s veľkým písmenom (Default.latte, Edit.latte..) a zjavne sa to robiť nemá, ten zvyk som chytil v nejakom tutoriáli. Čakal som, že Nette to vadiť nebude, ale čo už.
Snáď niekto toto uvidí a nezabije 3 hodiny ako ja.
Ďakujem!
- CZechBoY
- Člen | 3608
Tak si přepiš formátování šablon.
V tvém BasePresenteru překryj tuhle metodu
https://api.nette.org/…ter.php.html#…