Codeigniter htaccess重定向不会重定向到所需的URL

时间:2017-08-14 18:04:04

标签: php apache .htaccess codeigniter redirect

我有一个codeigniter网站,我想做seo。所以我使用路由缓慢的url而不是codeigniter默认有方法名称和索引。 有了这个问题就出现了,三个不同的网址会打开相同的页面,即。

1. https://www.example.com/seo-freindly-url/
2. https://www.example.com/index.php?/controller/method/42
3. https://www.example.com/controller/method/42

但我只希望第一个网址能够正常工作,对于其他人我只想使用 htaccess 重定向重定向到seo友好网址。 请帮助我。 还有一件事我用htaccess 301重定向来重定向我的一个网址

Redirect 301 "/plan/index/42" https://www.example.com/services/seo

每当我打开网址

时,它都会在某种程度上起作用
https://www.example.com/plan/index/42

重定向到

https://www.example.com/services/seo?/plan/index/42 

但必须是https://www.example.com/services/seo/

谢谢。

1 个答案:

答案 0 :(得分:0)

我很难测试,但你可能会尝试这样的事情:

的.htaccess

RewriteEngine On
RewriteBase /

RewriteRule ^controller/method/42$ /seo-friendly-url [L]

redirect 301 /plan/index/42 /services/seo

RewriteRule ^(system|application|cgi-bin) - [F,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

# Remove index.php from all URLs
RewriteRule .* index.php/$0 [PT,L]

/应用/配置/配置

// This assumes you want to remove index.php from all URLs
$config['index_page'] = '';