Saya mendapat banyak ralat berkaitan kebenaran - menggunakan projek laravel WSL2. Masalahnya secara khusus berkaitan dengan pdo_mysql
P粉322106755
2023-08-17 14:14:36
<p>Beberapa kisah belakang -</p>
<p>Saya mempunyai komputer riba kerja dan projek saya berjalan dengan baik padanya. Saya telah berhenti kerja dan mula mengembangkan perniagaan saya, yang kini telah berkembang ke saiz di mana saya tidak lagi boleh memegang pekerjaan sepenuh masa pada masa yang sama. Jadi saya jelas perlu memulangkan komputer riba kerja saya, iaitu Macbook. Komputer rumah saya ialah komputer desktop Windows. </p>
<p>Saya telah menyediakan persekitaran pembangunan saya menggunakan WSL2 Ubuntu 22.04 dan semuanya sedang berjalan dengan baik kecuali tiada imej atau CSS dipaparkan semasa memuatkan projek. Saya telah mengecilkan masalah itu kepada pdo_mysql yang nampaknya tidak berfungsi (walaupun saya secara teknikalnya front-end, back-end masih mengelirukan saya, jadi saya mungkin salah). </p>
<p>Saya telah cuba memasang semula pdo_mysql dan cuba menukar kebenaran pada fail. </p>
<p>Juga - pada mulanya saya menggunakan symlink antara pelayan Windows dan Linux tempatan saya untuk mencipta persekitaran kerja baharu saya, tetapi ini menyebabkan kelewatan besar dan menjadikannya hampir tidak boleh digunakan (saya tidak pernah selesai menyediakannya sepenuhnya, hampir mencapai kedudukan yang sama seperti sekarang). Jadi saya mengalih keluar pautan dengan memadam fail pautan pada pelayan Linux, kemudian memadamkan projek GitHub terus pada pelayan Linux dan mengklon semula. Saya tidak tahu sama ada ini maklumat penting. </p>
<p>Walaupun saya telah mencuba menetapkan kebenaran untuk pengguna Linux saya untuk keseluruhan projek, saya masih mendapat banyak ralat kebenaran. </p>
<p>Apabila saya menjalankan <code>php -i |. grep extension_dir</code>, saya mendapat ralat berikut: </p>
<pre class="brush:php;toolbar:false;">fantasyroad@Louie:~$ php -i | grep extension_dir
Amaran PHP: Permulaan PHP: Tidak dapat memuatkan perpustakaan dinamik 'pdo_mysql' (cuba: /usr/lib/php/20210902/pdo_mysql (/usr/lib/php/20210902/pdo_mysql: tidak boleh membuka fail objek kongsi: Tiada fail atau direktori sedemikian ), /usr/lib/php/20210902/pdo_mysql.so (/usr/lib/php/20210902/pdo_mysql.so: undefined symbol: pdo_parse_params)) dalam Tidak diketahui pada baris 0
extension_dir => /usr/lib/php/20210902 =>
<p>Edit: Hanya untuk jelas - fail pdo_mysql terletak di /usr/lib/php/20210902/</p>
Saya menyelesaikan masalah ini dengan menyahpasang semua perkara berkaitan php dan memasang semula secara manual satu per satu.