Heim  >  Artikel  >  php教程  >  Das Umschreiben und Weiterleiten von URLs durch ThinkPHP erfolgt pseudostatisch, um SEO-Effekte zu erzielen.

Das Umschreiben und Weiterleiten von URLs durch ThinkPHP erfolgt pseudostatisch, um SEO-Effekte zu erzielen.

WBOY
WBOYOriginal
2016-10-17 09:11:151359Durchsuche

1. Umschreiben der URL, Ausblenden von Index.php in der URL.

ThinkPHP verfügt als PHP-Framework über einen einzigen Einstiegspunkt, daher ist die ursprüngliche URL nicht so benutzerfreundlich. ThinkPHP bietet jedoch verschiedene Mechanismen zum Anpassen des erforderlichen URL-Formats. Mit der Apache .htaccess-Datei ist es möglich, eine benutzerfreundliche URL-Adresse anzupassen, die der Suchmaschinenoptimierung zuträglicher ist.

.htaccess-Datei ist eine Konfigurationsdatei auf dem Apache-Server, die für die Konfiguration von Webseiten in zugehörigen Verzeichnissen verantwortlich ist. Wir können die Rewrite-Regeln der .htaccess-Datei verwenden, um die index.php-Datei (d. h. die Eintragsdatei) in der ThinkPHP-URL zu verbergen. Dies ist auch der erste Schritt in der pseudostatischen ThinkPHP-URL.

Die ursprüngliche URL lautet beispielsweise:

http://www.baidu.com/index.php/Index/insert

Nach dem Entfernen von index.php wird daraus:

http://www.baidu.com/Index/insert

Auf diese Weise wird es zum allgemeinen URL-Format http://Webseitenadresse/Name des Anwendungsmoduls/Vorgangsname[/Variablenparameter].

Ändern Sie die Apache-Konfigurationsdatei httpd.conf

1. mod_rewrite.so geladen

Bestätigen Sie, dass das Modul mod_rewrite.so geladen ist (entfernen Sie das # vor der folgenden Konfiguration):

LoadModule rewrite_module module/mod_rewrite.so

2. Ändern Sie die AllowOverride-Konfiguration

Ändern Sie das Verzeichnis, in dem die .htaccess-Datei gelesen werden muss, und kommentieren Sie das ursprüngliche Verzeichnis aus:

#

Ändern Sie „AllowOverride None“ in „AllowOverride FileInfo Options“,

Die geänderte Konfiguration lautet wie folgt:

#

AllowOverride FileInfoOptions

.htaccess wird basierend auf dem Verzeichnis gesteuert. Der Satz bedeutet, dass das Verzeichnis, in dem die .htaccess-Datei gelesen werden muss, entsprechend dem tatsächlichen Parsing-Verzeichnis von Apache konfiguriert werden sollte. Wenn der virtuelle Host die .htaccess-Steuerung bereitstellt, wurde er im Allgemeinen konfiguriert.

3. .htaccess-Datei hinzufügen Regeln umschreiben

Erstellen Sie eine .htaccess-Datei in dem Verzeichnis, in dem index.php ausgeblendet werden muss, und schreiben Sie den folgenden Regelcode:

RewriteEngine an

#index.php nicht anzeigen

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]

4. Ändern Sie die Projektkonfigurationsdatei

Bearbeiten Sie die Projektkonfigurationsdatei Conf/config.php und konfigurieren Sie den URL-Modus auf 2 (Rewrite-Modus):

‘URL_MODEL’=>2,

Zu diesem Zeitpunkt sind alle Konfigurationen abgeschlossen. Starten Sie nach dem Speichern jeder Konfigurationsdatei den Apache-Server neu und löschen Sie die Projekt-Cache-Datei im Runtime-Verzeichnis. Greifen Sie im Browser auf die Adresse hinter der versteckten index.php zu, um zu testen, ob dies erfolgreich ist:

http://www.baidu.com/html/myapp/Index/index

Wenn der Zugriff erfolgreich ist, ist die Verwendung der Rewrite-Regel der Apache .htaccess-Datei zum Ausblenden der Konfiguration der index.php-Eintragsdatei erfolgreich.

2. Konfigurieren Sie das Routing, um die Länge der URL zu verkürzen.

Fügen Sie den folgenden Code zur allgemeinen Konfigurationsdatei hinzu

<span style="color: #008000">//</span><span style="color: #008000">开启路由器</span>

 'URL_MODEL' => 2,

 'URL_ROUTER_ON' => <span style="color: #0000ff">true</span>,

 'URL_ROUTE_RULES' =>  <span style="color: #0000ff">array</span><span style="color: #000000">(

  </span>'index' => "Home/Index/index",

  'test'  => "Home/Index/test", <br>  <span style="color: #008000">//</span><span style="color: #008000">URL/test.html<br><br>  '/^C_(\d+)$/' => 'Index/index/user?id=:1'<br>  //短链接:http://localhost/index.php/C_9</span>
<span style="color: #000000">
 )</span>, 

3. Pseudostatisch, Suffix .html zur URL hinzufügen

ThinkPHP unterstützt pseudostatische URL-Einstellungen und Sie können das erforderliche URL-Suffix festlegen. Bearbeiten Sie die Projektkonfigurationsdatei Conf/config.php und konfigurieren Sie den Parameter
URL_HTML_SUFFIX wie folgt:
'URL_HTML_SUFFIX' => '.html',

Löschen Sie die Projekt-Cache-Datei im Runtime-Verzeichnis Machen Sie die Konfiguration wirksam. Greifen Sie abschließend im Browser auf die folgende Adresse zu. Der Effekt ist der gleiche:

http://127.0.0.1/html/myapp/index.php/Index/index
http: //127.0.0.1/html/ myapp/index.php/Index/index.shtml

In der Parameterkonfiguration können Sie auch jedes andere erforderliche Suffix konfigurieren. Beachten Sie, dass die Suffixeinstellung das Symbol enthält.
Nach dem Einrichten der Pseudostatik wird empfohlen, die U-Methode zum automatischen Generieren von URLs in der Vorlage zu verwenden, um die URLs überall konsistent zu halten. Weitere Informationen finden Sie unter „ThinkPHP U-Methode zum automatischen Generieren von URLs“.

Tipp:
ThinkPHP pseudo-static hat einen leicht missverstandenen Aspekt: ​​Nach der Konfiguration von pseudo-static generiert das System automatisch URLs wie xxx.html. Die tatsächliche Situation ist nicht so, aber wie oben erwähnt, hat die Frage, ob ein Suffix wie .html vorhanden ist oder nicht, nach der Konfiguration der Pseudostatik den gleichen Effekt wie der URL-Zugriff ohne Suffix. Wenn Sie pseudostatisch verwenden, können Sie daher nur manuell ein statisches Suffix hinzufügen oder die ThinkPHP U-Methode verwenden, um automatisch eine URL-Adresse mit einem Suffix zu generieren. Hier empfiehlt es sich natürlich, die U-Methode zu verwenden, um automatisch ein URL-Format mit einer pseudostatischen Adresse zu generieren.

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