百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

AlpineLinux安装部署php8 linux apache php安装与配置

suiw9 2024-11-14 19:10 67 浏览 0 评论

搜索仓库,php有两个版本,php82-8.2.24-r0php83-8.3.12-r0

apk search php

运行结果:

localhost:~# apk search php
cacti-php-1.2.27-r0
grpc-plugins-1.62.1-r0
icinga-php-library-0.13.0-r0
icinga-php-library-doc-0.13.0-r0
icinga-php-thirdparty-0.12.0-r0
icinga-php-thirdparty-doc-0.12.0-r0
mongo-php-library-1.18.0-r0
mongo-php-library-doc-1.18.0-r0
perl-php-serialization-0.34-r6
perl-php-serialization-doc-0.34-r6
php-brotli-1-r2
php-pecl-amqp-1-r3
php-pecl-apcu-1-r1
php-pecl-decimal-1-r3
php-pecl-igbinary-1-r1
php-pecl-imagick-1-r0
php-pecl-memcache-1-r1
php-pecl-memcached-1-r1
php-pecl-msgpack-1-r1
php-pecl-rdkafka-1-r3
php-pecl-redis-1-r1
php-pecl-ssh2-1-r1
php-pecl-uploadprogress-1-r1
php-pecl-xdebug-1-r1
php-pecl-xhprof-1-r1
php-pecl-yaml-1-r1
php82-8.2.24-r0
php82-apache2-8.2.24-r0
php82-bcmath-8.2.24-r0
php82-bz2-8.2.24-r0
php82-calendar-8.2.24-r0
php82-cgi-8.2.24-r0
php82-common-8.2.24-r0
php82-ctype-8.2.24-r0
php82-curl-8.2.24-r0
php82-dba-8.2.24-r0
php82-dbg-8.2.24-r0
php82-dev-8.2.24-r0
php82-doc-8.2.24-r0
php82-dom-8.2.24-r0
php82-embed-8.2.24-r0
php82-enchant-8.2.24-r0
php82-exif-8.2.24-r0
php82-ffi-8.2.24-r0
php82-fileinfo-8.2.24-r0
php82-fpm-8.2.24-r0
php82-ftp-8.2.24-r0
php82-gd-8.2.24-r0
php82-gettext-8.2.24-r0
php82-gmp-8.2.24-r0
php82-iconv-8.2.24-r0
php82-imap-8.2.24-r0
php82-intl-8.2.24-r0
php82-ldap-8.2.24-r0
php82-litespeed-8.2.24-r0
php82-mbstring-8.2.24-r0
php82-mysqli-8.2.24-r0
php82-mysqlnd-8.2.24-r0
php82-odbc-8.2.24-r0
php82-opcache-8.2.24-r0
php82-openssl-8.2.24-r0
php82-pcntl-8.2.24-r0
php82-pdo-8.2.24-r0
php82-pdo_dblib-8.2.24-r0
php82-pdo_mysql-8.2.24-r0
php82-pdo_odbc-8.2.24-r0
php82-pdo_pgsql-8.2.24-r0
php82-pdo_sqlite-8.2.24-r0
php82-pear-8.2.24-r0
php82-pecl-amqp-2.1.2-r0
php82-pecl-apcu-5.1.23-r0
php82-pecl-ast-1.1.1-r0
php82-pecl-brotli-0.15.0-r0
php82-pecl-couchbase-4.2.1-r0
php82-pecl-decimal-1.5.0-r1
php82-pecl-ds-1.5.0-r0
php82-pecl-event-3.1.3-r0
php82-pecl-grpc-1.64.1-r0
php82-pecl-igbinary-3.2.15-r0
php82-pecl-imagick-3.7.0-r6
php82-pecl-imagick-dev-3.7.0-r6
php82-pecl-luasandbox-4.1.2-r0
php82-pecl-lzf-1.7.0-r0
php82-pecl-mailparse-3.1.6-r0
php82-pecl-maxminddb-1.11.1-r0
php82-pecl-mcrypt-1.0.7-r0
php82-pecl-memcache-8.2-r2
php82-pecl-memcached-3.2.0-r2
php82-pecl-mongodb-1.19.1-r0
php82-pecl-msgpack-2.2.0-r1
php82-pecl-opentelemetry-1.1.0-r0
php82-pecl-pcov-1.0.11-r0
php82-pecl-protobuf-4.26.0-r0
php82-pecl-psr-1.2.0-r1
php82-pecl-rdkafka-6.0.3-r0
php82-pecl-redis-6.1.0-r0
php82-pecl-smbclient-1.1.1-r0
php82-pecl-ssh2-1.4.1-r0
php82-pecl-swoole-5.1.4-r0
php82-pecl-swoole-dev-5.1.4-r0
php82-pecl-timezonedb-2024.1-r0
php82-pecl-uploadprogress-2.0.2-r2
php82-pecl-uploadprogress-doc-2.0.2-r2
php82-pecl-uuid-1.2.1-r0
php82-pecl-vips-1.0.13-r0
php82-pecl-xdebug-3.3.2-r0
php82-pecl-xhprof-2.3.9-r2
php82-pecl-xhprof-assets-2.3.9-r2
php82-pecl-xlswriter-1.5.7-r0
php82-pecl-yaml-2.2.4-r0
php82-pecl-zstd-0.13.3-r0
php82-pgsql-8.2.24-r0
php82-phar-8.2.24-r0
php82-phpdbg-8.2.24-r0
php82-posix-8.2.24-r0
php82-pspell-8.2.24-r0
php82-session-8.2.24-r0
php82-shmop-8.2.24-r0
php82-simplexml-8.2.24-r0
php82-snmp-8.2.24-r0
php82-soap-8.2.24-r0
php82-sockets-8.2.24-r0
php82-sodium-8.2.24-r0
php82-spx-0.4.16-r0
php82-sqlite3-8.2.24-r0
php82-sysvmsg-8.2.24-r0
php82-sysvsem-8.2.24-r0
php82-sysvshm-8.2.24-r0
php82-tidy-8.2.24-r0
php82-tokenizer-8.2.24-r0
php82-xml-8.2.24-r0
php82-xmlreader-8.2.24-r0
php82-xmlwriter-8.2.24-r0
php82-xsl-8.2.24-r0
php82-zip-8.2.24-r0
php83-8.3.12-r0
php83-apache2-8.3.12-r0
php83-bcmath-8.3.12-r0
php83-bz2-8.3.12-r0
php83-calendar-8.3.12-r0
php83-cgi-8.3.12-r0
php83-common-8.3.12-r0
php83-ctype-8.3.12-r0
php83-curl-8.3.12-r0
php83-dba-8.3.12-r0
php83-dbg-8.3.12-r0
php83-dev-8.3.12-r0
php83-doc-8.3.12-r0
php83-dom-8.3.12-r0
php83-embed-8.3.12-r0
php83-enchant-8.3.12-r0
php83-exif-8.3.12-r0
php83-ffi-8.3.12-r0
php83-fileinfo-8.3.12-r0
php83-fpm-8.3.12-r0
php83-ftp-8.3.12-r0
php83-gd-8.3.12-r0
php83-gettext-8.3.12-r0
php83-gmp-8.3.12-r0
php83-iconv-8.3.12-r0
php83-imap-8.3.12-r0
php83-intl-8.3.12-r0
php83-ldap-8.3.12-r0
php83-litespeed-8.3.12-r0
php83-mbstring-8.3.12-r0
php83-mysqli-8.3.12-r0
php83-mysqlnd-8.3.12-r0
php83-odbc-8.3.12-r0
php83-opcache-8.3.12-r0
php83-openssl-8.3.12-r0
php83-pcntl-8.3.12-r0
php83-pdo-8.3.12-r0
php83-pdo_dblib-8.3.12-r0
php83-pdo_mysql-8.3.12-r0
php83-pdo_odbc-8.3.12-r0
php83-pdo_pgsql-8.3.12-r0
php83-pdo_sqlite-8.3.12-r0
php83-pear-8.3.12-r0
php83-pecl-amqp-2.1.2-r0
php83-pecl-apcu-5.1.23-r0
php83-pecl-ast-1.1.1-r0
php83-pecl-brotli-0.15.0-r0
php83-pecl-couchbase-4.2.1-r0
php83-pecl-decimal-1.5.0-r1
php83-pecl-ds-1.5.0-r0
php83-pecl-event-3.1.3-r0
php83-pecl-grpc-1.64.1-r0
php83-pecl-igbinary-3.2.15-r0
php83-pecl-imagick-3.7.0-r0
php83-pecl-imagick-dev-3.7.0-r0
php83-pecl-luasandbox-4.1.2-r0
php83-pecl-lzf-1.7.0-r0
php83-pecl-mailparse-3.1.6-r1
php83-pecl-maxminddb-1.11.1-r0
php83-pecl-mcrypt-1.0.7-r0
php83-pecl-memcache-8.2-r0
php83-pecl-memcached-3.2.0-r0
php83-pecl-mongodb-1.19.1-r0
php83-pecl-msgpack-2.2.0-r2
php83-pecl-opentelemetry-1.1.0-r0
php83-pecl-pcov-1.0.11-r0
php83-pecl-protobuf-4.26.0-r0
php83-pecl-psr-1.2.0-r0
php83-pecl-rdkafka-6.0.3-r0
php83-pecl-redis-6.1.0-r0
php83-pecl-smbclient-1.1.1-r0
php83-pecl-ssh2-1.4.1-r0
php83-pecl-swoole-5.1.4-r0
php83-pecl-swoole-dev-5.1.4-r0
php83-pecl-timezonedb-2024.1-r0
php83-pecl-uploadprogress-2.0.2-r1
php83-pecl-uploadprogress-doc-2.0.2-r1
php83-pecl-uuid-1.2.1-r0
php83-pecl-vips-1.0.13-r0
php83-pecl-xdebug-3.3.2-r0
php83-pecl-xhprof-2.3.9-r2
php83-pecl-xhprof-assets-2.3.9-r2
php83-pecl-xlswriter-1.5.7-r0
php83-pecl-yaml-2.2.4-r0
php83-pecl-zstd-0.13.3-r0
php83-pgsql-8.3.12-r0
php83-phar-8.3.12-r0
php83-phpdbg-8.3.12-r0
php83-posix-8.3.12-r0
php83-pspell-8.3.12-r0
php83-session-8.3.12-r0
php83-shmop-8.3.12-r0
php83-simplexml-8.3.12-r0
php83-snmp-8.3.12-r0
php83-soap-8.3.12-r0
php83-sockets-8.3.12-r0
php83-sodium-8.3.12-r0
php83-spx-0.4.16-r0
php83-sqlite3-8.3.12-r0
php83-sysvmsg-8.3.12-r0
php83-sysvsem-8.3.12-r0
php83-sysvshm-8.3.12-r0
php83-tidy-8.3.12-r0
php83-tokenizer-8.3.12-r0
php83-xml-8.3.12-r0
php83-xmlreader-8.3.12-r0
php83-xmlwriter-8.3.12-r0
php83-xsl-8.3.12-r0
php83-zip-8.3.12-r0
phpldapadmin-1.2.6.7-r1
phpmyadmin-5.2.1-r2
phpmyadmin-doc-5.2.1-r2
phpspy-0.7.0-r0
phpunit-9.6.11-r1
sphinx-php-2.2.11-r7
unit-php82-1.32.1-r3
unit-php83-1.32.1-r3
xapian-bindings-php82-1.4.24-r2

安装PHP

apk add php83

运行结果

localhost:~# apk add php83
(1/3) Installing php83-common (8.3.12-r0)
(2/3) Installing argon2-libs (20190702-r5)
(3/3) Installing php83 (8.3.12-r0)
Executing busybox-1.36.1-r29.trigger
OK: 786 MiB in 136 packages

安装依赖

apk add php83-mysqli php83-pdo_mysql php83-mbstring php83-json php83-zlib php83-gd php83-intl php83-session

运行结果

localhost:~# apk add php83-mysqli php83-pdo_mysql php83-mbstring php83-json php83-zlib php83-gd php83-intl php83-
session
(1/31) Installing libxau (1.0.11-r4)
(2/31) Installing libmd (1.1.0-r0)
(3/31) Installing libbsd (0.12.2-r0)
(4/31) Installing libxdmcp (1.1.5-r1)
(5/31) Installing libxcb (1.16.1-r0)
(6/31) Installing libx11 (1.8.9-r1)
(7/31) Installing libxext (1.3.6-r2)
(8/31) Installing libice (1.1.1-r6)
(9/31) Installing libsm (1.2.4-r4)
(10/31) Installing libxt (1.3.0-r5)
(11/31) Installing libxpm (3.5.17-r0)
(12/31) Installing aom-libs (3.9.1-r0)
(13/31) Installing libdav1d (1.4.2-r0)
(14/31) Installing libsharpyuv (1.3.2-r0)
(15/31) Installing libavif (1.0.4-r0)
(16/31) Installing libpng (1.6.44-r0)
(17/31) Installing freetype (2.13.2-r0)
(18/31) Installing libjpeg-turbo (3.0.3-r0)
(19/31) Installing libwebp (1.3.2-r0)
(20/31) Installing php83-gd (8.3.12-r0)
(21/31) Installing icu-data-en (74.2-r0)
Executing icu-data-en-74.2-r0.post-install
*
* If you need ICU with non-English locales and legacy charset support, install
* package icu-data-full.
*
(22/31) Installing icu-libs (74.2-r0)
(23/31) Installing php83-intl (8.3.12-r0)
(24/31) Installing oniguruma (6.9.9-r0)
(25/31) Installing php83-mbstring (8.3.12-r0)
(26/31) Installing php83-openssl (8.3.12-r0)
(27/31) Installing php83-mysqlnd (8.3.12-r0)
(28/31) Installing php83-mysqli (8.3.12-r0)
(29/31) Installing php83-pdo (8.3.12-r0)
(30/31) Installing php83-pdo_mysql (8.3.12-r0)
(31/31) Installing php83-session (8.3.12-r0)
Executing busybox-1.36.1-r29.trigger
OK: 812 MiB in 167 packages

安装完成后测试

在当前目录下,编写一个php探针文件phpinfo.php

<?php
    phpinfo();
?>

完成后运行下面的命令

php -S 0.0.0.0:8080

在浏览器上输入 服务器IP:8080/phpinfo.php

添加nginx关联

在管理nginx提供web服务之前先安装 php-fpmphp-fpm(PHP FastCGI Process Manager)提供了更好的 php进程管理方式,可以有效控制内存和进程、可以平滑重, php 配置。

使用下面的命令进行安装:

localhost:/var/www# apk add php83-fpm
(1/2) Installing libacl (2.3.2-r0)
(2/2) Installing php83-fpm (8.3.12-r0)
Executing busybox-1.36.1-r29.trigger
OK: 820 MiB in 169 packages

添加一个新用户 www 用于启动 php-fpm,这个用户不用登陆、不用有home目录,创建的命令如下:

adduser -H -s /sbin/nologin www

用户创建完成后,就启动 php-fpm ,需要注意的是,咱们安装 php-fpm 的使用是 php83-fpm,而启动的时候是 php-fpm83 ,版本后变成了在最后面。


localhost:/etc/init.d# rc-service php-fpm83 start
 * Checking /etc/php83/php-fpm.conf ...
 * /run/php-fpm83: creating directory
 * Starting PHP FastCGI Process Manager ...                                                                [ ok ]
localhost:/etc/init.d# rc-update add  php-fpm83
 * service php-fpm83 added to runlevel default

确认 php-fpm 的启动情况:

localhost:/var/log# ps -ef|grep php
 8477 root      0:00 {php-fpm83} php-fpm: master process (/etc/php83/php-fpm.conf)
 8484 www       0:00 {php-fpm83} php-fpm: pool www
 8485 www       0:00 {php-fpm83} php-fpm: pool www
12845 root      0:00 grep php

确认 php-fpm 已经正常启动,而且是用咱们创建的 www 用户启动的,就可以开始nginx的配置了。

首先确保系统中已经安装了nginx,如果没有安装,可以通过下面的命令进行安装,

localhost:~# apk add nginx
fetch http://mirrors.ustc.edu.cn/alpine/v3.20/main/x86_64/APKINDEX.tar.gz
fetch http://mirrors.ustc.edu.cn/alpine/v3.20/community/x86_64/APKINDEX.tar.gz
(1/4) Installing pcre (8.45-r3)
(2/4) Installing nginx (1.26.2-r0)
Executing nginx-1.26.2-r0.pre-install
Executing nginx-1.26.2-r0.post-install
(3/4) Installing nginx-openrc (1.26.2-r0)
(4/4) Installing nginx-vim (1.26.2-r0)
Executing busybox-1.36.1-r29.trigger
OK: 533 MiB in 119 packages

安装完成后,apk已经自动启动了nginx和添加到开机自启动中去了。

配置nginx的配置文件/etc/nginx/http.d/default.conf,添加以下的内容:

        location ~ \.php$ {
                root /var/www;
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_index index.php;
                include fastcgi_params;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                fastcgi_param SCRIPT_NAME $fastcgi_script_name;
        }

配置完成后,重新启动nginx

localhost:~# rc-service nginx restart
 * Caching service dependencies ...                                                                        [ ok ]
 * Stopping nginx ...                                                                                      [ ok ]
 * Starting nginx ...                                                                                      [ ok ]

/var/www目录中创建上面的php探针

echo "<?php phpinfo(); ?>" > /var/www/index.php

在远程的浏览器中输入 http://服务器IP ,如果可以看到前面一样的php信息,就是已经关联成功了。

最后

其实上面的配置已经包含的LNMP中的N和P,再加上之前部署Mariadb的文章,可以算是一个完整的LNMP环境的部署了。

相关推荐

5款Syslog集中系统日志常用工具对比推荐

一、为何要集中管理Syslog?Syslog由Linux/Unix系统及其他网络设备生成,广泛分布于整个网络。因其包含关键信息,可用于识别网络中的恶意活动,所以必须对其进行持续监控。将Sys...

跨平台、多数据库支持的开源数据库管理工具——DBeaver

简介今天给大家推荐一个开源的数据库管理工具——DBeaver。它支持多种数据库系统,包括Mysql、Oracle、PostgreSQL、SLQLite、SQLServer等。DBeaver的界面友好...

强烈推荐!数据库管理工具:Navicat Premium 16.3.2 (64位)

NavicatPremium,一款集数据迁移、数据库管理、SQL/查询编辑、智能设计、高效协作于一体的全能数据库开发工具。无论你是MySQL、MariaDB、MongoDB、SQLServer、O...

3 年 Java 程序员还玩不转 MongoDB,网友:失望

一、什么场景使用MongoDB?...

拯救MongoDB管理员的GUI工具大赏:从菜鸟到极客的生存指南

作为一名在NoSQL丛林中披荆斩棘的数据猎人,没有比GUI工具更称手的瑞士军刀了。本文将带你围观五款主流MongoDB管理神器的特性与暗坑,附赠精准到扎心的吐槽指南一、MongoDBCompass:...

mongodb/redis/neo4j 如何自己打造一个 web 数据库可视化客户端?

前言最近在做neo4j相关的同步处理,因为产线的可视化工具短暂不可用,发现写起来各种脚本非常麻烦。...

solidworks使用心得,纯干货!建议大家收藏

SolidWorks常见问题...

统一规约-关乎数字化的真正实现(规范统一性)

尽管数字化转型的浪潮如此深入人心,但是,对于OPCUA和TSN的了解却又甚少,这难免让人质疑其可实现性,因为,如果缺乏统一的语义互操作规范,以及更为具有广泛适用的网络与通信,则数字化实际上几乎难以具...

Elasticsearch节点角色配置详解(Node)

本篇文章将介绍如下内容:节点角色简介...

产前母婴用品分享 篇一:我的母婴购物清单及单品推荐

作者:DaisyH8746在张大妈上已经混迹很久了,有事没事看看“什么值得买”已渐渐成了一种生活习惯,然而却从来没有想过自己要写篇文章发布上来,直到由于我产前功课做得“太过认真”(认真到都有点过了,...

比任何人都光彩照人的假期!水润、紧致的肌肤护理程序

图片来源:谜尚愉快的假期临近了。身心振奋的休假季节。但是不能因为这种心情而失去珍贵的东西,那就是皮肤健康。炙热的阳光和强烈的紫外线是使我们皮肤老化的主犯。因此,如果怀着快乐的心情对皮肤置之不理,就会使...

Arm发布Armv9边缘AI计算平台,支持运行超10亿参数端侧AI模型

中关村在线2月27日消息,Arm正式发布Armv9边缘人工智能(AI)计算平台。据悉,该平台以全新的ArmCortex-A320CPU和领先的边缘AI加速器ArmEthos-U85NPU为核心...

柔性——面向大规模定制生产的数字化实现的基本特征

大规模定制生产模式的核心是柔性,尤其是体现在其对定制的要求方面。既然是定制,并且是大规模的定制,对于制造系统的柔性以及借助于数字化手段实现的柔性,就提出了更高的要求。面向大规模定制生产的数字化业务管控...

创建PLC内部标准——企业前进的道路

作者:FrankBurger...

标准化编程之 ----------- 西门子LPMLV30测试总结

PackML乃是由OMAC开发且被ISA所采用的自动化标准TR88.00.02,能够更为便捷地传输与检索一致的机器数据。PackML的主要宗旨在于于整个工厂车间倡导通用的“外观和感觉”,...

取消回复欢迎 发表评论: