该博客为《Ubuntu 相关》系列博客的第六篇,该系列博客主要对Ubuntu安装各种软件或者库进行一个记录,方便重装系统后快速恢复工作。
这是进项目组以来接受的第一个任务的后续工作,以此记录实现过程。
此篇紧接之前的工作,实现阿里云服务器的apache+php的环境配置。
阿里云服务器配置php+apache
安装php使用yum命令添加源启用 PHP 7.4 的 Remi 模块并进行安装使用如下命令安装额外的包运行并查看版本, 重启命令, 添加自动启动,链接php文件编写测试demo卸载所有php7.4安装apache确保服务器系统处于最新状态重启服务器使用yum安装Apache,并且安装扩展模块设置CentOS开机自动启动Apache服务检查Apache是否已经安装了开机自动启动启动Apache服务检查80端口是否已经开启开启服务器的80端口网页测试附安装php
以下安装过程参考dalao文章《Centos8(Liunx) 中安装PHP7.4 的三种方法和删除它的三种方法》,我这里只采用了yum
安装的方法,由于dalao写的巨详细,所以我就非常不要face的把我用到的部分搬过来当做自己的笔记了。
使用yum命令
学习yum的基本知识
参考网站:
/article/175918.htm
/php7-3-yum-install-on-centos-7/
添加源
#添加几个源,不然会报错#php高版本的yum源地址,有两部分,其中一部分是epel-release,另外一部分来自webtatic。如果跳过epel-release的话,安装webtatic的时候rpm -Uvh /pub/epel/epel-release-latest-8.noarch.rpmrpm -Uvh /enterprise/remi-release-8.rpm
虽然我截图了,但是还是dalao的清晰,因为有框啊!!!
启用 PHP 7.4 的 Remi 模块并进行安装
dnf -y install dnf-utils
#使用这个命令查看php7.4yum search php74*
然后安装你想要的模块:
php74:安装PHP 7.4的包 php74-php:用于创建动态web的PHP脚本语言网站 php74-build:基本的构建配置
php74-php-gd:用于PHP应用程序使用gd的模块图形库 php74-xhprof:一个用于PHP - Web接口的层次分析器
php74-zephir:用于创建扩展的Zephir语言PHP: php74-php-ast:抽象语法树
php74-php-cli:用于PHP的命令行接口 php74-php-dba:一个用于PHP的数据库抽象层模块应用程序
php74-php-dbg:交互式PHP调试器 php74-php-ffi:外部函数接口 php74-php-fpm:PHP
FastCGI进程管理器 php74-php-gmp:一个用于使用GNU的PHP应用程序模块议员库
php74-php-lz4:x86_64: PHP的LZ4扩展 php74-php-pdo:一个用于PHP的数据库访问抽象模块应用程序
php74-php-xml:x86_64:用于使用XML的PHP应用程序的模块 php74-runtime:处理php74软件集合的包:
php74-php-imap:x86_64:用于使用IMAP的PHP应用程序的模块 php74-php-intl:x86_64:
PHP国际化扩展应用程序 php74-php-json:x86_64: PHP的JavaScript对象符号扩展
php74-php-ldap:x86_64:用于使用LDAP的PHP应用程序的模块
php74-php-oci8:x86_64:用于使用OCI8的PHP应用程序的模块数据库
php74-php-odbc:x86_64:用于使用ODBC的PHP应用程序的模块数据库 php74-php-pear:noarch:
PHP扩展和应用程序库框架 php74-php-pggi:GTK绑定
php74-php-snmp:一个用于PHP应用程序查询的模块SNMP-managed设备
php74-php-soap:用于使用SOAP的PHP应用程序的模块协议 php74-php-tidy:标准PHP模块提供了tidy库支持
php74-php-zstd:x86_64: Zstandard扩展名 php74-scldevel:x86_64:打包php74的开发文件
php74-unit-php:用于NGINX单元的PHP模块 php74-php-devel:构建PHP扩展所需的文件
php74-php-pgsql:一个用于PHP的PostgreSQL数据库模块 php74-php-pinba:x86_64:
Pinba统计服务器的客户端扩展 php74-php-bcmath:用于PHP应用程序的模块bcmath库
php74-php-brotli:用于PHP的Brotli扩展 php74-php-common:PHP的公共文件
php74-php-pspell:x86_64:用于PHP应用程序的模块中接口
php74-php-recode:用于PHP应用程序的模块重新编码库 php74-php-snappy:PHP的Snappy扩展
php74-php-sodium:x86_64:钠密码库的包装 php74-php-sqlsrv:x86_64:用于SQL
Server的PHP Microsoft驱动程序 php74-php-xmlrpc:的PHP应用程序模块xml - rpc协议
php74-php-enchant:增强PHP的拼写扩展应用程序 php74-php-libvirt:用于Libvirt的PHP语言绑定
php74-php-mysqlnd:x86_64:用于使用MySQL的PHP应用程序的模块数据库
php74-php-opcache:x86_64: Zend OPcache php74-php-pecl-ds:x86_64:
PHP的数据结构 php74-php-pecl-ev:提供libev库的接口
php74-php-pecl-pq:PostgreSQL客户端库(libpq)绑定 php74-php-pecl-uv:Libuv包装器
php74-php-process:用于PHP脚本的模块使用系统进程接口 php74-php-embedded:用于嵌入应用程序的PHP库
php74-php-mbstring:一个用于PHP应用程序的模块多字节字符串处理 php74-php-pecl-dio:直接I/O函数
php74-php-pecl-eio:提供libeio库的接口 php74-php-pecl-env:加载环境变量
php74-php-pecl-lua:嵌入式lua解释器 php74-php-pecl-lzf:x86_64:处理LZF de/压缩的扩展
php74-php-pecl-nsq:NSQ客户端的PHP扩展 php74-php-pecl-psr:PSR接口
php74-php-pecl-rar:用于读取RAR存档的PHP扩展 php74-php-pecl-rrd:x86_64:
rrdtool的PHP绑定 php74-php-pecl-sdl:简单的PHP DirectMedia层
php74-php-pecl-svn:x86_64: Subversion版本的PHP绑定控制系统
php74-php-pecl-vld:x86_64:转储PHP的内部表示脚本 php74-php-pecl-yac:无锁用户数据缓存
php74-php-pecl-yaf:x86_64:又一个框架 php74-php-pecl-yar:轻量级并发RPC框架
php74-php-pecl-yaz:x86_64: Z39.50/SRU客户端
php74-php-pecl-zip:一个ZIP文件的扩展名 php74-php-pecl-zmq:ZeroMQ消息传递
php74-php-phalcon4:Phalcon框架 php74-php-componere:在运行时编写PHP类
php74-php-litespeed:LiteSpeed Web服务器PHP支持 php74-php-maxminddb:MaxMind
DB Reader扩展 php74-php-pdo-dblib:x86_64: PDO驱动程序,用于Microsoft SQL
Server和Sybase数据库 php74-php-pecl-amqp:与任何AMQP兼容的服务器通信
php74-php-pecl-apcu:APC用户缓存 php74-php-pecl-apfd:总是填充表单数据
php74-php-pecl-fann:用于FANN库的包装器 php74-php-pecl-grpc:x86_64:通用RPC框架
php74-php-pecl-http:扩展的HTTP支持 php74-php-pecl-krb5:Kerberos验证扩展
php74-php-pecl-pcov:x86_64:代码覆盖驱动程序 php74-php-pecl-ssh2:x86_64:
libssh2库的绑定 php74-php-pecl-sync:已命名和未命名同步对象
php74-php-pecl-uopz:x86_64: Zend的用户操作
php74-php-pecl-uuid:通用唯一标识符扩展对于PHP
php74-php-pecl-vips:x86_64:与libvip接口的PHP扩展
php74-php-pecl-wddx:Web分布式数据交换 php74-php-pecl-yaml:x86_64: yaml的PHP绑定
php74-php-phpiredis:x86_64: Redis的客户端扩展名
php74-php-smbclient:libsmbclient的PHP包装 php74-php-wkhtmltox:HTML转换器
php74-php-pecl-cmark:CommonMark扩展名 php74-php-pecl-dbase:dBase数据库文件访问函数
php74-php-pecl-druid:一个PHP的德鲁伊驱动 php74-php-pecl-event:提供libevent库的接口
php74-php-pecl-geoip:将IP地址映射到的扩展名地理位置 php74-php-pecl-gnupg:x86_64:
gpgme库的包装 php74-php-pecl-mysql:MySQL数据库访问函数 php74-php-pecl-oauth:PHP
OAuth消费者扩展 php74-php-pecl-parle:x86_64:解析和词法分析
php74-php-pecl-raphf:资源和持久句柄工厂 php74-php-pecl-solr2:Apache
Solr的API定向对象 php74-php-pecl-stats:用于统计计算的例程
php74-php-pecl-stomp:Stomp客户端扩展 php74-php-pecl-taint:x86_64: XSS代码嗅探器
php74-php-pecl-xattr:扩展属性 php74-php-pecl-xdiff:文件差异/补丁
php74-php-pecl-xxtea:XXTEA加密算法扩展PHP php74-php-libvirt-doc:noarch:
php-libvirt文件 php74-php-pecl-base58:用base58编码和解码数据
php74-php-pecl-bitset:位集库 php74-php-pecl-crypto:OpenSSL密码库的包装器
php74-php-pecl-gender:x86_64:性别扩展 php74-php-pecl-hprose:用于PHP的h散文
php74-php-pecl-hrtime:x86_64:高分辨率定时 php74-php-pecl-mcrypt:x86_64:
libmcrypt库的绑定 php74-php-pecl-pdflib:生成PDF文件的包
php74-php-pecl-propro:属性代理 php74-php-pecl-radius:Radius客户端库
php74-php-pecl-redis4:的扩展名 Redis键值存储 php74-php-pecl-redis5:的扩展名
Redis键值存储 php74-php-pecl-scrypt:Scrypt散列函数
php74-php-pecl-sphinx:Sphinx SQL全文的PECL扩展搜索引擎
php74-php-pecl-ssdeep:libfuzzy库的包装器 php74-php-pecl-trader:为贸易商提供技术分析
php74-php-pecl-xdebug:用于调试PHP脚本的PECL包 php74-php-pecl-xhprof:x86_64:
XHProf的PHP扩展,层次结构分析器 php74-php-pecl-yaconf:x86_64:另一个配置容器
php74-php-pecl-apcu-bc:APCu向后兼容模块 php74-php-pecl-decimal:任意精度浮点小数
php74-php-pecl-gearman:PHP包装器到libgearman
php74-php-pecl-gmagick:的包装器GraphicsMagick库
php74-php-pecl-imagick:x86_64:用于创建和修改映像的扩展使用ImageMagick
php74-php-pecl-inotify:x86_64: Inotify php74-php-pecl-leveldb:LevelDB
PHP绑定 php74-php-pecl-memprof:x86_64:内存使用分析器
php74-php-pecl-mongodb:x86_64:用于PHP的MongoDB驱动程序
php74-php-pecl-msgpack:用于与MessagePack通信的API序列化
php74-php-pecl-rdkafka:基于librdkafka的Kafka客户端
php74-php-pecl-rpminfo:x86_64: RPM信息
php74-php-pecl-runkit7:为了这些你…不应该…无论如何我一直在做……但是肯定做的!
php74-php-pecl-seaslog:一个有效、快速、稳定的日志 PHP扩展
php74-php-pecl-selinux:用于PHP脚本的SELinux绑定语言
php74-php-pecl-swoole4:PHP的异步并发分布式网络框架
php74-php-pecl-timecop:x86_64:时间旅行和冻结扩展
php74-php-pecl-varnish:Varnish缓存绑定 php74-php-pecl-xmldiff:x86_64:
XML差异和合并 php74-php-pecl-igbinary:x86_64:替代标准PHP序列化器
php74-php-pecl-memcache:x86_64:使用Memcached的扩展缓存守护进程
php74-php-pecl-mogilefs:要与之通信的PHP客户端库 MogileFS存储
php74-php-pecl-mustache:Mustache模板语言
php74-php-pecl-protobuf:序列化结构化的机制数据
php74-php-pecl-rdkafka4:基于librdkafka的Kafka客户端
php74-php-pecl-scoutapm:本地扩展组件 ScoutAPM的PHP代理
php74-php-pecl-translit:将非拉丁字符音译设置为拉丁文 php74-php-snuffleupagus:x86_64:
PHP的安全模块 php74-php-zephir-parser:x86_64: Zephir解析器扩展
php74-php-pecl-cassandra:用于Apache的DataStax PHP驱动程序卡桑德拉
php74-php-pecl-json-post:JSON POST处理程序
php74-php-pecl-mailparse:用于解析和的PHP PECL包处理电子邮件消息
php74-php-pecl-memcached:x86_64:使用Memcached的扩展缓存守护进程
php74-php-pecl-mosquitto:libmosquito - to的扩展
php74-php-pecl-seasclick:一个Yandex ClickHouse客户端驱动 PHP扩展
php74-php-pecl-xlswriter:一个高效、快速的xlsx文件出口扩展
php74-php-horde-horde-lz4:Horde LZ4压缩扩展
php74-php-pecl-apcu-devel:APCu开发人员文件(头文件)
php74-php-pecl-couchbase2:Couchbase服务器PHP扩展
php74-php-pecl-geospatial:PHP扩展来处理公共地理空间功能
php74-php-pecl-handlebars:Handlebars模板语言
php74-php-pecl-http-devel:x86_64:扩展HTTP支持开发人员文件(头)
php74-php-pecl-krb5-devel:Kerberos扩展开发人员文件(头)
php74-php-pecl-luasandbox:带有限制和安全的Lua解释器环境
php74-php-pecl-opencensus:一个stats集合和分布式跟踪框架
php74-php-pecl-skywalking:x86_64: Apache的PHP工具代理人行天桥
php74-php-pecl-ahocorasick:有效的Aho-Corasick字符串模式匹配算法
php74-php-pecl-ip2location:获取an的地理位置信息IP地址
php74-php-pecl-http-message:x86_64: PSR-7 HTTP消息实现
php74-php-pecl-datadog-trace:APM和分布式跟踪PHP
php74-php-pecl-hdr-histogram:x86_64: C语言的PHP扩展包装hdrhistogram API
php74-php-pecl-imagick-devel:imagick扩展开发人员文件(头)
php74-php-pecl-msgpack-devel:MessagePack开发人员文件(头)
php74-php-pecl-mysql-xdevapi:MySQL数据库访问函数
php74-php-pecl-mysqlnd-azure:x86_64: mysqlnd的重定向插件
php74-php-pecl-igbinary-devel:Igbinary开发人员文件(头)
php74-php-pecl-uploadprogress:x86_64:跟踪进度的扩展文件上传
# 运行一下yum install php74-php
使用如下命令安装额外的包
我没有装!!!
yum search php74*yum install php74-xxx
运行并查看版本, 重启命令, 添加自动启动,链接php文件
不知道有啥用,我挨个运行了一遍!!!
#运行并查看版本php74 -v#重启命令php-fpmsystemctl restart php74-php-fpm#添加自动启动systemctl enable php74-php-fpm#查看php7.4的安装路径whereis php#链接php文件ln -s /opt/remi/php74/root/usr/bin/php /usr/bin/php
编写测试demo
cd /home vim test.php
php test.php
卸载所有php7.4
yum remove php74-php*
安装apache
以下安装过程参考阿里云开发者社区的《阿里云ECS服务器CentOS7上安装Apache服务》
确保服务器系统处于最新状态
yum -y update
如果显示以下内容说明已经更新完成
Replaced:
grub2.x86_64 1:2.02-0.64.el7.centos grub2-tools.x86_64 1:2.02-0.64.el7.centos
Complete!
重启服务器
reboot
使用yum安装Apache,并且安装扩展模块
yum -y install httpd httpd-manual httpd-devel mod_ssl mod_perl
设置CentOS开机自动启动Apache服务
systemctl enable httpd.service
如果显示以下内容说明已经完成自动启动安装
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
检查Apache是否已经安装了开机自动启动
systemctl list-unit-files | grep httpd
启动Apache服务
查找资料有以下两个命令,不知道有啥区别
systemctl start httpd.service
#启动Apache+php服务器httpd -k start
检查80端口是否已经开启
netstat -an | grep 80
如果显示以下内容说明已经安装Apache服务
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
开启服务器的80端口
此部分参考dalao博客《阿里云服务器安装Apache服务的坑》
首先进入阿里云的云服务器管理控制台,找到我们安装了apache服务的云服务器,然后点击红色框框住的部分。
接着点击右上角
就是添加一个入方向的80端口。
网页测试
将我们之前的写的测试复制到/var/www/html
文件夹下
cp /home/test.php /var/www/html/
访问阿里云apahe+php服务器:
在浏览器中输入:阿里云公网ip/test.html/php 访问阿里云服务器
至此配置结束。
继续重新搭建我的MCR环境了!!!
附
Apache的其他功能:
显示Apache版本信息
[root@localhost ~]# httpd -v
使用yum安装Apache,并且安装所有扩展模块
[root@localhost ~]# yum -y install httpd*
查看加载模块
[root@localhost ~]# httpd -M
检查配置文件是否正确
[root@localhost ~]# httpd -t
显示所有命令
[root@localhost ~]# httpd -q
检查Apache安装路径
[root@localhost ~]# whereis httpd
检查并且显示Apache相关安装包
[root@localhost ~]# rpm -qa | grep httpd
删除Apache
[root@localhost ~]# rpm -e httpd-* --nodeps或[root@localhost ~]# rpm -e httpd-2.4.6-67.el7.c和entos.6.x86_64 --nodeps
删除Apache,并且删除相关文件
[root@localhost ~]# yum -y remove httpd
显示Apache详细相关信息
[root@localhost ~]# yum info httpd
查看Apache安装位置
[root@localhost ~]# rpm -ql httpd
检查Apache是否已经安装了开机自动启动
[root@localhost ~]# systemctl list-unit-files | grep httpd
最后介绍相关配置与环境:
Apache主配置文件:/etc/httpd/conf/httpd.conf
Apache主配置目录,可以将不同类型的配置分门别类放入这个目录中:/etc/httpd/conf.d/
Apache网站根目录:/var/www/html/
Apache日志文件目录:/var/log/httpd
如果觉得《阿里云服务器配置php+apache》对你有帮助,请点赞、收藏,并留下你的观点哦!