こんにちは、IIS 6 で動作する次の isapi 書き換えルールがあります。
それは次のように書き換えます。
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]
私は今、ほぼ同じルールを実行しようとしていますが、より深いフォルダーで実行しています。 編集 ルールはサイト ルートの同じ .htaccess ファイルにあります。単純に、上記のルールを、製品というルートのフォルダーにある index.php ファイルに適用したいだけです。
書き直したい:
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
もともと最初のルールでこれらのエラーが発生していましたが、現在はそれが機能しているため、2番目のルールを何らかの方法で実行できるに違いないと思いますか?
また、表示する代わりにどのように変更しますか:
http://www.mysite.com/product/my-chosen-product
次のように表示されます。
http://www.mysite.com/product/my-chosen-product.htm
私はこれに本当に慣れていません。私は他の多くの投稿を調べましたが、特に isapi rewrite は mod_rewrite とは少し異なるように動作するため、完全に混乱しました。