Rumah >rangka kerja php >ThinkPHP >Bagaimana untuk menyelesaikan ralat semasa memasang thinkphp

Bagaimana untuk menyelesaikan ralat semasa memasang thinkphp

PHPz
PHPzke hadapan
2023-05-29 23:49:121918semak imbas

1 Mesej ralat

Apabila memasang ThinkPHP, mesej ralat berikut sering muncul:

  1. Tidak Dapat Dibuka fail termampat (sekatan open_basedir)

  2. Amaran digesa apabila program dilaksanakan:

Amaran: memerlukan(D:wampwwwthinkphpindex.php) : gagal membuka strim: Tiada fail atau direktori sedemikian dalam D:wampwwwthinkphptest.php pada baris 2
  1. Apabila program dilaksanakan, mesej ralat digesa:

Ralat maut: Kelas 'PDO' tidak ditemui dalam /path/to/thinkphp/ThinkPHP/Library/Think/Db/Driver.class.php pada baris 34

2. Penyelesaian

  1. Tidak dapat membuka fail termampat

Ini disebabkan oleh pengehadan open_basedir sistem. Kami tidak dapat menyahmampat fail kerana fungsi sistem dalam PHP telah dimatikan atas sebab keselamatan. Kita boleh menyelesaikan masalah ini dengan dua cara berikut.

Kaedah 1: Ubah suai fail konfigurasi php.ini

Buka folder konfigurasi apache (contohnya: D:wampbinapacheApache2.2.21conf), cari php.ini, dan dalam php Cari open_basedir dalam .ini dan ubah suainya kepada:

open_basedir = "c:/wwwroot;c:/wwwroot/thinkphp"

di mana c:/wwwroot ialah direktori akar tapak web , c: /wwwroot/thinkphp ialah laluan rangka kerja ThinkPHP.

Kaedah 2: Ubah suai fail konfigurasi httpd.conf Apache

Buka folder konfigurasi apache, cari httpd.conf, dan tambah konfigurasi berikut pada penghujung:

2f8b21a81933812c963098c160b2410c

php_admin_value open_basedir "D:\wamp\www;D:\wamp\www\thinkphp"

bb15ed4aadeed04b3991578461de0768

Nota: Item konfigurasi php_admin_value open_basedir mesti ditakrifkan dalam nod Direktori.

Lengkapkan operasi di atas, mulakan semula Apache, dan masalah akan diselesaikan.

  1. Penggera digesa apabila program dilaksanakan

Ini kerana atur cara tidak menemui fail index.php. Kita perlu menetapkan laluan dalam pernyataan memerlukan dalam fail test.php ke laluan fail index.php, seperti berikut:

require_once('D:/wamp/www/thinkphp/index.php ');

Di mana D:/wamp/www ialah direktori akar tapak web dan D:/wamp/www/thinkphp ialah laluan rangka kerja ThinkPHP.

  1. Apabila program dilaksanakan, ralat digesa

Ini disebabkan oleh PHP tidak memasang sambungan PDO. Kita perlu mencari sambungan=php_pdo_mysql.dll baris dalam php.ini, keluarkan ";" di hadapan, dan simpan fail konfigurasi php.ini. Kemudian cari extension_dir dari php.ini dan sahkan sama ada terdapat fail php_pdo_mysql.dll dalam direktori ini Jika tidak, anda perlu memuat turun dan memasang sambungan PDO (seperti php_pdo_mysql.dll).

Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan ralat semasa memasang thinkphp. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam