PHP htaccces url重写挑战

时间:2017-03-28 09:18:14

标签: php .htaccess url url-rewriting

据我没有经历过这个挑战对我来说太过分了。我需要重写丑陋复杂的网址来清理。

来自:

domain.com/read/part1/article8

像这样:

$requesturi = $_SERVER['REQUEST_URI'];
$urlinitial = explode("?",$requesturi); 
parse_str(html_entity_decode($requesturi), $get_array);
foreach($get_array as $key => $value) {$key = $value;}
$sql = "SELECT name FROM table1 WHERE idg=$idg and id=$id and x=$x";
$sql2 = "SELECT title FROM table2 WHERE n_id=$n_id";

它非常古老的应用程序和 IDG,ID,ID - 位于数据库的table1中, N_ID 位于数据库的table2中。我得到了与这些Id相关的名字:

{{1}}

最后,我有两个变量,其中包含当前名称的部分和文章: $ page_name $ art_name。

部分 index.php?job = wiad 是一个可更改的模式,取决于角色: job = wiad 表示展示文章和普通视图 index_php?idg ...我想我应该创建一种 RewriteRule 并将其与另一个.php设置文件混合。

2 个答案:

答案 0 :(得分:0)

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
RewriteCond %{REQUEST_URI} !^/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
RewriteRule ^([A-Za-z0-9\_\-]+)$ index.php?job=wiad&idg=$1&id=$2&x=$3&n_id=$4 [QSA,L]

答案 1 :(得分:0)

或者您可以使用此

RewriteEngine On RewriteRule ^([^ /] )/([^ /] )/([^ /] )/([^ /] )/([^ /] * ).html $ /index.php?job=$1&idg=$2&id=$3&x=$4&n_id=$5 [L]