Это будет моя Предпочтительнее структура папок для приложений Kohana под /foo
:
├─┬─ htdocs
│ └─┬─ foo
│ ├─── .htaccess
│ └─── index.php
└─┬─ kohana
├─┬─ application
│ ├─── bootstrap.php
│ └─── etc...
├─┬─ modules
│ └─── etc...
├─┬─ system
│ └─── etc...
├─── index.php
├─── install.php
└─── etc...
HTDOCS/Foo/index.php:
<?php
require '../../kohana/index.php';
HTDOCS/Foo/.htaccess:
# Turn on URL rewriting
RewriteEngine On
# Installation directory
RewriteBase /foo/
# Protect hidden files from being viewed
<Files .*>
Order Deny,Allow
Deny From All
</Files>
# Allow any files or directories that exist to be displayed directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Rewrite all other URLs to index.php/URL
RewriteRule .* index.php/$0 [PT]
В kohana/application/bootsrap.php установить 'base_url' в foo:
Kohana::init(array(
'base_url' => '/foo/',
'index_file' => NULL,
));
Если вы хотите запустить Кохана/install.php создать HTDOCS/Foo/install.php и требуют '../../kohana/install.php';
Таким образом, вы храните свои htdocs в чистоте. Если ваш живой сервер когда-либо перестанет обрабатывать файлы PHP по какой-то причине, то единственное, что люди смогут увидеть, - это требование к Kohana's index.php
.
RewriteCond для application
, modules
и system
папки не нужны.
Включение режима технического обслуживания очень просто.
Вы правильно установили 'base_url' в bootstrap.php (и' RewriteBase' в вашем .htaccess)? – kero
Можете ли вы посоветовать мне, что это должно быть? –