Parametre v URL spôsobujú 404, na localhoste nie

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

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)

CZechBoY
Člen | 3608
+
0
-

Ajakej error haze teda Nette?

goddamnitswizzy
Člen | 3
+
0
-

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
+
0
-

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!

ali
Člen | 342
+
0
-

@goddamnitswizzy ono to bude tim, ze Xamppa mas na Windowsech a server bezi na Linuxech

CZechBoY
Člen | 3608
+
0
-

Tak si přepiš formátování šablon.
V tvém BasePresenteru překryj tuhle metodu
https://api.nette.org/…ter.php.html#…