htaccess переписать URL-адрес папки, чтобы показать содержимое из корневой папки - PullRequest
4 голосов
/ 19 сентября 2011

Я новичок в htaccess и у меня возникла проблема, по которой мне нужна помощь.На моем сайте есть папка (на самом деле пустая), для которой я хочу обслуживать контент из корневой папки.

Допустим, структура выглядит следующим образом:

example.com

   -folder1

   -index.php

   -anotherpage.php

   -.htaccess

Итак, когда кто-то заходит на example.com/folder1/index.php, он увидит URL-адрес как таковой, но получит контент с example.com/index.php.Если он посетит example.com/folder1/anotherpage.php, он получит контент с example.com/anotherpage.php.Конечно, когда он зайдет прямо на example.com/index.php, он увидит example.com/index.php.

Я нашел много примеров, которые показывают обратное, но не так, как я хочу.Также, чтобы уточнить, я хочу переписать, а не переадресовать, чтобы URL подделал, что на самом деле есть страницы в папке 1.

Любая помощь будет оценена.

1 Ответ

3 голосов
/ 20 сентября 2011

Используйте этот .htaccess в корневой папке:

# Enable mod_rewrite
RewriteEngine on
# ^: Start with
# folder1: name the folder
# (\/?): Can containt an ending slash eg: folder1/ or folder1
# $: End with
# [QSA]: Query string append, means you can use %name=value
# [NC]: Non Case: Case insensitive
# [L]: Last rule, stop if this rule match the url
RewriteRule ^folder1(\/?)$ /index.php [QSA,NC,L]
# (.*): Everything
# $1: the matching filename- file must exists.
RewriteRule ^folder1/(.*)(\/?)$ /$1 [QSA,NC,L]
...