除了一个URL之外,将站点重定向到410

时间:2017-03-03 06:36:31

标签: .htaccess codeigniter redirect mod-rewrite

我在PHP codeigniter中有网站构建,其中包含以下各种URL:

    www.mysiteexample.com
    www.mysiteexample.com/mobile
    www.mysiteexample.com/storage
    www.mysiteexample.com/stack
    www.mysiteexample.com/apple and so on..

现在我想将所有网址重定向到410,包括主页,但www.mysiteexample.com/stack除外我可以通过为每个网址添加单独的规则来执行此操作,如下所示:

RewriteRule ^/?mobile- [L,R=410]
RewriteRule ^/?storage- [L,R=410]
RewriteRule ^/?apple - [L,R=410]

但我想要优化解决方案,因为我有超过50个网址,我想重定向到410并使用上面的解决方案,它增加文件大小和.htaccess的LOC

修改 我在routes.php中有以下代码

$route['stack(.*)'] = 'stack_center/index';

2 个答案:

答案 0 :(得分:2)

尝试下面的规则,现在我没有尝试过。

RewriteEngine On
RewriteCond %{REQUEST_URI} !stack
RewriteRule ^ - [L,R=410]

答案 1 :(得分:1)

您可以使用以下重定向

RedirectMatch 410 ^/((?!stack).*)$