文章插图
bug没有爱
安装Nginx1.安装软件包epel-release并更新,它会帮我们自动配置好yum的软件仓库 。
yum -y install epel-releaseyum update2.安装nginx,一般的项目不建议wget下载包编译安装,因为yum安装的服务器貌似有额外整合日志压缩,清理之类的定时任务,还有一些安全设定之类的 。
yum -y install nginx至此nginx就已经安装好了,为了验证是否已经安装成功,我们可以使用如下方法测试 。
curl 127.0.0.1安装成功会输出nginx的默认欢迎页,但此时在外部用ip地址访问会发现访问不了,是因为80端口未开放的原因,只需要开放80端口即可 。
3.如果是云服务器,可以直接去控制台配置安全策略放开80端口,如果是虚拟机可通过以下命令实现 。
firewall-cmd --zone=public --add-port=80/tcp --permanent
- --zone 作用域
- --add-port=80/tcp 端口/通讯协议
- --permanent 永久生效,否则重启后失效
systemctl restart firewalld.service到这里nginx就算是安装完成了 。
文章插图
编译安装php1.为了后面能正常进行,首先我们先安装一些会用到的依赖组件 。
yum -y install wget vim pcre pcre-devel openssl openssl-devel libicu-devel gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel ncurses ncurses-devel curl curl-devel krb5-devel libidn libidn-devel openldap openldap-devel nss_ldap jemalloc-devel cmake boost-devel bison automake libevent libevent-devel gd gd-devel libtool* libmcrypt libmcrypt-devel mcrypt mhash libxslt libxslt-devel readline readline-devel gmp gmp-devel libcurl libcurl-devel openjpeg-devel安装好了之后,需要去官网下载PHP的安装包,版本根据自己需要进行选择,本人选择的版本: php-7.2.23.tar.gz
可以直接在服务器上wget获取,也可以先下载到本地再用lrzsz提供的rz上传到服务器 。(需要远程链接的客户端支持才能使用rz)
2.接下来解压我们的安装包
tar -xvf php-7.2.23.tar.gz -C /usr/local/mydir/后面的路径是我指定的解压路径,也可以不指定,直接解压到当前目录 。
3.编译源码,并安装
进入到我们解压的源码目录,通过configure对即将安装的软件进行配置,检查当前的环境是否满足要安装软件的依赖关系
cp /usr/lib64/libldap* /usr/lib/./configure --prefix=/usr/local/php72 --with-config-file-path=/usr/local/php72/etc --enable-fpm --with-fpm-user=www-data --with-fpm-group=www-data --enable-MySQLnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --enable-mysqlnd-compression-support --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --enable-intl --with-libmbfl --enable-ftp --with-gd --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --with-gettext --disable-fileinfo --enable-opcache --with-pear --enable-maintainer-zts --with-ldap=shared --without-gdbm这里如果你是安装的PHP7.3的话,会报错让重新安装libzip,这里是因为yum安装的libzip版本低了的原因,需要移除已经安装的libzip,重新安装更新版本的libzip,成功的话会生产makefile文件 。
4.编译并安装
make -j 4 && make install-j表示同时允许几个任务
5.配置
cp php.ini-development /usr/local/php72/etc/php.inicp /usr/local/php72/etc/php-fpm.conf.default /usr/local/php72/etc/php-fpm.confcp /usr/local/php72/etc/php-fpm.d/www.conf.default /usr/local/php72/etc/php-fpm.d/www.conf【Linux中yum安装Nginx和编译安装PHP】去掉以下两行的注释
;pid = run/php-fpm.pid;error_log = log/php-fpm.log确定www.conf中的user和group,用户一定要存在,没有则需添加www-data用户和用户组,否则启动php-fpm会失败
user = www-datagroup = www-data6.增加php-fpm.service启动脚本
vim /usr/lib/systemd/system/php-fpm.service脚本内容:[Unit]Description=The PHP FastCGI Process ManagerAfter=syslog.target network.target [Service]Type=simplePIDFile=/usr/local/php72/var/run/php-fpm.pidExecStart=/usr/local/php72/sbin/php-fpm --nodaemonize --fpm-config /usr/local/php72/etc/php-fpm.confExecReload=/bin/kill -USR2 $MAINPID [Install]WantedBy=multi-user.target增加了脚本之后,就可以通过service命令来进行管理了 。
到这里也就完成了Nginx和PHP的安装了 。
推荐阅读
- C/C++中的goto语句
- 搜索引擎中的算法与数据结构你知多少?
- linux系统磁盘类型,磁盘的物理结构及磁盘IO过程详解
- Python中的条件判断、循环以及循环的终止
- Linux中Cache内存占用过高解决办法
- Photoshop中内容识别的两种神操作,使照片完美重构,必须要学会
- ps中如何制作影子呢
- MySQL中只会count,sum()?累加运算没听过?
- 中国水和银穿梭酿造和饮用
- MacOS升级之后 IntelliJ 中 Git 突然不能用的问题