如何删除 /index.php?/ 同时重定向 301 codeigniter pyrocms

how to remove /index.php?/ while redirect 301 codeigniter pyrocms

在执行某些任务时,我遇到了无法解决的问题

像这样的子域上的域是多语言的 link

http://ru.example.com

所以我需要将其重新制作为目录:

http://example.com/ru

到现在为止一切都很好,工作找到

当我尝试将旧的 link 重定向到新的 link 时 使用此 htaccess 代码

RewriteEngine on
RewriteCond %{HTTP_HOST} ^ru.example.com$
RewriteRule ^(.*)$ http://example.com/ru/ [L,NC,QSA]

所以结果是 例如.com/ru/index.php?/about-us

它的错误调用我想帮助它成为

  example.com/ru/about-us

我正在使用基于 codigniter

构建的 Pyrocms

终于解决了

在基于 Pyrocms Codeigniter 的 CMS 的主要 Index.php 文件中

我的老板添加了这段代码并解决了问题

if (strpos($_SERVER['SERVER_NAME'], 'ar.') !== false) {

$pageURL = 'http';
if (isset($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] == "on") {
    $pageURL .= "s";
}
$pageURL .= "://";
if ($_SERVER["SERVER_PORT"] != "80") {
    $pageURL .= str_replace('ar.', '', $_SERVER["SERVER_NAME"]) . ":" . '/ar/' . $_SERVER["SERVER_PORT"] . $_SERVER["REQUEST_URI"];
} else {
    $pageURL .= str_replace('ar.', '', $_SERVER["SERVER_NAME"]) . '/ar/' . $_SERVER["REQUEST_URI"];
}

header("HTTP/1.1 301 Moved Permanently");
header("Location: " . $pageURL);
die();
}

谢谢...