2010-11-13 3 views
0

Можно ли сделать папку прозрачным в URL, как показано в следующем примере: example.com/test/ изменен example.com/с помощью mod_rewrite изменить Путь URL

с помощью mod_rewrite?

Мне нравится иметь папки для организации, но я хочу хороший чистый URL.

+0

Changed как, используя редирект или внутренняя переписывать? Можете ли вы описать, что должно произойти, когда пользователь вводит один URL-адрес, а другой? –

+0

Вы имеете в виду использование файла типа 'root_folder/test/page.html' как' example.com/page.html'? –

+0

@ Pekka-internal rewrite был бы лучше @ Alberto-точно –

ответ

2

Вы можете добиться того, что с mod_rewrite положить что-то вроде этого в .htaccess файле корневой папке:

RewriteEngine on 

# the first condition is for avoiding an infinite loop 
RewriteCond %{REQUEST_URI} !^/test/.* 
RewriteRule ^(.*)$ /test/$1 

Это будет перенаправлять /test/ все страницы/файлы, запрашиваемые у /.

Если вы хотите перенаправить некоторые файлы использовать более конкретные правила (ы):

RewriteEngine on 

# the condition is for avoiding an infinite loop 
RewriteCond %{REQUEST_URI} !^/test/.* 
# redirecting only images files and files that start with "doc" 
RewriteRule ^(.*\.(jpg|png|gif))$ test/$1 [L] 
RewriteRule ^(doc.*)$ test/$1 [L] 

Или, если вы хотите использовать различные папки:

RewriteEngine on 

# the condition is for avoiding an infinite loop 
RewriteCond %{REQUEST_URI} !^/images/.* 
RewriteCond %{REQUEST_URI} !^/docs/.* 
# redirecting only images files and files that start with "doc" 
RewriteRule ^(.*\.(jpg|png|gif))$ images/$1 [L] 
RewriteRule ^(doc.*)$ docs/$1 [L] 
Смежные вопросы