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=============


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部