У меня есть структура каталогов, как этот.htaccess Перенаправление, если файл существует
/ub/
/ub/img/
/ub/inc/
В основном я хочу изменить свой img
URL в это родительский каталог (ub)
,
Когда я получить доступ к http://localhost/ub/mypic.jpg
Первый , он должен проверить /ub/img/mypic.jpg
, если существует, то получите этот файл и перейдите в браузер, если нет, то просто передайте его http://localhost/ub/index.php?img=mypic.jpg
с INTERNAL REDIRECTION.
Во-вторых, index.php создаст mypic.jpg
и сохранит его до /ub/img/
, а затем передаст mypic.jpg
в браузер.
Итак, является ли файл существует, или нет, браузер будет иметь http://localhost/ub/mypic.jpg
только как URL
До сих пор, у меня есть это на моем файле .htaccess
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{DOCUMENT_ROOT}/ub/img/$1 -f
RewriteRule .+ /ub/img/$1 [L]
У меня есть 2 дня до выяснить, решение, но это не похоже на работу,
Спасибо,
EDIT:
Эй, у меня есть это, просьба к http://localhost/ub/app/file.php
уже передан index.php?uri=app/file.php
, как я ожидал,
но запрос http://localhost/ub/img/mypic.jpg
не передается index.php?uri=img/mypic.jpg
. Есть ли решение?
Options -MultiViews +FollowSymLinks
RewriteEngine On
RewriteBase /ub/
RewriteCond %{REQUEST_URI} ([^/]+)$
RewriteCond %{DOCUMENT_ROOT}ub/img/%1 -f
RewriteRule ^(.+)$ img/%1 [L]
RewriteCond %{REQUEST_URI} ([^/]+)$
RewriteCond %{DOCUMENT_ROOT}ub/inc/%1 -f
RewriteRule ^(.+)$ inc/%1 [L]
RewriteRule ^(.+)$ index.php?uri=$1 [QSA,L]
не работает ... :( –
Можете ли вы определить, где она терпит неудачу или что не работает ? Ошибка синтаксиса? Неправильная перезапись? – Ansari
ошибка внутреннего сервера –