Heim  >  Artikel  >  PHP-Framework  >  So verbergen Sie Eintragsdateien in thinkPHP5

So verbergen Sie Eintragsdateien in thinkPHP5

PHPz
PHPzOriginal
2023-04-11 09:14:511069Durchsuche

thinkPHP5 ist ein hervorragendes PHP-Entwicklungsframework. Es bietet eine schnelle Entwicklungsmethode und umfangreiche Funktionskomponenten, darunter die URL-Routing-Funktion. Für den Zugriff auf die Route ist jedoch standardmäßig das Hinzufügen von index.php zur URL erforderlich. Der Schönheit und Sicherheit halber wird in diesem Artikel erläutert, wie Sie die Eintragsdatei in thinkPHP5 ausblenden.

1. Umgebungsvorbereitung

Vor dem Ausblenden von URLs müssen wir prüfen, ob die lokale Umgebung die pseudostatische Funktion und die Funktion zum Umschreiben von URLs unterstützt, damit der Vorgang zum Ausblenden von URLs reibungslos durchgeführt werden kann. Zuerst müssen wir sicherstellen, dass ein Webserver wie Apache oder Nginx installiert ist, und dann pseudostatische Funktionen und URL-Rewriting-Funktionen in der Konfigurationsdatei aktivieren, damit das Framework verschönerte URLs erkennen und generieren kann.

2. Aktivieren Sie das Ausblenden von URLs

  1. Öffnen Sie die Konfigurationsdatei

Suchen Sie in der Konfigurationsdatei von thinkPHP5 die Datei app.php, suchen Sie das Konfigurationselement url_html_suffix und setzen Sie es auf eine leere Zeichenfolge, das heißt:

'url_html_suffix' = > ''

Dies ermöglicht URLs ohne Suffixe.

  1. Routing konfigurieren

In thinkphp5 können Sie durch die Konfiguration von Routing-Regeln die Zugriffs-URL dem Controller oder der Betriebsmethode zuordnen. Wir müssen für jeden Controller oder jede Betriebsmethode entsprechende Routing-Einstellungen vornehmen und die entsprechende URL einem aussagekräftigen Inhalt zuordnen, damit der versteckte Effekt ausgeübt werden kann, zum Beispiel:

Route::get('news /:id', 'index/index/news',[],['id'=>'d+']);

Auf diese Weise wird der Index-Controller beim Zugriff auf die URL /news/1 automatisch als News-Operationsmethode und aufgerufen Setzen Sie die Anforderungsparameter-ID auf 1.

  1. Konfigurieren Sie den Server

Die entsprechende Konfiguration muss ebenfalls in Apache oder Nginx erfolgen. Fügen Sie am Beispiel von Apache den folgenden Inhalt in .htaccess hinzu:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?s= / $1 [QSA,PT,L]

In diesem Code aktiviert RewriteEngine die URL-Rewriting-Funktion von Apache Beeinflusst den Zugriff auf statische Ressourcen. Schließlich wird RewriteRule verwendet, um die URL auf die thinkPHP-Eintragsdatei index.php zu verweisen und Routing-Informationen bereitzustellen.

4. Zusätzliche Funktionen

  1. URL-Suffix festlegen

Um unsere Anwendung weiter zu schützen, können wir unsere Anwendung sicherer machen, indem wir ein URL-Suffix festlegen. Sie können beispielsweise alle URL-Suffixe auf .shtml, .html, .shtml usw. festlegen, wodurch Angriffe auf unsere Anwendungen effektiv vermieden werden können.

Sie können die Option url_html_suffix in der Konfigurationsdatei finden und das entsprechende Suffix hinzufügen, zum Beispiel:

'url_html_suffix' => 'shtml|html|htm'

  1. Automatisch die URL identifizieren

Wir können Route verwenden Fügen Sie der Registermethode in der Klasse eine Routing-Regel hinzu, damit das Framework die URL automatisch identifizieren kann. Zum Beispiel:

if (is_file(APP_PATH . 'route.php')) {
Route::get('/', 'index/index');
Route::get('build', 'index/build ' );
include_once APP_PATH . 'route.php';
}

Wenn es eine URL gibt, die den Regeln entspricht, wird sie automatisch an den entsprechenden Controller oder die entsprechende Aktionsmethode weitergeleitet.

3. Zusammenfassung

Durch die oben genannten Schritte können wir den Vorgang zum Ausblenden von URLs in thinkPHP5 problemlos implementieren, wodurch unsere Anwendung schöner, sicherer und einfacher zu bedienen ist. In tatsächlichen Anwendungen sind jedoch detailliertere Konfigurationen und Debugging erforderlich, um das beste Serviceerlebnis zu erzielen.

Das obige ist der detaillierte Inhalt vonSo verbergen Sie Eintragsdateien in thinkPHP5. 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