Drei Methoden zur Implementierung pseudostatischer Seiten in PHP

巴扎黑
Freigeben: 2016-11-24 14:08:29
Original
1465 Leute haben es durchsucht

Pseudostatische PHP-Schreibmethode – eine

Pseudostatisch ist auch bekannt als: URL-Rewriting

Hauptsächlich für SEO. (Was ist SEO? Fragen Sie mich nicht danach. Haha~ Wer im Internet arbeitet, versteht SEO nicht~~~~)

Methode 1:

Zum Beispiel dies Webseite

http://www.2cto.com /soft.php/1,100,8630.html

Tatsächlich ist das verarbeitete Skript soft.php und der Parameter ist 1.100.8630

Entspricht es soft.php? a=1&b=1=100&c=8630 Aber eine solche URL ist zu schwer zu merken. Suchmaschinen mögen es auch nicht.

Echtes Static ist einfach vollständig generiertes HTML.

Ausgabe direkt beim Client-Zugriff. Es ist keine Skripterklärung erforderlich. Es wird sehr gute Ergebnisse liefern, wenn der Datenverkehr sehr groß ist (z. B. wenn es täglich Millionen von Besuchen gibt). Mit anderen Worten: Diese HTML-Seite existiert tatsächlich auf der Serverseite.

Natürlich, wenn der Traffic auf Ihrer Website nicht so groß ist. Das Umschreiben von URLs ist die beste Methode (meiner persönlichen Meinung nach kann ein Lastausgleich bei starkem Datenverkehr in Betracht gezogen werden. Das spielt auch keine Rolle)

Es gibt viele Methoden zum Umschreiben von URLs, einschließlich APACHE und IISREWRITE. Sogar PHP-Skripte können damit direkt umgehen. Im obigen Beispiel wird es beispielsweise direkt vom PHP-Skript verarbeitet (der Vorteil dieser Methode besteht darin, dass sie bei großem Datenverkehr direkt den Druck auf den WEB-Server verringert. PS: Dies ist auch eine persönliche Meinung :

=========== =============================== =====

Nehmen wir die Methode zur Implementierung eines pseudostatischen PHP-Programms. Tatsächlich habe ich diese Methode bereits in anderen Forum-Communitys gepostet

Programmbeispiel:

http://www.2cto.com /soft.php /1,100,8630.html

CODE:

//Verwenden Sie die Servervariable, um die PATH_INFO-Informationen zu erhalten. In diesem Beispiel ist es /1,100,8630.html, das ist der Teil nach dem Namen des Ausführungsskripts

if(@$path_info =$_SERVER["PATH_INFO"]){

/ /Reguläre Übereinstimmungsparameter

if(preg_match("//(d+),(d+), (d+).html/si",$path_info,$arr_path)){

$gid =intval($arr_path[1]); //Wert 1 abrufen

$sid =intval ($arr_path[2]); //Wert 100 abrufen

$softid =intval( $arr_path[3]); //Wert 8630 abrufen

}else die("Path:Error !"

//Entspricht soft.php?gid=1&sid=100&softid =8630


//So einfach ist das.~)

Methode Zwei:

Öffnen Sie die Apache-Konfigurationsdatei httpd.conf.

2. Entfernen Sie das # vor #LoadModule rewrite_modules/mod_rewrite

3. Fügen Sie httpd.conf hinzu:

RewriteEngine On
#RewriteCond %{ENV:SCRIPT_URL} (?:index|dispbbs)[-0-9]+.html
RewriteRule ^(.*?(?:index|dispbbs))-([- 0- 9]+).html 1.php?__is_apache_rewrite=1&__rewrite_arg=2

Viertens, um die Zuordnung der ASP-Post-URL zum PHP-Post zu realisieren, im dritten Schritt: und hinzufügen:

RewriteMap tolowercase int:tolower
RewriteCond %{QUERY_STRING} (?:boardid|page|id|replyid|star|skin) =d+ [ NC]
RewriteRule ^(.*(?:index|dispbbs)).asp 1.php?{tolowercase:%{QUERY_STRING}}&__is_apache_rewrite=1

5. Speichern Sie httpd.conf und starten Sie Apache neu

Methode 3:


   <?php 
    /* 
    功能:PHP伪静态化页面的实现 
    具体用法: 
    例如链接为:test.php/year/2006/action/_add.html 
    mod_rewrite(); 
    $yearn=$_GET["year"];//结果为&#39;2006&#39; 
    $action=$_GET["action"];//结果为&#39;_add&#39; 
    */ 
    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);//这句是去掉尾部的.html或.htm 
    $vars = explode("/",$nav); 
    for($i=0;$i<Count($vars);$i+=2){ 
    $_GET["$vars[$i]"]=$vars[$i+1]; 
    } 
    return $_GET; 
    } 
    mod_rewrite(); 
    $yearn=$_GET["year"];//结果为&#39;2006&#39; 
    $action=$_GET["action"];//结果为&#39;_add&#39; 
    echo $yearn; 
    echo $action; 
    ?>
Nach dem Login kopieren


 <?php 
    /* 
    功能:PHP伪静态化页面的实现 
    具体用法: 
    例如链接为:test.php/year/2006/action/_add.html 
    mod_rewrite(); 
    $yearn=$_GET["year"];//结果为&#39;2006&#39; 
    $action=$_GET["action"];//结果为&#39;_add&#39; 
    */ 
    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);//这句是去掉尾部的.html或.htm 
    $vars = explode("/",$nav); 
    for($i=0;$i<Count($vars);$i+=2){ 
    $_GET["$vars[$i]"]=$vars[$i+1]; 
    } 
    return $_GET; 
    } 
    mod_rewrite(); 
    $yearn=$_GET["year"];//结果为&#39;2006&#39; 
    $action=$_GET["action"];//结果为&#39;_add&#39; 
    echo $yearn; 
    echo $action; 
    ?>
Nach dem Login kopieren


Verwandte Etiketten:
php
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!