dongqiao2077 2016-12-25 17:02
浏览 11
已采纳

如果网址不正确,如何重定向页面?

For example if after question mark there is another word, it redirects to home page. After question mark there can be only the word lang=hy or lang=ru or lang=en:

https://it-center.am/?lang=hy

But otherwise it should redirect to home page. For example there can not be url like this:

https://it-center.am/?lang=hyyy

Should I change something in .htaccess?

Here is code of languages.php

define('LANGUAGE_DIR', $_SERVER['DOCUMENT_ROOT']."/language/", false);
define('TEMPLATE_DIR', $_SERVER['DOCUMENT_ROOT']."/", false);

$languages = [
    "hy",
    "ru",
    "en",
];

session_start();

if (!isset($_SESSION['lang']) OR !isset($_GET['lang']))
{
    $_SESSION['lang'] = $languages[0];
    $language = $_SESSION['lang'];
}
else {
    $language = $_GET['lang'];

}
include_once(LANGUAGE_DIR . $language . '.php');

$valid = array("en", "ru", "hy");
    if (!in_array($_GET["lang"], $valid)) {
    header("Location /index.php?lang=hy");
    die();
}
  • 写回答

2条回答 默认 最新

  • dtjkl42086 2016-12-25 17:12
    关注

    You can use in your .htaccess:

    RewriteEngine on
    RewriteCond %{QUERY_STRING} lang= [NC]
    RewriteCond %{QUERY_STRING} !lang=(?:hy|ru|en)(?:&|$) [NC]
    RewriteRule ^ https://it-center.am/? [R=301,L]
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 merge函数占用内存过大
  • ¥15 Revit2020下载问题
  • ¥15 使用EMD去噪处理RML2016数据集时候的原理
  • ¥15 神经网络预测均方误差很小 但是图像上看着差别太大
  • ¥15 单片机无法进入HAL_TIM_PWM_PulseFinishedCallback回调函数
  • ¥15 Oracle中如何从clob类型截取特定字符串后面的字符
  • ¥15 想通过pywinauto自动电机应用程序按钮,但是找不到应用程序按钮信息
  • ¥15 如何在炒股软件中,爬到我想看的日k线
  • ¥15 seatunnel 怎么配置Elasticsearch
  • ¥15 PSCAD安装问题 ERROR: Visual Studio 2013, 2015, 2017 or 2019 is not found in the system.