源码安装php 及部署论坛

源码编译安装php 及安装论坛

1.1 将安装包传到/opt/ 目录下

php-7.1.10.tar.bz2

 

1.2 安装GD库和GD库关联程序,用来处理和生成图片

 yum -y install \
 gd \
 libjpeg libjpeg-devel \
 libpng libpng-devel \
 freetype freetype-devel \
 libxml2 libxml2-devel \
 zlib zlib-devel \
 curl curl-devel \
 openssl openssl-devel

 


1.3 配置软件模块

cd /opt
 tar jxvf php-7.1.10.tar.bz2
 cd /opt/php-7.1.10/
 ./configure \
 --prefix=/usr/local/php7 \              #指定将 PHP 程序的安装路径
 --with-apxs2=/usr/local/httpd/bin/apxs \      #指定Apache httpd服务提供的apxs 模块支持程序的文件位置
 --with-mysql-sock=/usr/local/mysql/mysql.sock \   #指定mysql 数据库连接文件的存储路径
 --with-config-file-path=/usr/local/php7       #设置 PHP 的配置文件 php.ini 将要存放的位置
 --with-mysqli \                   #添加 MySQL 扩展支持 #mysqli扩展技术不仅可以调用MySQL的存储过程、处理MySQL事务,而且还可以使访问数据库工作变得更加稳定
 --with-zlib \                   #支持zlib功能,提供数据压缩
 --with-curl \                   #开启curl扩展功能,实现HTTP的Get下载和Post请求的方法
 --with-gd \                     #激活gd 库的支持
 --with-jpeg-dir \                 #激活jpeg 的支持
 --with-png-dir \                  #激活png 的支持
 --with-freetype-dir \
 --with-openssl \
 --enable-mbstring \                 #启用多字节字符串功能,以便支持中文等代码
 --enable-xml \                    #开启扩展性标记语言模块
 --enable-session \                  #会话
 --enable-ftp \                    #文本传输协议
 --enable-pdo \                    #函数库
 --enable-tokenizer \                #令牌解释器
 --enable-zip                    #ZIP压缩格式
 

 

1.4.编译及安装

 make && make install

 

 

1.5.复制模版文件作为PHP 的主配置文件,并进行修改

 cp /opt/php-7.1.10/php.ini-development /usr/local/php7/php.ini  
 #在测试环境时使用php.ini-development文件,而在生产环境时使用php.ini-production文件
 ​
 vim /usr/local/php7/php.ini
 --1170行--修改
 mysqli.default_socket = /usr/local/mysql/mysql.sock   
 --939行--取消注释,修改
 date.timezone = Asia/Shanghai

 

 

1.6.优化把PHP 的可执行程序文件放入路径环境变量的目录中便于系统识别

 ln -s /usr/local/php7/bin/* /usr/local/bin/
 ​
 php -m      #查看PHP 加载了哪些模块

 

 

1.7.修改httpd 服务的配置文件,让apache支持PHP

 #如果使用sed 非交互修改,需要先复制配置文件,修改复制后的文件,之后在覆盖源文件
 vim /etc/httpd.conf 
 ​
 --393行--插入以下内容
 AddType application/x-httpd-php .php
 ​
 AddType application/x-httpd-php-source .phps
 ​
 ​
 --255行--修改首页文件名设置
 DirectoryIndex index.html index.php

重启httpd 服务,查看配置文件里是否有 “LoadModule php7_module modules/libphp7.so”模块

 

1.8.验证PHP 测试页

 rm -rf /usr/local/httpd/htdocs/index.html
 ​
 vim /usr/local/httpd/htdocs/index.php
 ​
 <?php
 ​
 phpinfo();
 ​
 ?>
 ​
 使用浏览器访问 http://192.168.23.103 

 

访问结果:

image-20210809110808578

 

二:安装bbs 论坛

2.1 创建数据库,并授权

 mysql -u root -p   #输入密码登录数据库
 create database bbs;  #创建数据库bbs
 grant all on bbs.* to  'bbsuser'@'%' identified by 'abc123'; #将bbs库里所有表的权限授权给用户 bbsuser,并设置登录密码abc123
 flush privileges;   #刷新数据库
 show databases;     #查看数据库

 

 

image-20210809112719633

 

2.2.解压论坛压缩包

 unzip /opt/Discuz_X3.4_SC_UTF8.zip -d /opt/dis
 cd /opt/dis/dir_SC_UTF8/
 cp -r upload/ /usr/local/httpd/htdocs/bbs   #上传站点更新包

 


 

2.3.更改论坛目录的属主

 ps aux              #查看发现论坛进程的用户名是daemon
 cd /usr/local/httpd/htdocs/bbs
 chown -R daemon ./config
 chown -R daemon ./data
 chown -R daemon ./uc_client
 chown -R daemon ./uc_server/data

 

不改变属主,将会是不可写状态,因为启动进程的用户名是daemon

 

image-20210809113949105

image-20210809114104425

 

2.4 bbs 论坛安装步骤:

image-20210809114156796

image-20210809114219859

image-20210809114231750

image-20210809114252156

 

image-20210809114511149

image-20210809114549170

image-20210809114601984

image-20210809114843734

 

 

附:一键部署php 脚本

一键部署php 脚本

 #!/bin/bash
 wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
 yum clean all && yum makecache
 yum -y install \
 gd \
 libjpeg libjpeg-devel \
 libpng libpng-devel \
 freetype freetype-devel \
 libxml2 libxml2-devel \
 zlib zlib-devel \
 curl curl-devel \
 openssl openssl-devel
 ​
 ​
 cd /opt
 tar jxvf php-7.1.10.tar.bz2
 cd /opt/php-7.1.10/
 ​
 ./configure \
 --prefix=/usr/local/php7 \
 --with-apxs2=/usr/local/httpd/bin/apxs \
 --with-mysql-sock=/usr/local/mysql/mysql.sock \
 --with-config-file-path=/usr/local/php7 \
 --with-mysqli \
 --with-zlib \
 --with-curl \
 --with-gd \
 --with-jpeg-dir \
 --with-png-dir \
 --with-freetype-dir \
 --with-openssl \
 --enable-mbstring \
 --enable-xml \
 --enable-session \
 --enable-ftp \
 --enable-pdo \
 --enable-tokenizer \
 --enable-zip
 ​
 ​
 make && make installcp /opt/php-7.1.10/php.ini-development /usr/local/php7/php.ini
 sed -i 's#mysqli.default_socket =#mysqli.default_socket =/usr/local/mysql/mysql.sock#' /usr/local/php7/php.ini
 ​
 sed -i '939a date.timezone =  Asia/Shanghai' /usr/local/php7/php.ini 
 ln -s /usr/local/php7/bin/* /usr/local/bin/
 ​
 /usr/bin/cp  -fp /usr/local/httpd/conf/httpd.conf  /usr/local/httpd/conf/httpd.conf.bak
 ​
 sed -i "393a AddType application/x-httpd-php .php\nAddType application/x-httpd-php-source .phps" /usr/local/httpd/conf/httpd.conf.bak 
 ​
 sed -i "s/DirectoryIndex index.html/DirectoryIndex index.html  index.php/ "  /usr/local/httpd/conf/httpd.conf.bak
 ​
 /usr/bin/cp  -fp /usr/local/httpd/conf/httpd.conf.bak  /usr/local/httpd/conf/httpd.conf
 ​
 systemctl restart httpd
 ​
 mv /usr/local/httpd/htdocs/index.html /usr/local/httpd/htdocs/index.bak
 echo -e "<?php \nphpinfo(); \n?> \n" > /usr/local/httpd/htdocs/index.php
 ​
 systemctl restart httpd

 

 

 

posted @ 2021-08-15 06:06  知己一语  阅读(340)  评论(0编辑  收藏  举报