linux如何安装php

Mar 17, 2018 am 10:46 AM
linux php bagaimana

本文我们主要和大家分享linux如何安装php,本文以图文的形式和大家分享,希望能帮助到大家。

1.从php官网下载相应的版本

因为php下载页面只有最近的几个版本,下载比较老的版本在下载页面已经找不到了,只能手动通过下面的url来下载,

http://cn.php.net/distributions/php-5.3.9.tar.bz2,此页面里会列出一些老的版本,此处使用的是5.3版本,下载的是gz格式的


2.安装php

将tar包解压,进入解压包目录-执行命令:./configure --prefix=/opt/local/php ,“/opt/local/php”是安装路径,可以改成自己希望的安装路径。

(1)此处可能会提示缺少一些必须的插件,此时利用yum命令进行安装,比如最可能报的错误:configure error xml2-config not found. please check your libxml2 installation,此时执行命令:yum -y install libxml2 libxml2-devel,安装相应插件,以此类推

所有插件安装完成后,再次执行

<span style="font-size: 14px;">./configure --prefix=/opt/local/php<br/></span>
Salin selepas log masuk


(2)此处如果是要安装php-fpm的功能的话需要yum安装更多插件,例如:

<span style="font-size: 14px;">yum -y install openssl openssl-devel bzip2 bzip2-devel curl curl-devel readline-devel fcgi php-mcrypt libmcrypt libmcrypt-devel<br/></span>
Salin selepas log masuk


其中安装php-mcrypt libmcrypt libmcrypt-devel时可能会提示找不到包,这时要通过更新源解决,具体命令如下:

<span style="font-size: 14px;">yum -y install epel-release<br/>yum update<br/></span>
Salin selepas log masuk

其中,update执行了两次才成功,之后再执行configure

./configure --prefix=/opt/local/php5.3.29 --with-config-file-path=/etc --enable-inline-optimization --disable-debug --disable-rpath --enable-shared --enable-opcache --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-gettext --enable-mbstring --with-iconv --with-mcrypt --with-mhash --with-openssl --enable-bcmath --enable-soap --with-libxml-dir --enable-pcntl --enable-shmop --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-sockets --with-curl --with-zlib --enable-zip --with-bz2 --with-readline --without-sqlite3 --without-pdo-sqlite --with-pear

通过后执行make

此时可能会出现以下提示

PEAR package PHP_Archive not installed: generated phar will require PHP&#39;s phar extension be enabled.
Salin selepas log masuk

此处可暂进忽略,等之后再行安装,再次在php目录执行make all install

如果安装了php-fpm,则还需要执行以下命令,将php/etc目录下的配置文件拷贝一份

cp etc/php-fpm.conf.default etc/php-fpm.conf
Salin selepas log masuk

将php/lib/php.ini拷贝到/etc/下

3.初装phar

这时可以执行

<span style="font-size: 14px;">wget http://pear.php.net/go-pear.phar<br/></span>
Salin selepas log masuk

之后再执行

/opt/local/php/bin/php /opt/local/go-pear.phar
Salin selepas log masuk

在出现的提示后,选1,选择phar安装目录,然后一路回车进行安装即可

最后制作php软链,让php全局可用

<span style="font-size: 14px;">ln -s /opt/local/php/bin/php /usr/bin/php<br/></span>
Salin selepas log masuk

4.验证

执行php -v和sbin/php-fpm -v查看php版本以验证php是否已安装



5.启动php-fpm

php/sbin/php-fpm
Salin selepas log masuk

INT, TERM 立刻终止

QUIT 平滑终止

USR1 重新打开日志文件

USR2 平滑重载所有worker进程并重新载入配置和二进制模块

示例:

php-fpm 关闭:

kill -INT `cat /opt/local/php/var/run/php-fpm.pid`

php-fpm 重启:

kill -USR2 `cat /opt/local/php/var/run/php-fpm.pid`

如果找不到php-fpm.pid文件,可通过查找php-fpm进程号进行重启和关闭

例如

<span style="font-size: 14px;">[root@SH-DEV local]# ps -aux|grep php-fpm<br/>root     141735  0.0  0.0 201840  3892 ?       <br/> Ss   16:27   0:00 php-fpm: master process (/opt/local/php5.3.29/etc/php-fpm.conf)<br/><br/>kill -USR2 141735<br/></span>
Salin selepas log masuk


6.修改php-fpm配置

(1)如果在nginx.conf中使用了fastcgi_pass unix:/tmp/php-cgi.sock,则需要修改php-fpm.conf,找到如下码段:

<span style="font-size: 14px;">; The address on which to accept FastCGI requests.<br/>; Valid syntaxes are:<br/>;   &#39;ip.add.re.ss:port&#39;    - to listen on a TCP socket to a specific address on<br/>;                            a specific port;<br/>;   &#39;port&#39;                 - to listen on a TCP socket to all addresses on a<br/>;                            specific port;<br/>;   &#39;/path/to/unix/socket&#39; - to listen on a unix socket.<br/>; Note: This value is mandatory.<br/>;listen = 127.0.0.1:9000<br/>listen = /tmp/php-cgi.sock<br/><br/>; Set listen(2) backlog. A value of &#39;-1&#39; means unlimited.<br/>; Default Value: 128 (-1 on FreeBSD and OpenBSD)<br/>;listen.backlog = -1<br/><br/>; Set permissions for unix socket, if one is used. In Linux, read/write<br/>; permissions must be set in order to allow connections from a web server. Many<br/>; BSD-derived systems allow connections regardless of permissions.<br/>; Default Values: user and group are set as the running user<br/>;                 mode is set to 0660<br/>listen.owner = nobody<br/>listen.group = nobody<br/>listen.mode = 0660<br/></span>
Salin selepas log masuk

将原listen和listen.ownerlisten.group段做如上修改,其中listen.ownerlisten.group为nginx启动用户名,如此处不修改,会提示

nginx error connect to php-fpm.sock failed (13: Permission denied)
Salin selepas log masuk

当然此处如果将sock放在内存中/dev/shm/php-fpm.sock会更快

(2)修改php-fpm线程数

<span style="font-size: 14px;">; Per pool prefix<br/>; It only applies on the following directives:<br/>; - &#39;slowlog&#39;<br/>; - &#39;listen&#39; (unixsocket)<br/>; - &#39;chroot&#39;<br/>; - &#39;chdir&#39;<br/>; - &#39;php_values&#39;<br/>; - &#39;php_admin_values&#39;<br/>;   dynamic - the number of child processes are set dynamically based on the<br/>;             following directives. With this process management, there will be<br/>;             always at least 1 children.<br/>;             pm.max_children      - the maximum number of children that can<br/>;                                    be alive at the same time.<br/>;             pm.start_servers     - the number of children created on startup.<br/>;             pm.min_spare_servers - the minimum number of children in &#39;idle&#39;<br/>;                                    state (waiting to process). If the number<br/>;                                    of &#39;idle&#39; processes is less than this<br/>;                                    number then some children will be created.<br/>;             pm.max_spare_servers - the maximum number of children in &#39;idle&#39;<br/>;                                    state (waiting to process). If the number<br/>;                                    of &#39;idle&#39; processes is greater than this<br/>;                                    number then some children will be killed.<br/>;  ondemand - no children are created at startup. Children will be forked when<br/>;             new requests will connect. The following parameter are used:<br/>;             pm.max_children           - the maximum number of children that<br/>;                                         can be alive at the same time.<br/>;             pm.process_idle_timeout   - The number of seconds after which<br/>;                                         an idle process will be killed.<br/>; Note: This value is mandatory.<br/>pm = dynamic<br/>#如何控制子进程,选项有static和dynamic。如果选择static,则由pm.max_children指定固定的子进程数。如果选择dynamic,则由下面的参数决定<br/><br/>; The number of child processes to be created when pm is set to &#39;static&#39; and the<br/>; maximum number of child processes when pm is set to &#39;dynamic&#39; or &#39;ondemand&#39;.<br/>; This value sets the limit on the number of simultaneous requests that will be<br/>; served. Equivalent to the ApacheMaxClients directive with mpm_prefork.<br/>; Equivalent to the PHP_FCGI_CHILDREN environment variable in the original PHP<br/>; CGI. The below defaults are based on a server without much resources. Don&#39;t<br/>; forget to tweak pm.* to fit your needs.<br/>; Note: Used when pm is set to &#39;static&#39;, &#39;dynamic&#39; or &#39;ondemand&#39;<br/>; Note: This value is mandatory.<br/>pm.max_children = 8<br/>#子进程最大数<br/><br/>; The number of child processes created on startup.<br/>; Note: Used only when pm is set to &#39;dynamic&#39;<br/>; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2<br/>pm.start_servers = 8<br/>#启动时的进程数<br/><br/><br/>; The desired minimum number of idle server processes.<br/>; Note: Used only when pm is set to &#39;dynamic&#39;<br/>; Note: Mandatory when pm is set to &#39;dynamic&#39;<br/>pm.min_spare_servers = 1<br/>#保证空闲进程数最小值,如果空闲进程小于此值,则创建新的子进程<br/><br/>; The desired maximum number of idle server processes.<br/>; Note: Used only when pm is set to &#39;dynamic&#39;<br/>; Note: Mandatory when pm is set to &#39;dynamic&#39;<br/>pm.max_spare_servers = 8<br/>#保证空闲进程数最大值,如果空闲进程大于此值,此进行清理<br/></span>
Salin selepas log masuk

相关推荐:

Linux上安装php-mysqlnd扩展实例

mac安装php开发环境方法实例分享

最详细的linux安装php过程

Atas ialah kandungan terperinci linux如何安装php. 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

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

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)

PHP dan Python: Paradigma yang berbeza dijelaskan PHP dan Python: Paradigma yang berbeza dijelaskan Apr 18, 2025 am 12:26 AM

PHP terutamanya pengaturcaraan prosedur, tetapi juga menyokong pengaturcaraan berorientasikan objek (OOP); Python menyokong pelbagai paradigma, termasuk pengaturcaraan OOP, fungsional dan prosedur. PHP sesuai untuk pembangunan web, dan Python sesuai untuk pelbagai aplikasi seperti analisis data dan pembelajaran mesin.

PHP: Pengenalan kepada bahasa skrip sisi pelayan PHP: Pengenalan kepada bahasa skrip sisi pelayan Apr 16, 2025 am 12:18 AM

PHP adalah bahasa skrip sisi pelayan yang digunakan untuk pembangunan web dinamik dan aplikasi sisi pelayan. 1.Php adalah bahasa yang ditafsirkan yang tidak memerlukan kompilasi dan sesuai untuk perkembangan pesat. 2. Kod PHP tertanam dalam HTML, menjadikannya mudah untuk membangunkan laman web. 3. PHP memproses logik sisi pelayan, menghasilkan output HTML, dan menyokong interaksi pengguna dan pemprosesan data. 4. PHP boleh berinteraksi dengan pangkalan data, penyerahan borang proses, dan melaksanakan tugas-tugas sampingan pelayan.

Memilih antara php dan python: panduan Memilih antara php dan python: panduan Apr 18, 2025 am 12:24 AM

PHP sesuai untuk pembangunan web dan prototaip pesat, dan Python sesuai untuk sains data dan pembelajaran mesin. 1.Php digunakan untuk pembangunan web dinamik, dengan sintaks mudah dan sesuai untuk pembangunan pesat. 2. Python mempunyai sintaks ringkas, sesuai untuk pelbagai bidang, dan mempunyai ekosistem perpustakaan yang kuat.

Konfigurasi komputer apa yang diperlukan untuk vscode Konfigurasi komputer apa yang diperlukan untuk vscode Apr 15, 2025 pm 09:48 PM

Keperluan Sistem Kod Vs: Sistem Operasi: Windows 10 dan ke atas, MACOS 10.12 dan ke atas, pemproses pengedaran Linux: minimum 1.6 GHz, disyorkan 2.0 GHz dan ke atas memori: minimum 512 MB, disyorkan 4 GB dan ke atas ruang penyimpanan: minimum 250 mb, disyorkan 1 GB dan di atas keperluan lain:

Mengapa menggunakan PHP? Kelebihan dan faedah dijelaskan Mengapa menggunakan PHP? Kelebihan dan faedah dijelaskan Apr 16, 2025 am 12:16 AM

Manfaat utama PHP termasuk kemudahan pembelajaran, sokongan pembangunan web yang kukuh, perpustakaan dan kerangka yang kaya, prestasi tinggi dan skalabilitas, keserasian silang platform, dan keberkesanan kos. 1) mudah dipelajari dan digunakan, sesuai untuk pemula; 2) integrasi yang baik dengan pelayan web dan menyokong pelbagai pangkalan data; 3) mempunyai rangka kerja yang kuat seperti Laravel; 4) Prestasi tinggi dapat dicapai melalui pengoptimuman; 5) menyokong pelbagai sistem operasi; 6) Sumber terbuka untuk mengurangkan kos pembangunan.

PHP vs Python: Gunakan Kes dan Aplikasi PHP vs Python: Gunakan Kes dan Aplikasi Apr 17, 2025 am 12:23 AM

PHP sesuai untuk pembangunan web dan sistem pengurusan kandungan, dan Python sesuai untuk sains data, pembelajaran mesin dan skrip automasi. 1.PHP berfungsi dengan baik dalam membina laman web dan aplikasi yang cepat dan berskala dan biasanya digunakan dalam CMS seperti WordPress. 2. Python telah melakukan yang luar biasa dalam bidang sains data dan pembelajaran mesin, dengan perpustakaan yang kaya seperti numpy dan tensorflow.

PHP dan Python: menyelam mendalam ke dalam sejarah mereka PHP dan Python: menyelam mendalam ke dalam sejarah mereka Apr 18, 2025 am 12:25 AM

PHP berasal pada tahun 1994 dan dibangunkan oleh Rasmuslerdorf. Ia pada asalnya digunakan untuk mengesan pelawat laman web dan secara beransur-ansur berkembang menjadi bahasa skrip sisi pelayan dan digunakan secara meluas dalam pembangunan web. Python telah dibangunkan oleh Guidovan Rossum pada akhir 1980 -an dan pertama kali dikeluarkan pada tahun 1991. Ia menekankan kebolehbacaan dan kesederhanaan kod, dan sesuai untuk pengkomputeran saintifik, analisis data dan bidang lain.

Impak PHP: Pembangunan Web dan seterusnya Impak PHP: Pembangunan Web dan seterusnya Apr 18, 2025 am 12:10 AM

Phphassignificantelympactedwebdevelopmentandextendsbeyondit.1) itpowersmajorplatformslikeworderpressandexcelsindatabaseIntions.2) php'SadaptabilityAldoStoScaleforlargeapplicationFrameworksLikelara.3)

See all articles