我的框架完全依赖于mod_rewrite在服务器上启用以进行路由。在我的.htaccess文件中,我检查是否启用了mod_rewrite.c并在其中执行重写规则。但是,如果mod_rewrite没有打开,我的应用程序基本上会停止工作,因为我不想进行http://www.domain.com/index.php/ ... url设置以确保所有请求仍然通过index.php过滤。
如果关闭mod_rewrite,是否有一个故障安全方法可以指示所有请求说出内部500或可能是某个错误页面(如果我可以定制地定义它会很好)?
答案 0 :(得分:0)
您可以将所有mod_rewrite
规则保留在<IfModule mod_rewrite.c>
阻止和<IfModule !mod_rewrite.c>
阻止中的例外:
# execute when mod_rewrite is turned on
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ index.php [L]
</IfModule>
# execute when mod_rewrite is turned off
<IfModule !mod_rewrite.c>
RedirectMatch ^(?!/error\.php).*$ /error.php
</IfModule>