Простая структура mod_rewrite и каталога веб-сайта
-
19-09-2019 - |
Вопрос
Делаю сайт с фотоальбомами для агентов.У каждого агента есть своя папка с файлом .css.В каждом каталоге агента есть папки альбомов с index.php и .css.
/example.com/
/agent001/
agent001.css
/000005/
index.php
main.css
/photos/
aaa.jpg
bbb.jpg
/000006/
index.php
...
/agent002/
agent002.css
/000009/
...
Таким образом, путь к альбому агента 000005 будет следующим: /agent001/000005/index.php
Мне нужен ярлык типа: /000005/
который пересылает на /agent001/000005/some-title-here
Еще одна вещь, которую я не могу понять, — это структура каталога.Мне очень нужны папки агента и альбома, чтобы систематизировать мои вещи.Но index.php и main.css все одинаковые, стоит ли переносить эти файлы в корень?
Любая помощь очень ценится!
Решение
Это невозможно с mod_rewrite.Вам понадобится какая-нибудь программа, которая просматривает каталоги агентов и проверяет, существует ли папка с таким именем.
Но кроме этого ваши короткие URL-адреса больше не будут различимы.Потому что нравится Макс С.сказал в комментариях, как должен /000005/
сопоставляться, если более чем у одного агента есть альбом «000005»?Или это значение уникально для всех агентов?
И используя центральный экземпляр index.php и main.css — лучший выбор, позволяющий избежать избыточности и сложности.В этом случае вы можете использовать mod_rewrite для перезаписи запросов к вашим центральным файлам, например:
RewriteRule ^[^/]+/[^/]+/index\.php$ /index.php