在CodeIgniter中重定向整个站点不起作用

时间:2017-08-22 15:26:49

标签: php regex .htaccess codeigniter routes

我需要将整个网站重定向到特定的控制器( under_construction ),但我不想在脚本的所有页面中重定向。

我想,我可以在CodeIgniter的.htaccessroutes中执行此操作。 在 .htaccess 中,我不知道如何使用regex或如何使用它。

routes我尝试了以下内容:

$route['index.php/test'] = "under_construction";

但这不起作用。没有显示任何回应,没有做任何事情 我所期望的,所有页面都转到under_construction控制器。 我想为很多控制器做这个。使用regex吗?

有一种简单的方法吗?

2 个答案:

答案 0 :(得分:2)

这对我来说很有用.htaccess:

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_URI} !index.php/under_construction$ [NC]
RewriteRule ^(.*)$ http://localhost/index.php/under_construction [L,R=302]

您确实希望使用.htaccess以获得最佳性能,而302重定向则表示“此重定向不是永久性的,因此请稍后尝试相同的请求URI”。

答案 1 :(得分:0)

通过路由,你可以做这样的事情。在APPATH.'config/routes.php'

$route['(:any)'] = 'wanted/controller/method';

在默认路由(安装附带)之后设置此路由。