ZeusサーバールールへのMod Rewriteルール(Codeigniter)
-
19-08-2019 - |
質問
Codeigniterを使用したサイトでライブを開始しようとしています。 index.phpをURLから削除して、これの代わりに:
http://www.mysite.com/index.php/controller
次のようなものが表示されます:
http://www.mysite.com/controller
これまでのところ、非常に簡単です。過去に、Codeigniterのドキュメントで提供されているmod-rewriteルールを使用しました:
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
これは魅力のように機能します。ただし、このサイトでは、ApacheではなくZeus Webサーバーを使用する必要があり、まったく慣れていません。 Zeusには、次のような独自の書き換えルールがあります。
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^[^/]*\.html$ index.php
これになります:
match URL into $ with ^/[^/]*\.html$
if matched then set URL = /index.php
Zeusの最初のルールの書き換えを手伝ってくれる人はいますか?助けてくれてありがとう!
解決
それを考え出した-私にとっては次のようにうまく機能します:
map path into SCRATCH:DOCROOT from /
set SCRATCH:ORIG_URL = %{URL}
set SCRATCH:REQUEST_URI = %{URL}
look for file at %{SCRATCH:DOCROOT}%{SCRATCH:REQUEST_URI}
if not exists then look for dir at %{SCRATCH:REQUEST_URI}%{SCRATCH:REQUEST_URI}
if not exists then set URL = /index.php%{SCRATCH:REQUEST_URI}
所属していません StackOverflow