|
|
|
|
|
для: Akira
(20.10.2005 в 00:40)
| | Мне видится 2 варианта
1. Поместить файлы htaccess только в те директории, где они должны выполняьтся.
2. Установить соответствующие правила RewriteRule, в которых бы прямо указывались директории, например
RewriteEngine on
Options +FollowSymlinks
RewriteBase /
RewriteRule ^dir1/(.*)$ /newdir/index.php?$1
RewriteRule ^dir2/(.*)$ /newdir/index.php?$1
RewriteRule ^dir3/(.*)$ /newdir/index.php?$1
|
Здесь преобразования выполняются, только если производится обращение к директориям
dir1, dir2, dir3 | |
|
|
|
|
|
|
|
для: Max7
(15.09.2005 в 18:01)
| | А как сделать, в каких папка не надо выполнять rewrite? | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(15.09.2005 в 06:15)
| | А как написать, что бы вместо http://site.com/index.php?id=1
было http://site.com/1.html???
У меня в .htaccess
RewriteEngine on
Options +FollowSymlinks
RewriteBase /
RewriteRule ^([^/.]*)$ index.php?id=$1
|
И все работает, т.е вместо http://site.com/index.php?id=1
получается http://site.com/1
Но мне нужно http://site.com/1.html
что еще нужно добавить? | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(15.09.2005 в 06:25)
| | Спасибо! Работает. | |
|
|
|
|
|
|
|
для: Max7
(13.09.2005 в 07:54)
| |
DirectoryIndex index.html index.php
RewriteEngine on
Options FollowSymlinks
RewriteBase /
RewriteRule ^(.*)/(.*)\.html$ index.php?cat1=$1&cat=$2
RewriteRule ^([^/]+)/$ index.php?cat1=$1
RewriteRule ^([^/]+)$ index.php?cat1=$1
|
Поместил в подпапку и проверил работу вариантов:
http://test/dir/ - открывается index.html
http://test/dir/2
http://test/dir/2/
http://test/dir/2/3.html
Это перебрасывает на dir/index.php с передачей параметров. | |
|
|
|
|
|
|
|
для: Max7
(13.09.2005 в 07:54)
| | - | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(11.09.2005 в 05:40)
| |
RewriteRule ^([^/]+)/([^/]+)$ index.php?cat1=$2
RewriteRule ^([^/]+)/([^/]+)/$ index.php?cat1=$2
RewriteRule ^([^/]+)/([^/]+)/([^/]+).html$
index.php?cat1=$2&cat2=$3
|
Данный код вообще не отрабатывает, если даже помещаешь его в главную директорию. | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(11.09.2005 в 05:40)
| | Нет...нет....htaccess я ложу в папку directory и задаю RewriteBase /directory/ | |
|
|
|
|
|
|
|
для: Akira
(11.09.2005 в 03:30)
| | Options +FollowSymlinks включает символические ссылки. Она обязательно должна быть включена для преобразования URL.
>Я понял, что работа идет с рег. выражениями? Ищет совпадения аля preg_replace?
В основном, да. | |
|
|
|
|
|
|
|
для: Max7
(10.09.2005 в 22:17)
| | Хм… так у нас же вообще неправильное рег. выражение. Там одна директория упущено.
Посмотрите вот этот код.
RewriteRule ^([^/]+)/([^/]+)$ index.php?cat1=$2
RewriteRule ^([^/]+)/([^/]+)/$ index.php?cat1=$2
RewriteRule ^([^/]+)/([^/]+)/([^/]+)\.html$ index.php?cat1=$2&cat2=$3
|
| |
|
|
|
|