Heim  >  Artikel  >  Backend-Entwicklung  >  Zusammenfassung verschiedener Möglichkeiten zur Implementierung von Pseudostatik in PHP

Zusammenfassung verschiedener Möglichkeiten zur Implementierung von Pseudostatik in PHP

伊谢尔伦
伊谢尔伦Original
2017-07-17 16:28:446429Durchsuche

Die Verwendung von PHP-Pseudostatik dient hauptsächlich dazu, die übergebenen Parameternamen zu verbergen. Apropos pseudostatischer Implementierungsplan: Antworten Sie sehr gerne: „Einfach, konfigurieren Sie das Umschreiben von.“ Apache Befolgen Sie einfach die Regeln Es sind erst zwei Tage vergangen. Die Betriebs- und Wartungsstudenten sind immer noch bereit zu kooperieren, aber in zwei Tagen werden die Betriebs- und Wartungsstudenten mich ausschimpfen. Warum machst du nicht alles auf einmal und nervst mich jeden Tag, weil du so taub und dumm bist? Aber Sie sind dabei, online zu gehen, und Sie müssen die Klassenkameraden für Betrieb und Wartung eindringlich fragen und dann die schamlosesten Worte in der Welt der Programmierer sagen: „Dies ist die letzte Änderung“, und dann müssen Sie sie später noch einmal ändern , hey, deine Persönlichkeit. Es ist eine saubere Sache. . .

Wenn Sie solche Probleme haben, lesen Sie bitte den folgenden Artikel, um sicherzustellen, dass Sie in Zukunft nie wieder nach Betrieb und Wartung fragen und tun können, was Sie wollen. . .

Wie viele Möglichkeiten gibt es, Pseudostatik in PHP zu implementieren? Persönliche Meinungen und Statistiken, es gibt vier Methoden

1. Verwenden Sie die URL-Umschreibungsregeln. Alle Schüler haben sie hier erstellt. Konfigurieren Sie

RewriteEngine On
RewriteRule ^/test.html index.php?controller=index&action=test [L]


2. Verwenden Sie die Pfadinformationen von PHP Haben Sie schon einmal gesehen, dass einige Websites so mit „www.xxx.com/index.php/c/index/a/test/id/100“ spielen? Um dies zu unterstützen, müssen Sie natürlich die Parameter in „php“ ändern. ini'

'cgi.fix_pathinfo' ist auf 1 gesetzt. Nehmen Sie als Beispiel „www.xxx.com/index.php/c/index/a/test/id/100“

echo $_SERVER['PATH_INFO']; c /index/a/test/id/100'
Sie sollten dies verstehen, Sie können diesen Absatz analysieren und die tatsächliche Adresse zuweisen


3. Verwenden Sie im Allgemeinen den 404-Mechanismus. Das Pseudonym Die folgenden -statischen Seiten sind alle Seiten, die nicht tatsächlich vorhanden sind. Sie können also die Apache 404-Konfiguration verwenden. Es gibt jedoch einige Probleme, d. h. Anforderungen vom Typ „Post“ werden abgebrochen, sodass Sie „$_POST“ nicht erhalten können. ,

Aber '$_GET' kann immer noch abgerufen werden. Unter der Annahme, dass die 404-Seite hier '404page.php' ist, lautet die Apache-Konfiguration wie folgt:

ErrorDocument 404 /404page.php

Dann „Der folgende Code ist in 404page.php eingebettet“

4. Eine verbesserte Version von Methode 3. Methode 3 entspricht der internen Umleitung Mechanismus von Apache, der dazu führt, dass die per Post (get) übergebenen Parameter nicht verfügbar sind. Die Analyse des Obigen zeigt tatsächlich, dass die relevanten Dateien nicht gefunden werden können. Wenn dies in Ordnung ist, ist kein POST erforderlich wird nicht verloren gehen. Die Apache-Konfiguration lautet wie folgt:

header("HTTP/1.1 200 OK"); //这里一定要有,不然状态就是404
$reqUrl = $_SERVER['REQUEST_URI']; // 请求地址
/**
* 从URL中解析参数
*/
function parseUrlParams($queryUrl)
{
$arr = explode('?', $queryUrl);
parse_str($arr[1], $param);
if($param)
{
foreach($param as $key => $value)
{
$_GET[$key] = $value;
}
}
}
parseUrlParams($reqUrl); // url解析参数
//然后你就可以使用 $reqUrl 根据自己的规则匹配不同的实际请求地址
if(preg_match('#^/test.html#is', $reqUrl, $matches))
{
include('index.php');
die();
}

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule

Die allgemeine Bedeutung der obigen Konfiguration besteht darin, dass, wenn die angeforderte Datei oder das angeforderte Verzeichnis nicht gefunden werden kann, stattdessen „index.php“ im Stammverzeichnis verwendet wird. Anschließend können Sie die relevanten Parameter in „index.php“ abrufen und analysieren zur eigentlichen Anfrage. Adresse

Das obige ist der detaillierte Inhalt vonZusammenfassung verschiedener Möglichkeiten zur Implementierung von Pseudostatik in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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