Saya tidak boleh menyambung ke redis menggunakan php
P粉465287592
P粉465287592 2023-09-01 15:37:59
0
2
685
<p>Saya tidak boleh menyambung ke redis menggunakan php. Saya menyediakan persekitaran dengan docker dan cuba menyambung redis dari php menggunakan bekas php dan redis, tetapi ia gagal. Saya mendapat ralat berikut. </p> <pre class="brush:php;toolbar:false;">PHP Amaran: PHP Startup: Tidak dapat memuatkan perpustakaan dinamik 'redis.so' (cuba: /usr/lib/php/20190902/redis.so (/ usr/lib/php/20190902/redis.so: simbol tidak ditentukan: php_json_decode_ex), /usr/lib/php/20190902/redis.so.so (/usr/lib/php/20190902/redis.so.so: tidak boleh dibuka fail objek kongsi: Tiada fail atau direktori sedemikian)) dalam Tidak diketahui pada baris 0 Notis PHP: session_start(): Redis tidak tersedia semasa membuat session_id dalam /var/www/html/index.php pada baris 2 Amaran PHP: session_start(): Gagal membaca data sesi: redis (path: tcp://localhost:6379) dalam /var/www/html/index.php pada baris 2 rentetan(0) "" save_handler=redis save_path=tcp://localhost:6379 session_id=</pra> <p>Ini ialah fail php yang dilaksanakan sebagai tindak balas kepada ralat. </p> <pre class="brush:php;toolbar:false;"><?php session_start(); ini_set('session.cookie-domain', 'localhost'); var_dump(id_session()); echo "save_handler=" ini_get("session.save_handler") . echo "save_path=" ini_get("session.save_path") . echo "session_id=" session_id() . $_SESSION['libname'] = "PhpRedis"; ?></pra> <p>Sebahagian daripada fail php.ini. </p> <pre class="brush:php;toolbar:false;">[Sesi] ; Pengendali digunakan untuk menyimpan/mendapat semula data. ; http://php.net/session.save-handler session.save_handler = redis session.save_path = "tcp://localhost:6379" ;mengesahkan modul sambungan redis sambungan=redis.so ; tamat masa redis lalai redis.timeout = 5</pre> <p>Jika saya kehilangan sebarang maklumat yang diperlukan untuk menyelesaikan isu ini, sila beritahu saya. Terima kasih terlebih dahulu. </p> <p>Lampiran: Saya menaip ping dan ia mengembalikan pong. Saya boleh menyambung ke redis dari bekas php menggunakan redis-cli. Di samping itu, berikut ialah laluan ke redis.so. <code>~/usr/lib/php/20190902/redis.so</code> Laluan ke php.ini (pelayan yang digunakan ialah apache2). <code>~/etc/php/7.4/apache2/php.ini</code></p>
P粉465287592
P粉465287592

membalas semua(2)
P粉116631591
  1. Periksa sama ada lobak berfungsi sebagai satu pasukanredis-cli ping Jawapan 乒乓

  2. Pastikan konfigurasi PHP anda mengandungi tetapan yang betul untuk sambungan Redis. Semak php.ini文件是否指定了redis.so untuk laluan yang betul dan konfigurasi lain yang diperlukan.

P粉920199761

Saya telah melaraskan fail Php.ini seperti berikut.
Sebelum pelarasan

session.save_path = "tcp://localhost:6379"

Selepas pelarasan

session.save_path = "tcp://redis:6379"

Terima kasih.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan