> 백엔드 개발 > PHP 튜토리얼 > PHP 의사 정적

PHP 의사 정적

巴扎黑
풀어 주다: 2016-11-22 16:10:03
원래의
1236명이 탐색했습니다.

Pseudo static을 선택해야 할까요, True static을 선택해야 할까요
1. SEO에 true static과 false static을 사용하는 것에는 차이가 없습니다
2. True static을 사용하면 하드 디스크 손상이 발생하고 포럼 성능에 영향을 줄 수 있습니다
3 .pseudo-static을 사용하면 일정량의 CPU 점유를 차지하게 되며 과도하게 사용하면 CPU 과부하가 발생합니다
4. 가장 중요한 점은 SEO를 위해 static을 원한다는 것입니다
그러므로:
1. 진정한 static을 사용하세요 이 방법은 생성 방법에 관계없이 하드 디스크에 매우 해로울 수 있으므로 직접 제거할 수 있습니다.
2. true와 false static의 효과가 동일하므로 pseudo static을 선택할 수 있습니다.
 3. 그러나 pseudo-static을 과도하게 사용하면 CPU 과부하가 발생합니다.
4. 그러니 대량으로 사용하지 않는 이상 괜찮습니다.
5. static은 SEO 전용이므로 SEO에는 pseudo-static만 필요하고, 사용자가 사용할 필요는 없습니다.
6. 따라서 SEO 크롤링을 위해 특별히 제공되는 Archiver에서 pseudo-static만 사용하면 됩니다.
7. 제 글을 읽어주신 모든 분들께 감사드립니다.
8. 질문이 있거나 다른 의견이 있으면
의사 정적과 실제 정적에 대한 의견을 자유롭게 제출하세요.
실제 정적과 의사 정적에는 근본적인 차이가 있습니다. 사용자 검색을 위한 순수 HTML 처리와 여러 데이터를 호출하는 PHP는 이전보다 CPU 사용량이 훨씬 적습니다. 누군가가 HTML 다운로드를 자주 읽고 하드 디스크에 쓴다고 말한 것을 기억합니다. 그는 마치 데이터베이스를 읽는 데 디스크에 읽고 쓸 필요가 없는 것처럼 말했습니다. 게다가 캐시된 분산된 PHP 파일이 많이 있습니다. 이러한 읽기에는 디스크 작업이 필요하지 않습니까? 말도 안 되는.
단일 HTML + 이미지 플래시 및 기타 첨부 파일을 읽으면 목적을 달성할 수 있습니다. 왜 굳이 데이터베이스를 읽고, PHP 캐시 파일을 읽고, 데이터 출력을 다시 통합하고, 이미지 플래시 및 기타 첨부 파일을 추가해야 할까요? ? CMS 홈 페이지는 많은 상호 작용이 필요하지 않으며 여기에서는 포럼 버전을 사용해서는 안 됩니다. 반대로 더 고려해야 할 점은 바로 아름다움입니다. 호환 가능! 직관적인 정보! 성능! 그리고 안정성!

네 가지 메소드의 PHP 의사 정적 구현을 ​​전송 중입니다:

1 2 //의사 정적 메소드 1
3
4 / / localhost/ php100/test.php?id|1@action|2
5 $Php2Html_FileUrl = $_SERVER["REQUEST_URI"]
6 echo $Php2Html_FileUrl."
";// /php100 /test.php?id|1@action|2
7 $Php2Html_UrlString = str_replace("?","",str_replace("/", "", strrchr(strrchr($Php2Html_FileUrl, "/")," ?") ));
8 echo $Php2Html_UrlString."
";// id|1@action|2
9 $Php2Html_UrlQueryStrList =explore("@", $Php2Html_UrlString);
10 print_r( $Php2Html_UrlQueryStrList);// 배열 ( [0] => id|1 [1] => action|2 )
11 echo "
"
12 foreach($Php2Html_UrlQueryStrList $Php2Html_UrlQueryStr )
13 {
14 $Php2Html_TmpArray =explore("|", $Php2Html_UrlQueryStr);
15 print_r($Php2Html_TmpArray);// 배열( [0] => id [1] => 1 ) ; 배열( [0] => 액션 [1] => 2 )
16 echo "
"
17 $_GET[$Php2Html_TmpArray[0]]; Php2Html_TmpArray[1 ];
18 }
19 //echo 'False static: $_GET 변수
'
20 print_r($_GET); action|2] => [id] => 1 [action] => 2 )
21 echo "
23 echo $ _GET[id]."
";// 1
24 echo $_GET[action];// 2
25 ?>
26

1 < ;? php
2 //의사 정적 메서드 2
3
4 // localhost/php100/test.php/1/2
5 $filename = basename($_SERVER['SCRIPT_NAME' ]);
6 echo $_SERVER['SCRIPT_NAME']."
";// /php100/test.php
7 echo $filename."
";// 테스트. php
8
9 if(strtolower($filename)=='test.php'){
10 if(!empty($_GET[id])){
11 $id=intval ($_GET [id]);
12 echo $id."
"
13 $action=intval($_GET[action])
14 echo $action."< br>" ;
15 }else{
16 $nav=$_SERVER['REQUEST_URI'];
17 echo "1:".$nav."
";// /php100 /test.php/1/2
18 $script=$_SERVER['SCRIPT_NAME']
19   echo "2:".$script."
";// /php100/test.php 
20    $nav=ereg_replace("^$script","",urldecode($nav)); 
21   echo $nav."
"; // /1/2 
22    $vars=explode("/",$nav); 
23   print_r($vars);// 배열( [0] => [1] => 1 [2] => 2 ) 
24    echo "
"; 
25   $id=intval($vars[1]); 
26   $action=intval($vars[2]); 
27  } 
28  echo $id.'&'.$action; 
29 } 
30  ?> 
31  

1 2 //伪静态方法三 


5 function mod_rewrite(){ 
6 global $_GET; 
7 $nav=$_SERVER["REQUEST_URI"]; 
8 echo $nav."
"; 
9 $script_name=$_SERVER["SCRIPT_NAME"]; 
10 echo $script_name."
"; 
11 $nav=substr(ereg_replace("^$script_name","",urldecode($nav)),1); 
12 echo $nav."
"; 
13 $nav=preg_replace("/^.ht(m){1}(l){0,1}$/","",$nav);//这句是去掉尾부적.html或.htm 
14 echo $nav."
"; 
15 $vars = 폭발("/",$nav); 
16 print_r($vars); 
17 echo "
"; 
18개($i=0;$i19개 $_GET["$vars[$i]"]=$vars[$i+1 ]; 
20 } 
21 $_GET 반환; 
22 } 
23 mod_rewrite(); 
24 $year=$_GET["year"];//结果为'2006' 
25 echo $year."
"; 
26 $action=$_GET["action"];//结果为'_add' 
27 echo $action; 
28 ?> 
29 

1 2 //伪静态方法4 

4 //利用server变 取得PATH_INFO信息 该例中为 /1,100,8630. html   也就是执行脚本name后면적 부분 
5 if(@$path_info =$_SERVER["PATH_INFO"]){ 
6 //正则匹配一下参数 
7 if(preg_match("//( d+),(d+),(d+).html/si",$path_info,$arr_path)){ 
8 $gid     =intval($arr_path[1]); //取得值 1 
9 $sid     =intval($arr_path[2]);   //取得值100 
10 $softid   =intval($arr_path[3]);   //取得值8630 
11 }else die("경로:Error!"); 
12 //상当于soft.php?gid=1&sid=100&softid=8630 
13 }else die('Path:Nothing!'); 
14 ?> 

관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿