Rumah > pembangunan bahagian belakang > masalah PHP > Mari bercakap tentang cara untuk melumpuhkan paparan kod dalam PHP (contoh kod)

Mari bercakap tentang cara untuk melumpuhkan paparan kod dalam PHP (contoh kod)

PHPz
Lepaskan: 2023-04-03 20:28:01
asal
1260 orang telah melayarinya

PHP ialah bahasa pengaturcaraan sebelah pelayan yang biasa digunakan yang sering digunakan bersama-sama dengan bahasa bahagian hadapan seperti HTML dan CSS untuk membina pelbagai tapak web dan aplikasi. Semasa proses pembangunan, pengaturcara selalunya perlu menyemak kod yang ditulis oleh mereka sendiri atau orang lain untuk nyahpepijat atau mengubah suainya. Walau bagaimanapun, kadangkala, atas sebab seperti melindungi keselamatan kod atau mengekalkan keselamatan pelayan, adalah perlu untuk melarang pengguna atau program tertentu daripada melihat kod PHP.

Jadi, bagaimana untuk menulis kod untuk melarang melihat kod dalam PHP?

Pertama sekali, untuk memastikan fungsi melarang melihat kod PHP, adalah disyorkan untuk menyimpan kod dalam folder selain daripada direktori akar tapak web. Kerana apabila mengakses laman web, semua fail dalam direktori akar laman web boleh diakses secara terus Jika ia disimpan dalam direktori akar bukan laman web, keselamatan boleh ditingkatkan.

Kedua, dalam kod PHP, kita boleh menggunakan kaedah berikut untuk melarang melihat kod:

Kaedah 1: Larang melalui fail konfigurasi Apache

Boleh digunakan dalam Apache's Add kod berikut kepada fail konfigurasi (fail httpd.conf):

<Files *.php>
   deny from all
</Files>
Salin selepas log masuk

Maksud kod ini ialah: melarang semua orang mengakses semua fail PHP. Kaedah ini sangat berkesan kerana Apache akan menyemak fail httpd.conf terlebih dahulu sebelum melaksanakan permintaan fail Menetapkannya di sini boleh memastikan bahawa semua fail PHP akan dilarang daripada dilihat. Kelemahannya ialah jika anda perlu melihat kod, anda perlu mengubah suai konfigurasi fail, yang lebih rumit.

Kaedah 2: Masukkan kod PHP ke dalam kelas

Memasukkan kod PHP ke dalam kelas boleh melarang akses bukan objek kepada kod dengan berkesan. Kodnya adalah seperti berikut:

class SecretCode {
   private $code = "这里是php代码";
   function showCode($password) {
      if($password != "mypassword") {
         exit("访问被拒绝");
      }
      echo "$this->code";
   }
}

$myCode = new SecretCode();
$myCode->showCode("mypassword");
Salin selepas log masuk

Dalam kod di atas, kod PHP dikapsulkan dalam kelas, dan kod itu hanya akan dipaparkan apabila kaedah showCode() dipanggil dan kata laluan yang betul dimasukkan . Kelebihan kaedah ini ialah ia boleh mengawal keselamatan kod dengan berkesan. Kelemahannya ialah bagi sesetengah orang, memerlukan operasi kata laluan tambahan mungkin kelihatan menyusahkan dan kos pembangunan agak tinggi.

Kaedah 3: Gunakan .htaccess untuk melarang

Menggunakan fail .htaccess boleh mengawal akses fail dengan sangat fleksibel tanpa mengubah suai fail konfigurasi pelayan. Masukkan kod berikut ke dalam fail .htaccess:

<Files *.php>
  Order deny,allow
  Deny from all
</Files>
Salin selepas log masuk

Maksud kod ini ialah: melarang semua orang mengakses semua fail PHP. Kelebihan kaedah ini ialah ia boleh mengawal kebenaran akses fail secara fleksibel dan tidak akan menjejaskan operasi laman web atau pelayan lain. Kelemahannya ialah ia mungkin bercanggah dengan tetapan lain dan memerlukan perhatian.

Ringkasan:

Oleh kerana PHP ialah bahasa sumber terbuka, masih terdapat beberapa kesukaran dalam perlindungan program. Walau bagaimanapun, kami boleh meningkatkan keselamatan kod melalui beberapa kaedah untuk melindungi fail PHP daripada diminta atau dikendalikan oleh pengguna atau program yang tidak dibenarkan. Anda boleh memilih kaedah yang sesuai untuk menggunakan tiga kaedah di atas mengikut keperluan projek anda sendiri untuk mencapai hasil yang lebih baik.

Atas ialah kandungan terperinci Mari bercakap tentang cara untuk melumpuhkan paparan kod dalam PHP (contoh kod). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan