У меня есть такая структура в моем веб-проекте:
domain.com
-index.php
frontend
.htaccess
-index.php
-home.php
-404.php
-new_site.php
account
-index.php
-new_site.php
backend
-backendfiles.php
-etc..
Мои файлы,
domain.com/index.php:
include ( 'frontend/index.php' );
domain.com/frontend/.htaccess:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?values=$1 [L]
</IfModule>
domain.com/frontend/index.php:
$str = $_GET[ 'values' ];
$str = str_replace( '../', '', $str );
$vars = explode( '/', $str );
$path = '';
foreach( $vars as $var ) {
$p = strpos( $var, ':' );
if( $p == 0 ) {
$path .= $var . '/';
continue;
}
$_GET[ sub_str( $var, 0, $p ) ] = sub_str( $var, $p + 1 );
}
if( $path ) {
// File
$file = $path . '.php';
if( file_exists( $file ) ) {
include( $file );
exit;
}
// Direction
$file = $path . '/index.php';
if( file_exists( $file ) ) {
include( $file );
exit;
}
// Page not found
// include( '404.php' );
}
// Default Page
include( 'home.php' );
Что я попробовал …
Когда я звоню:
domain.com
=> загрузить контент с domain.com/frontend/home.php => работает
Когда я звоню:
domain.com/new_site
=> загрузка контента с domain.com/frontend/new_site.php => не работает
Когда я звоню:
domain.com/account
=> загрузить контент с domain.com/frontend/account/index.php => не работает
Когда я звоню:
domain.com/account/new_site
=> загрузка контента с domain.com/frontend/account/new_site.php => не работает
Кто-нибудь может мне помочь с этим?
Моя структура хороша или я должен изменить это?
Привет и спасибо!
Задача ещё не решена.
Других решений пока нет …