Привет, у меня есть следующее правило переписывания isapi, работающее на IIS 6.
оно переписывает:
http://www.mysite.com/index.php?category=white-wine
в:
http://www.mysite.com/white-wine
.Содержание htaccess:
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ([^/]+)/?$ /?category=$1 [NC,QSA,L]
Сейчас я пытаюсь выполнить почти то же правило, но в более глубокой папке. edit Правило находится в том же файле .htaccess в корне сайта, что я просто хочу применить вышеупомянутое правило, к файлу index.php, который находится в папке в корне, называемой products.
Я хочу переписать:
http://www.mysite.com/product/index.php?product=the-chosen-product
в:
http://www.mysite.com/product/the-chosen-product
Я пробовал это:
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ([^/]+)/product/?$ /product/?product=$1 [NC,QSA,L]
Это не работает, хотяЯ получаю кучу ошибок на своей странице php:
Warning: require_once() [function.require-once]: URL file-access is disabled in the server configuration
Warning: require_once(http://www.mysite.com/myfolder/framework/library.php) [function.require-once]: failed to open stream: no suitable wrapper could be found
Первоначально я получал эти ошибки с первым правилом, но так как это работает сейчас, я думаю, что должно быть возможно как-то выполнить второе правило?
Кроме того, как бы я изменил его, чтобы вместо отображения:
http://www.mysite.com/product/my-chosen-product
было бы показано:
http://www.mysite.com/product/my-chosen-product.htm
Я действительно новичок в этом.Я просмотрел много других постов и полностью запутался, особенно потому, что переписывание isapi, я думаю, работает немного иначе, чем mod_rewrite.