centos7 部署pbootcms nginx php-fpm php
一、准备工作
1.centos 7
2.下载pbootcms源码,并在pbootcms官网获取授权码(免费)
3.下载地址:https://gitee.com/hnaoyun/PbootCMS/releases/V3.0.3
4.安装 vim 编辑器,使用方法自行百度
yum install vim -y
二、环境搭建
1.安装Nginx,请自行百度安装
2.安装MySQL 5+ 数据库,自行百度安装
3.安装所需依赖库,此次安装使用的版本:php 5+ php-fpm 5+,两个版本要一致,其他版本自行尝试
yum install php php-fpm php-gd php-mysqli php-mbstring -y
三、部署pbootcms
1.配置Nginx,在nginx的conf文件夹下面的nginx.conf文件中的 http{} 中添加如下配置
server { listen 80; server_name xx.com; # 你的域名location / {root /usr/local/nginx/html/pbootcms; # 你的服务器 pbootcms存放地址index index.php;} location ~ \.php$ {root /usr/local/nginx/html/shop; # 你的服务器 pbootcms存放地址# 设置监听端口fastcgi_pass 127.0.0.1:9000;# 设置nginx的默认首页文件(上面已经设置过了,可以删除)#fastcgi_index index.php;# 设置脚本文件请求的路径fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;# 引入fastcgi的配置文件include fastcgi_params;} }
2.配置 php.ini
vim /etc/php.ini
修改 mbstring
[mbstring]mbstring.language = Chinese
extension=mbstring.so
mbstring.internal_encoding = UTF-8
mbstring.http_input = UTF-8
mbstring.http_output = UTF-8
mbstring.encoding_translation = On
mbstring.detect_order = UTF-8
mbstring.substitute_character = none;
修改 [MySQLi]
extension=php_mysqli.so
修改后保存退出
3.配置 php-fpm
首先查看Nginx的用户和用户组,
cd /usr/local/nginx/sbin #进入Nginx指令文件夹ll #两个小写的L,回车
用户组和用户是 root,所以php-fpm 的用户和用户组也是root。
如果出于安全考虑可以自行新建用户和用户组,然后更换Nginx的用户和用户组

然后配置php-fpm ,修改 user 和 group。
php-fpm 运行的用户以及用户组要与Nginx的用户和用户组相同,此处配置不当会导致访问时出现 file not found。
vim /etc/php-fpm.d/www.conf
user = rootgroup = root

4.配置pbootcms
在pbootcms根目录下的config文件夹,打开 database.php,配置type、和数据库连接信息,如下:
return array('database' => array('type' => 'mysqli', //切换到MySQL数据库 数据库连接驱动类型: mysqli,sqlite,pdo_mysql,pdo_sqlite'host' => '192.168.1.54', // 你的数据库服务器'user' => 'root', // 你的数据库连接用户名'passwd' => '123456', // 你的数据库连接密码'port' => '3306', // 你的数据库端口'dbname' => 'pbootcms' // 去掉注释,启用mysql数据库,注意修改前面的连接信息及type为mysqli//'dbname' => '/data/pbootcms.db' // 去掉注释,启用Sqlite数据库,注意修改type为sqlite));
然后编辑 config.php ,填入官网申请的授权码
// 授权码,多个授权码使用英文逗号隔开,如:'aaaaa,bbbbb'
'sn' => '你的授权码',
5.导入数据库
1)安装MySQL 5+数据库并启动服务
2)新建数据库名称为pbootcms
3)把根目录下的 static\backup\sql\xxxx.sql 数据库表导入到新建的pbootcms数据库中
4)数据库操作可以用命令行或可视化工具,自行百度
6.启动Nginx和php-fpm
cd /usr/local/nginx/sbin./nginx -t #测试配置文件 是否可用./nginx #启动Nginx#或systemctl start nginx
php-fpm 默认是不允许以root 用户启动的,所以不能用 systemctl 命令启动,要用以下命令启动
php-fpm -R -D
如果没有任何报错那么打开配置好域名即可看到pbootcms首页

至此所有部署工作已经完成了,但是在部署期间会可能遇到一些报错,下面简单说一下解决办法:
报错1:您的系统未安装或未开启xx功能扩展
原因:缺少对应扩展组件
解决:一般情况下安装对应扩展即可如:gd 扩展,yum install php-gd -y;
安装扩展后要重新启动 php-fpm 服务;
有些扩展需要修改php.ini 的扩展配置, 如:mbstring扩展需要添加:extension=mbstring.so
报错2:打开域名出现 404 、502
原因:文件路径配置不正确,php-fpm 服务没有启动成功
解决:出现这一类的问题,检查Nginx配置的 root路径和 pbootcms所在文件路径是否一致;查看php-fpm服务是否启动成功
报错3:file not found
原因:php-fpm 用户和用户组与Nginx的用户和用户组不一致导致
解决:这个解决起来比较麻烦,
第一种解决办法像我上面所述,直接使用root 运行 php-fpm 服务和Nginx,这样操作比较简单,但是存在安全隐患,可能会造成很严重的后果;
第二种办法新建用户和用户组,然后更改Nginx 和php-fpm的用户和用户组,此方法慎用,因为本人没有成功解决问题,只提供思路参考。
Nginx更改方法:到Nginx安装目录 使用 linux 更改用户和用户组的命令:chgrp -R 用户组 文件夹名
chgrp -R users test
php-fpm的用户和用户组在配置文件中,上面已经说过不再赘述。
四、结尾
所有的部署和遇到的问题都已经写完啦,有问题或者建议的可以留言。
版权声明:文章为全网原创首发,未经允许不可以转载
============THE END=============
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
