Presun aplikacie na ostry server – problem s routovanim?

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

Ahojte,

presuvam aplikaciu na ostry server a mam takyto problem:

Po zadani adresy www.ostryserver.sk ma preroutuje na www.ostryserver.sk/sk/ ale to vrati 404 not found.

Kym som to mal na dev serveri pod adresou www.devserver.sk/nazovapp/www/ tak ma tiez preroutovalo na www.devserver.sk/…vapp/www/sk/ a vsetko krasne islo.

Ked dam na ostrom serveri adresu www.ostryserver.sk/index.php/ tak to ma preroutuje na www.ostryserver.sk/index.php/sk/ kde sice web ide ale nie su nacitane css atd. lebo to berie z adresy www.ostryserver.sk/…s/screen.css

Moj Router vyzera takto:

<?php
public function createRouter() {

        $router = new RouteList();

        $router[] = new Route('<lang>/<presenter>/<action>[/<id>]', array(
            'presenter' => 'Index',
            'action' => 'default'
        ));

        $router[] = new Route('<presenter>/<action>[/<id>]', array(
            'lang' => $this->defaultLang,
            'presenter' => 'Index',
            'action' => 'default',
        ));

        return $router;
    }
?>

a htaccess vyzera takto:

<?php
# Apache configuration file (see httpd.apache.org/docs/current/mod/quickreference.html)

# disable directory listing
<IfModule mod_autoindex.c>
	Options -Indexes
</IfModule>

# enable cool URL
<IfModule mod_rewrite.c>
	RewriteEngine On
	#RewriteBase /

	# prevents files starting with dot to be viewed by browser
	RewriteRule /\.|^\. - [F]

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

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

Na dev serveri je rovnaky router aj htaccess v tom foldri kde to ide.

Co robim prosim zle? co mi chyba? nejake nastavenie na serveri alebo priamo v app? je to prva nette appka co davam von tak neviem co robim zle.

Vdaka.
Juraj

chemix
Nette Core | 1310
+
+1
-

me obcas pomaha (nevim cim to, zalezi na hostingu) ze odkomentuji direktivu „RewriteBase /“

osobne ale doporucuji si na lokalnim pocitaci zprovoznit virtualni servery (pokud jedes pod apachem) a pouzivat treba ostryserver.loc (loc = jako localhost ;-) k nemu i alias www.ostryserver.loc a nezapomenout zapsat do hosts (\etc\hosts unix, nebo na win je to win/system32/etc/drivers/hosts ±)

v apachi mam pak neco ala:

<VirtualHost *:80>
    DocumentRoot "/Sites/knowledgebase/www/
    ServerName knowledgebase.loc
	ServerAlias www.knowledgebase.loc
    ServerAlias knowledgebase.192.168.1.111.xip.io
</VirtualHost>

a na lokalni masine pak jedu web v prohlizeci : www.knowledgebase.loc a vse je defakto stejne jako na produkci (krome koncove domeny)