Rumah pembangunan bahagian belakang PHP8 Ajar anda langkah demi langkah cara menyediakan persekitaran php8 (dengan penyelesaian kepada masalah biasa)

Ajar anda langkah demi langkah cara menyediakan persekitaran php8 (dengan penyelesaian kepada masalah biasa)

Oct 21, 2022 pm 04:27 PM
php8

Artikel ini disediakan oleh ruangan tutorial php8 untuk memberi anda pengenalan terperinci tentang cara membina persekitaran php8 langkah demi langkah. Saya harap ia akan membantu semua orang.

1. Muat turun

1. Muat turun https://www.php.net/distributions/php-8.0.0.tar.gz ke setempat, pindahkan dan muat naik fail ke /usr /local /src/

2. wget -P /usr/local/src/ https://www.php.net/distributions/php-8.0.0.tar.gz

2. Buka zip, susun, pasang

1. Buka zip

> cd /usr/local/src/
> tar xzf php-8.0.0.tar.gz
> cd php-8.0.0
Salin selepas log masuk

2. Konfigurasikan parameter kompilasi, rujuk https://www.php.net/manual/zh... Pilih apa yang anda perlukan Pilihan untuk

./configure --prefix=/usr/local/php8 --with-config-file-path=/usr/local/php8/etc --with-fpm-user=www --with-fpm-group=www --with-curl --with-openssl --with-mysqli --with-pdo-mysql --with-iconv --with-mhash --with-zlib  --enable-mbstring  --enable-gd   --enable-gd-jis-conv --enable-sockets --enable-fpm --enable- --enable-xml  --enable-pdo  --enable-cli --enable-pcntl --enable-soap --enable-opcache --enable-fileinfo --disable-rpath --enable-mysqlnd --with-zip --enable-simplexml --with-libxml --with-sqlite3 --with-pdo-sqlite --enable-phar --enable-tokenizer --enable-cgi
Salin selepas log masuk

Soalan 1:

configure: error: Package requirements (libxml-2.0 >= 2.9.0) were not met:
Package 'libxml-2.0', required by 'virtual:world', not found
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables LIBXML_CFLAGS
and LIBXML_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
Salin selepas log masuk

Soalan 1 Penyelesaian:

> yum install libxml2-devel
Salin selepas log masuk

Soalan 2:

configure: error: Package requirements (sqlite3 > 3.7.4) were not met:
Salin selepas log masuk

Soalan 2 Selesai:

> yum install sqlite-devel
Salin selepas log masuk

Masalah 3:

configure: error: Package requirements (libcurl >= 7.29.0) were not met:
Salin selepas log masuk

Masalah 3 Selesai:

> yum install libcurl-devel
Salin selepas log masuk

Masalah 4:

configure: error: Package requirements (libpng) were not met:
Salin selepas log masuk

Masalah 4 Selesai:

> yum install libpng libpng-devel
Salin selepas log masuk

Isu 5:

configure: error: Package requirements (oniguruma) were not met:
Salin selepas log masuk

Isu 5 Selesai:

> cd /usr/local/src/
> wget http://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus/x86_64/RPMS.classic/liboniguruma5-6.9.6-alt1.x86_64.rpm -O liboniguruma5-6.9.6-alt1.x86_64.rpm
> rpm -ivh liboniguruma5-6.9.6-alt1.x86_64.rpm
> wget http://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus/x86_64/RPMS.classic/liboniguruma-devel-6.9.6-alt1.x86_64.rpm -O liboniguruma-devel-6.9.6-alt1.x86_64.rpm 
> rpm liboniguruma-devel-6.9.6-alt1.x86_64.rpmcli
Salin selepas log masuk

Isu 6:

configure: error: Package requirements (libzip >= 0.11 libzip != 1.3.1 libzip != 1.7.0) were not met:
Salin selepas log masuk

Isu 6 Penyelesaian:

> yum install libzip libzip-devel
Salin selepas log masuk

Mengkonfigurasi parameter kompilasi dengan jayanya

+--------------------------------------------------------------------+
| License:                                                           |
| This software is subject to the PHP License, available in this     |
| distribution in the file LICENSE. By continuing this installation  |
| process, you are bound by the terms of this license agreement.     |
| If you do not agree with the terms of this license, you must abort |
| the installation process at this point.                            |
+--------------------------------------------------------------------+
Thank you for using PHP.
Salin selepas log masuk

3. Kompilasi kod sumber

> daripada teras cpu sistem. Terdapat peningkatan tertentu dalam prestasi Biasanya, bilangan teras tidak boleh melebihi separuh

4.

5. Tambah pembolehubah persekitaran
make install
Salin selepas log masuk

6 Dapatkan konfigurasi lalai
[root@54skyer php-8.0.0]# make install
Installing shared extensions:     /usr/local/php8/lib/php/extensions/no-debug-non-zts-20200930/
Installing PHP CLI binary:        /usr/local/php8/bin/
Installing PHP CLI man page:      /usr/local/php8/php/man/man1/
Installing PHP FPM binary:        /usr/local/php8/sbin/
Installing PHP FPM defconfig:     /usr/local/php8/etc/
Installing PHP FPM man page:      /usr/local/php8/php/man/man8/
Installing PHP FPM status page:   /usr/local/php8/php/php/fpm/
Installing phpdbg binary:         /usr/local/php8/bin/
Installing phpdbg man page:       /usr/local/php8/php/man/man1/
Installing PHP CGI binary:        /usr/local/php8/bin/
Installing PHP CGI man page:      /usr/local/php8/php/man/man1/
Installing build environment:     /usr/local/php8/lib/php/build/
Installing header files:          /usr/local/php8/include/php/
Installing helper programs:       /usr/local/php8/bin/
  program: phpize
  program: php-config
Installing man pages:             /usr/local/php8/php/man/man1/
  page: phpize.1
  page: php-config.1
/usr/local/src/php-8.0.0/build/shtool install -c ext/phar/phar.phar /usr/local/php8/bin/phar.phar
ln -s -f phar.phar /usr/local/php8/bin/phar
Installing PDO headers:           /usr/local/php8/include/php/ext/pdo/
Salin selepas log masuk

7 dilaksanakan
> vim /etc/profile # 在文件末尾加入
# PATH=$PATH:/usr/local/php8/bin/
# export PATH
# :wq 保存并退出
> source /etc/profile # 立刻生效配置
> php -v # 获得如下信息

php -v
PHP 8.0.0 (cli) (built: Dec 15 2020 02:46:59) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.0-dev, Copyright (c) Zend Technologies
Salin selepas log masuk

Sahkan skrip automula
// 复制php.ini到编译配置参数指定的目录。php.ini在解压的源码目录里
> cp /usr/local/src/php-8.0.0/php.ini-production /usr/local/php8/etc/php.ini
// 复制一份php-fpm的配置模版文件到同级目录 方便备份和修改
> cp /usr/local/php8/etc/php-fpm.conf.default /usr/local/php8/etc/php-fpm.conf
// 复制一份php-fpm的扩展配置模板文件到同级目录 方便备份和修改
> cp /usr/local/php8/etc/php-fpm.d/www.conf.default /usr/local/php8/etc/php-fpm.d/www.conf
// 复制开启自起脚本到系统启动自动加载脚本目录。fpm/init.d.php-fpm在解压的源码目录里
> cp /usr/local/src/php-8.0.0/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
Salin selepas log masuk

7. Nota tambahan

Beberapa nota pada fail konfigurasi
> chmod +x /etc/init.d/php-fpm # 添加可执行权限
Salin selepas log masuk

php-fpm. .conf ialah fail konfigurasi yang unik untuk PHP-FPM

> service php-fpm start # 检验服务启动
> service php-fpm stop # 检验服务关闭
// 均正常提示
> chkconfig php-fpm on # 设置开机自动执行php-fpm开机自启动脚本
> reboot # 重启,ssh重连
# 重启后
[root@54skyer ~]# netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1097/nginx: master  
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1061/sshd           
tcp        0      0 0.0.0.0:16379           0.0.0.0:*               LISTEN      1090/redis-server 0 
tcp        0      0 127.0.0.1:9000          0.0.0.0:*               LISTEN      1083/php-fpm: maste
Salin selepas log masuk
php.ini ialah fail konfigurasi yang diperlukan dalam semua mod php

Perbezaan antara keduanya ialah php-fpm.conf ialah konfigurasi fail pengurus proses PHP-FPM dan php.ini ialah fail konfigurasi bagi penghurai PHP

Sesetengah versi PHP juga mempunyai fail konfigurasi /fpm.d/www.conf dalam laluan fail konfigurasi

Ini ialah fail sambungan bagi fail yang dikonfigurasikan oleh php-fpm.conf, yang boleh membuka paparan fail php -fpm.conf

Kami boleh menggunakan php-fpm.conf untuk mengkonfigurasi log perlahan

Kami boleh mendayakan fungsi log perlahan.

Atas ialah kandungan terperinci Ajar anda langkah demi langkah cara menyediakan persekitaran php8 (dengan penyelesaian kepada masalah biasa). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah perbezaan antara php5 dan php8 Apakah perbezaan antara php5 dan php8 Sep 25, 2023 pm 01:34 PM

Perbezaan antara php5 dan php8 adalah dari segi prestasi, struktur bahasa, sistem jenis, pengendalian ralat, pengaturcaraan tak segerak, fungsi perpustakaan standard dan keselamatan. Pengenalan terperinci: 1. Peningkatan prestasi Berbanding dengan PHP5, PHP8 mempunyai peningkatan besar dalam prestasi PHP8 memperkenalkan pengkompil JIT, yang boleh menyusun dan mengoptimumkan beberapa kod pelaksanaan frekuensi tinggi, dengan itu meningkatkan kelajuan berjalan; PHP8 memperkenalkan beberapa struktur dan fungsi bahasa baharu PHP8 menyokong parameter yang dinamakan, membenarkan pembangun menghantar nama parameter dan bukannya susunan parameter, dsb.

Bagaimana untuk menambah sambungan mysql ke php8 Bagaimana untuk menambah sambungan mysql ke php8 Oct 07, 2023 pm 03:31 PM

Langkah-langkah untuk menambah sambungan mysql ke php8 ialah: 1. Pasang pustaka klien MySQL 2. Pasang alat pembangunan untuk PHP 8 3. Muat turun kod sumber sambungan MySQL 5. Dayakan Sambungan MySQL; 6. Mulakan Semula Hanya pelayan web.

Penjelasan grafik terperinci tentang kaedah pemasangan dan konfigurasi apache2.4+php8.0 Penjelasan grafik terperinci tentang kaedah pemasangan dan konfigurasi apache2.4+php8.0 Dec 06, 2022 pm 04:53 PM

Artikel ini akan memperkenalkan kepada anda cara memasang apache2.4 dan cara mengkonfigurasi php8.0 Artikel disertakan dengan gambar dan langkah terperinci Mari kita lihat cara memasang dan mengkonfigurasi apache2.4+php8.0~

Bagaimana untuk menyambung ke pangkalan data dalam php8 Bagaimana untuk menyambung ke pangkalan data dalam php8 Nov 16, 2023 pm 02:41 PM

PHP8 boleh menggunakan mysqli dan PDO untuk menyambung ke pangkalan data. Pengenalan terperinci: 1. Gunakan mysqli untuk menyambung ke pangkalan data dengan memasukkan nama pelayan pangkalan data, nama pengguna, kata laluan dan nama pangkalan data untuk disambungkan. Kemudian, gunakan atribut `connect_error` untuk menyemak sama ada sambungan berjaya dan mengeluarkan mesej ralat jika sambungan gagal. Akhir sekali, tutup sambungan dengan memanggil kaedah `close()` 2. Gunakan PDO untuk menyambung ke pangkalan data, dan sambung dengan memasukkan nama pelayan pangkalan data, kata laluan dan nama pangkalan data, dsb.

Bagaimana untuk menukar jenis data php8 Bagaimana untuk menukar jenis data php8 Nov 16, 2023 pm 02:51 PM

Kaedah jenis data php8 termasuk menukar rentetan kepada integer, menukar integer kepada rentetan, menukar rentetan kepada nombor titik terapung, menukar nombor titik terapung kepada rentetan, menukar tatasusunan kepada rentetan, menukar rentetan kepada tatasusunan, menukar nilai Boolean kepada integer, penukaran integer kepada Nilai boolean dan penentuan jenis pembolehubah dan penukaran. Pengenalan terperinci: 1. Menukar rentetan kepada integer termasuk fungsi intval() dan (int) penukaran jenis paksa 2. Menukar integer kepada rentetan termasuk fungsi strval() dan (rentetan) penukaran jenis paksa; rentetan kepada apungan Mata dan sebagainya.

Pandangan mendalam tentang JIT dalam PHP 8 Pandangan mendalam tentang JIT dalam PHP 8 Apr 25, 2022 pm 08:46 PM

Artikel ini akan membawa anda melalui JIT dalam PHP 8 dan bercakap tentang cara JIT mengambil bahagian dalam proses tafsiran saya harap ia akan membantu semua orang.

Apakah peningkatan prestasi yang ada pada php8? Apakah peningkatan prestasi yang ada pada php8? Dec 21, 2023 pm 02:44 PM

Peningkatan prestasi php8 termasuk: 1. Pengenalan pengkompil JIT; 2. Pengoptimuman panggilan fungsi; . Memperbaik pemprosesan tatasusunan; 8. Memperkenalkan mekanisme pengurusan memori baharu; Pengenalan terperinci: 1. Pengenalan pengkompil JIT PHP8 memperkenalkan pengkompil JIT, yang merupakan teknologi kompilasi dinamik yang boleh menukar kod PHP kepada kod mesin untuk pelaksanaan yang lebih cekap, dsb.

Apakah ciri yang ada pada php8? Apakah ciri yang ada pada php8? Dec 21, 2023 pm 02:54 PM

Ciri-ciri php8: 1. Pengkompil JIT; 3. Jenis kesatuan; ; 10. Penambahbaikan konsisten. Pengenalan terperinci: 1. Pengkompil JIT, PHP8 memperkenalkan teknologi kompilasi tepat dalam masa, yang menyusun kod PHP ke dalam kod mesin asli, dengan itu meningkatkan kelajuan pelaksanaan program 2. Parameter yang dinamakan, PHP8 menyokong parameter yang dinamakan, membenarkan penggunaan nama parameter semasa memanggil fungsi dll.

See all articles