Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mengalih keluar .php dan .html Sambungan daripada URL Menggunakan NGINX?

Bagaimana untuk Mengalih keluar .php dan .html Sambungan daripada URL Menggunakan NGINX?

Patricia Arquette
Patricia Arquetteasal
2024-11-16 19:42:031029semak imbas

How to Remove .php and .html Extensions from URLs Using NGINX?

Cara Mengalih Keluar Kedua-dua .php dan .html Sambungan daripada URL Menggunakan NGINX

Pengenalan

Apabila menyiarkan kandungan web, adalah wajar untuk menyembunyikan sambungan fail daripada URL atas sebab estetik atau keselamatan. Ini boleh dicapai menggunakan NGINX, perisian pelayan web yang popular.

Masalah

Matlamatnya adalah untuk mengalih keluar kedua-dua sambungan .php dan .html daripada URL sambil mengekalkan fungsinya . Sebagai contoh, URL http://www.mydomain.com/indexhtml.html hendaklah dipaparkan sebagai http://www.mydomain.com/indexhtml dan http://www.mydomain.com/indexphp.php hendaklah dipaparkan sebagai http://www.mydomain.com/indexphp.

Penyelesaian

Konfigurasi NGINX berikut boleh digunakan untuk mencapai hasil yang diinginkan:

location / {
    try_files $uri $uri.html $uri/ @extensionless-php;
    index index.html index.htm index.php;
}

location ~ \.php$ {
    try_files $uri =404;
}

location @extensionless-php {
    rewrite ^(.*)$ .php last;
}

Penjelasan

  • lokasi /: Blok ini digunakan untuk semua permintaan ke direktori akar tapak web.
  • try_files: Arahan ini cuba mencari fail yang ditentukan oleh $uri. Jika fail itu tidak wujud, ia cuba mencari $uri.html atau direktori dengan nama yang sama. Jika kedua-duanya tidak wujud, ia akan menghantar permintaan kepada blok lokasi @extensionless-php.
  • indeks: Arahan ini menentukan fail lalai untuk disampaikan apabila $uri menghala ke direktori.
  • lokasi ~ .php$: Blok ini sepadan dengan permintaan yang berakhir dengan .php.
  • try_files $uri =404: Arahan ini mengembalikan ralat 404 jika URI ialah fail .php (tidak termasuk direktori).
  • lokasi @extensionless-php: Blok ini adalah tempat pendawaian semula berlaku.
  • tulis semula: Arahan ini menulis semula permintaan kepada URI dengan sambungan .php ditambahkan. Bendera terakhir menghalang penulisan semula selanjutnya.

Dengan melaksanakan konfigurasi ini, kedua-dua sambungan .php dan .html akan dialih keluar secara automatik daripada URL, memberikan pengalaman penyemakan imbas yang bersih dan mesra pengguna.

Atas ialah kandungan terperinci Bagaimana untuk Mengalih keluar .php dan .html Sambungan daripada URL Menggunakan NGINX?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn