stranka nenacte css (spatne nastaveny index.php?) + nastaveni prav app
- bo
- Člen | 16
Ahoj vsichni, porad nemuzu nastavit stranku, aby na ni byl pristup bez www (domena.cz a ne domena.cz/www). Napadlo me, ze mam spatne nastaveny index.php, ktery jsem dal primo do rootu projektu – do stejne slozky jako libs, app, log atd. Ve stejne slozce je i .htaccess – takze neni v www jak je preddefinovane v sandboxu. Zkusite mi nekdo poradit?
<?php
index.php
------------------------
// absolute filesystem path to this web root
define('WWW_DIR', __DIR__ . '/www');
// absolute filesystem path to the application root
define('APP_DIR', WWW_DIR . '/../app');
// absolute filesystem path to the libraries
define('LIBS_DIR', WWW_DIR . '/../libs');
// uncomment this line if you must temporarily take down your site for maintenance
//require APP_DIR . '/FrontModule/templates/maintenance.phtml';
//upload folder
//define('UP_DIR', WWW_DIR . '/../upload');
// load bootstrap file
require APP_DIR . '/bootstrap.php';
?>
a .htaccess:
<?php
# disable directory listing
Options -Indexes
# mod_rewrite
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
# 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>
?>
Zajimave je, ze domena.cz/www mi funguje, jak by mela, ale domena.cz funguje bez css – to mi zni jako spatne definovany WWW_DIR, ale nevim, co je spatne.
Dalsi dotaz – jak na mam na linuxovem serveru nastavit prava, aby se app skrylo, ale zustalo dostupne pro aplikaci? chmod 0755 je nejnizsi, ktere funguje, ale porad je slozka app viditelna (v pripade, ze se to neosetri index.php v rootu projektu)
Diky moc,
Ondra
- Michal Vyšinský
- Člen | 608
Ahoj,
zkus se podívat do zdrojového kódu v prohlížeči, zda cesty souhlasí.
Jestli ano, tak zkontroluj práva k css souborům.
Jinak přístupu do app by měl zabránit .htaccess s tímto obsahem:
Order Allow,Deny
Deny from all
Vlož jej jen do té složky app – resp. do složek, které chceš skrýt.
Editoval CherryBoss (24. 5. 2012 14:03)
- Martin Bubík
- Člen | 13
pokud pouzivas klasicky sandbox kde index.php je v adresari www, musis na serveru nastavit DocumentRoot na „domena.cz/www“.
Prava nastavovat nemusis, pokud nastavis DocumentRoot do adresare www tak ostatni systemove slozky budou nedostupne a navic kazda ma vlastni .htaccess kde je ten pristup k systemovym slozkam defaultne zakazan.
- Michal Vyšinský
- Člen | 608
Jak jsem psal, do složky app vlož .htaccess s tímto obsahem:
Order Allow,Deny
Deny from all
Pokud se zkusíš přes url dostat do té složky, tak by ti to mělo vyhodit 403 Forbidden (normálně Apachovskou chybu, ne laděnku :) )