Discuz! X2 相對於 X15 來説,rewrite 做了一定的調整:
1. 後台位置變化:由 X15 的 「全局 → 優化設置」,調整為 X2 的 「全局 → SEO 設置」
2. 數量變化:由 X15 的 6 項針對性設置 + 1 項全站動態頁面,調整為 X2 的 8 項針對設置性 如果希望對之前的已經收錄的 rewrite 仍可以訪問,可以做如下兼容:

1. 修改 rewrite 規則:有兩種方法可以使用
1) 將 X2 後台提供的 rewrtie 規則放在 X15 的規則的前面即可,任何規則都可以不刪除
2) 將下面地址中的 rewrite 規則放在 X15 的規則的前面

2. 修改文件:
找到:source/class/class_core.php 191 行附近

  1. function _init_input() {
  2.         if (isset($_GET['GLOBALS']) ||isset($_POST['GLOBALS']) ||  isset($_COOKIE['GLOBALS']) || isset($_FILES['GLOBALS'])) {
  3.                 system_error('request_tainting');
  4.         }
  5.         if(!MAGIC_QUOTES_GPC) {
  6.                 $_GET = daddslashes($_GET);
  7.                 $_POST = daddslashes($_POST);
  8.                 $_COOKIE = daddslashes($_COOKIE);
  9.                 $_FILES = daddslashes($_FILES);
  10.         }

修改為

  1. function _init_input() {
  2.         if (isset($_GET['GLOBALS']) ||isset($_POST['GLOBALS']) ||  isset($_COOKIE['GLOBALS']) || isset($_FILES['GLOBALS'])) {
  3.                 system_error('request_tainting');
  4.         }
  5.         if(!empty($_GET['rewrite'])) {
  6.                 $query_string = '?mod=';
  7.                 $param = explode('-', $_GET['rewrite']);
  8.                 $query_string .= $_GET['mod'] = $param[0];
  9.                 array_shift($param);
  10.                 $paramc = count($param);
  11.                 for($i = 0;$i < $paramc;$i+=2) {
  12.                         $_REQUEST[$param[$i]] = $_GET[$param[$i]] = $param[$i + 1];
  13.                         $query_string .= '&'.$param[$i].'='.$param[$i + 1];
  14.                 }
  15.                 $_SERVER['QUERY_STRING'] = $query_string;
  16.                 unset($param, $paramc, $query_string);
  17.         }
  18.         if(!MAGIC_QUOTES_GPC) {
  19.                 $_GET = daddslashes($_GET);
  20.                 $_POST = daddslashes($_POST);
  21.                 $_COOKIE = daddslashes($_COOKIE);
  22.                 $_FILES = daddslashes($_FILES);
  23.         }