#.htaccess #mod-rewrite
#.htaccess #переписать мод
Вопрос:
в настоящее время я столкнулся с проблемой перенаправления для моего PHP-проекта. Мой проект имеет следующую структуру:
root
--config
--classes
--sites
--libs
--web
----assets
----index.php
--.htaccess
Основная папка — это папка «web», в которую загружается весь мой код и логика.
Возможно ли установить перенаправление в моем файле .htaccess, чтобы загрузить все содержимое из папки «/ web», не отображая его в URL?
Мой .htaccess-файл имеет следующее содержимое:
RewriteEngine On
RewriteBase /web
<Files *.php>
deny from all
</Files>
<Files "index.php">
Order Allow,Deny
Allow from all
</Files>
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/.] )/?$ ?site=$1 [QSA]
RewriteRule ^([^/.] )/([^/.] )/?$ ?site=$1amp;slug1=$2 [QSA]
RewriteRule ^([^/.] )/([^/.] )/([^/.] )/?$ ?site=$1amp;slug1=$2amp;slug2=$3 [QSA]
RewriteRule ^index.html$ / [NC,R,L]
RewriteRule ^index.php$ / [NC,R,L]
Комментарии:
1. Уверен, что это возможно. Вам нужно не перенаправление, а внутренняя перезапись. И вам, скорее всего, нужно реализовать некоторые условия в качестве исключений.
2. у вас есть пример кода для меня? я не знаком с htaccess
3. Тогда я предлагаю вам взглянуть на документацию инструмента, который вы используете. Как обычно для OpenSource, он отличного качества и поставляется с отличными примерами: httpd.apache.org/docs/current/mod/mod_rewrite.html