Загрузка статических файлов без необходимости полного URL

То, что я хочу получить и выполнить поиск в GOOGLE, а я не получил его, это как сделать файл (изображение), который находится по абсолютному пути, например: / home / user / var / www / public / assets / img / image.png

или путь относительно папки веб-проекта:

public / assets / img / image.png

При вызове из html мне не нужно писать больше, чем этот URL:

img / image.png *

Мне нужен htaccess, чтобы распознать, что статические файлы находятся в папке public / assets , но это не требует записи именно той части URL, которая обнаруживает, что папка public / assets является фиксированной BASE для обслуживания файлов

Это что у меня есть в моем HTACCESS

Options +FollowSymLinks
RewriteEngine on

Options -Indexes

RewriteCond %{DOCUMENT_ROOT}/public%{REQUEST_URI} -f
RewriteRule ^ %{DOCUMENT_ROOT}/public%{REQUEST_URI} [L]

RewriteRule ^ index.php [QSA,L]

Я был близок к тому, чтобы получить его, но он перестал работать из ниоткуда.

Буду признателен за ваш совет

1
задан 28.11.2019, 04:32
1 ответ

Уже реши это, до сих пор оно я функционирует в совершенство. я этого достиг в другом вопросе и это изменил в необходимость.

Options +FollowSymLinks
Options -Indexes
# Activamos mod_rewrite
RewriteEngine on

# Definimos la ruta base, por facilidad, una única vez
SetEnvIf RUTA_BASE ^(.*)$ RUTA_BASE=/public/assets/

# Aquí nos evitamos comprobar que sea un archivo (agrego comprobación
# para detectar también directorio) en cada conjunto de reglas
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^(.*)$ $1 [QSA,L]

# Obtenemos todo lo que vaya tras "assets/"
RewriteCond %{REQUEST_URI} /(.+)$
# Y éstos coinciden con un archivo existente..
RewriteCond %{DOCUMENT_ROOT}%{ENV:RUTA_BASE}%1 -f
# Entonces (si se cumplen todas las condiciones) redirigimos (R)
# y dejamos de evaluar el resto de reglas (L)
RewriteRule ^(.*)$ %{ENV:RUTA_BASE}%1 [L,R]

RewriteRule ^ index.php [QSA,L]
0
ответ дан 01.12.2019, 10:43

Теги

Похожие вопросы