ECS 7 天实践训练营(三)- 搭建公众号管理系统微擎

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDS AI 助手,专业版
简介: ECS 7 天实践训练营(三)- 搭建公众号管理系统微擎

一、 介绍

微擎是一家开源的公众平台 SAAS 领域技术服务提供商,成立于 2013 年 7 月,总部位于安徽宿州。微擎是免费开源的公众平台管理系统,拥有近百万的注册用户数,开发者认证超 20,000 名,3,000 + 款应用插件,10,000 + 应用场景,服务规模超 200,000 家,直接间接服务用户过亿 -- 百度百科

二、搭建 LNMP 环境

  1. 查看 wget 是否安装

    
    `rpm -qa wget`
    
    没有则安装
    
    `yum install wget`
    
  2. 查看是否安装编译器

    
    `rpm -qa gcc`
    
    没有则安装
    
    `yum install gcc gcc-c++`
    
  3. 安装 Nginx

  • 安装 Nginx 依赖:
yum -y install pcre pcre-devel
     yum -y install zlib zlib-devel
     yum -y install openssl openssl-devel
  • 下载并解压 Nginx:
cd /usr/local/src
     wget http://nginx.org/download/nginx-1.18.0.tar.gz
     tar -zxvf nginx-1.18.0.tar.gz
  • 编译安装 Nginx:
cd nginx-1.18.0
     ./configure --prefix=/usr/local/nginx
     make
     make install
  • 创建 nginx 账号:
groupadd nginx
     useradd -M -g nginx -s /sbin/nologin nginx
     cd /usr/local/nginx/conf

vim nginx.conf
将第一行 user 改为:
user nginx nginx
完成后执行命令
/usr/local/nginx/sbin/nginx -t
ESC+:wq+Enter 退出并保存

  1. 启动 Nginx:/usr/local/nginx/sbin/nginx ,浏览器输入服务器公网 IP,出现 Welcome to nginx! 则启动成功
  2. 安装 MySQL

  • 下载并应用 MySQL 的 yum 资源包:
cd ~
     wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
     rpm -ivh mysql-community-release-el7-5.noarch.rpm
     yum update
     yum install mysql-server
  • 改变文件属主和属组:

    
    `chown mysql:mysql -R /var/lib/mysql`
    
  • 初始化并启动 MySQL:

    
    `mysqld --initialize`
    
    `service mysqld start`
    
  • 修改密码并登陆 MySQL:

    
    `mysqladmin -u root password "your-password"`
    
    `mysql -u root -p`
    
    输入密码登陆,出现`mysql>`则成功
    
    
  1. 安装 PHP
  • 安装 PHP 依赖:
yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel
  • 下载 PHP:

    
    `wget https://www.php.net/distributions/php-7.3.21.tar.gz`
    
    `tar -zxvf php-7.3.21.tar.gz`
    
  • 编译安装:

cd php-7.3.21
     ./configure --prefix=/usr/local/php --disable-fileinfo --enable-fpm --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-openssl --with-zlib --with-curl --enable-ftp --with-gd --with-xmlrpc --with-jpeg-dir --with-png-dir --with-freetype-dir --enable-gd-native-ttf --enable-mbstring --with-mcrypt=/usr/local/libmcrypt --enable-zip --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-mysql-sock=/var/lib/mysql/mysql.sock --without-pear --enable-bcmath
     make
     make install
  • 移动 PHP 配置文件:

    
    `cp php.ini-development /etc/php.ini`
    
  • 配置 php-fpm 运行账号:

cd /usr/local/php/etc
     cp php-fpm.conf.default php-fpm.conf
     cd php-fpm.d
     cp www.conf.default www.conf

vim www.conf
将其中的user=nobodygroup=nobody改为user=nginxgroup=nginx

  1. 使 Nginx 支持 PHP
  • 修改配置文件:vim /usr/local/nginx/conf/nginx.conf
#location ~ .php$ {
         #    root           html;
         #    fastcgi\_pass   127.0.0.1:9000;
         #    fastcgi\_index  index.php;
         #    fastcgi\_param  SCRIPT\_FILENAME  /scripts$fastcgi\_script\_name;
         #    include        fastcgi\_params;
         #}

将其中的改为注释取消,ESC+:wq+Enter 退出并保存

  • 将 Nginx 添加到系统服务:

    
    `vim /etc/init.d/nginx`
    
    ​ 内容为:
    
    
#!/bin/sh
     # nginx - this script starts and stops the nginx daemin
     #
     # chkconfig:   - 85 15
     # description:  Nginx is an HTTP(S) server, HTTP(S) reverse 
     #               proxy and IMAP/POP3 proxy server
     # processname: nginx
     # config:      /usr/local/nginx/conf/nginx.conf
     # pidfile:     /usr/local/nginx/logs/nginx.pid
     # Source function library.
     . /etc/rc.d/init.d/functions
     # Source networking configuration.
     . /etc/sysconfig/network
     # Check that networking is up.
     \[ "$NETWORKING" = "no" \] && exit 0
          nginx="/usr/local/nginx/sbin/nginx"
          prog=$(basename $nginx)
          NGINX\_CONF\_FILE="/usr/local/nginx/conf/nginx.conf"
          lockfile=/var/lock/subsys/nginx
          start() {
              \[ -x $nginx \] || exit 5
              \[ -f $NGINX\_CONF\_FILE \] || exit 6
              echo -n $"Starting $prog: "
              daemon $nginx -c $NGINX\_CONF\_FILE
              retval=$?
              echo
              \[ $retval -eq 0 \] && touch $lockfile
              return $retval
          }
             stop() {
              echo -n $"Stopping $prog: "
              killproc $prog -QUIT
              retval=$?
              echo
              \[ $retval -eq 0 \] && rm -f $lockfile
              return $retval
          }
                      restart() {
              configtest || return $?
              stop
              start
          }
               reload() {
              configtest || return $?
              echo -n $"Reloading $prog: "
              killproc $nginx -HUP
              RETVAL=$?
              echo
          }
          force\_reload() {
              restart
          }
               configtest() {
            $nginx -t -c $NGINX\_CONF\_FILE
          }
                    rh\_stlatus() {
              status $prog
          }
               rh\_status\_q() {
              rh\_status >/dev/null 2>&1
          }
          case "$1" in
              start)
                  rh\_status\_q && exit 0
             $1
             ;;
              stop)
                       rh\_status\_q || exit 0
             $1
             ;;
              restart|configtest)
             $1
             ;;
              reload)
             rh\_status\_q || exit 7
             $1
             ;;
                   force-reload)
             force\_reload
             ;;
         status)
             rh\_status
             ;;
                   condrestart|try-restart)
                  rh\_status\_q || exit 0
                 ;;
              \*)
                  echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
             exit 2
          esac

chmod 755 /etc/init.d/nginx
chkconfig –add nginx

  • 重启 Nginx:

    
    `service nginx restart`
    
    
  1. 设置 php-fpm 为系统服务:
  • 添加配置文件:

    
    `vim /etc/systemd/system/php-fpm.service`
    
    内容为
    
    
\[Unit\]
          Description=php-fpm
          After=network.target
          \[Service\]
          Type=forking
          ExecStart=/usr/local/php/sbin/php-fpm
          PrivateTmp=True
          \[Install\]
          WantedBy=multi-user.target

ESC+:wq+Enter 退出并保存

  1. 设置 php-fpm 开机自启并启动 php-fpm:
  • 设置 php-fpm 开机自启动:

    
    `systemctl enable php-fpm.service`
    
  • 启动 php-fpm:

    
    `systemctl start php-fpm.service`
    
  • 查看启动是否成功:

    
    `ps aux | grep php-fpm`
    
    

三、搭建微擎

  1. 创建站点:
  • 创建 Nginx 配置文件

    
    `mkdir -p /usr/local/nginx/vhost/weengine`
    
    `vim /usr/local/nginx/vhost/vhost_weengine.conf`
    
    内容为:
    
    
server {
             listen       80;
             server\_name  localhost;
                  #charset koi8-r;
                  #access\_log  logs/host.access.log  main;
                  location / {
                 root   vhost/weengine;
                 index  index.html index.htm;
             }
                  #error\_page  404              /404.html;
                  # redirect server error pages to the static page /50x.html
             #
             error\_page   500 502 503 504  /50x.html;
             location = /50x.html {
                 root   html;
             }
                  # proxy the PHP scripts to Apache listening on 127.0.0.1:80
             #
             #location ~ .php$ {
             #    proxy\_pass   http://127.0.0.1;
             #}
                  # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
             #
             location ~ .php$ {
                 root           html;
                 fastcgi\_pass   127.0.0.1:9000;
                 fastcgi\_index  index.php;
                 fastcgi\_param  SCRIPT\_FILENAME /usr/local/nginx/vhost/weengine$fastcgi\_script\_name;
                 include        fastcgi\_params;
             }
                  # deny access to .htaccess files, if Apache's document root
             # concurs with nginx's one
             #
             #location ~ /.ht {
             #    deny  all;
             #}
         }
          vim /usr/local/nginx/conf/nginx.conf
           修改nginx默认端口listen       800;
          include /usr/local/nginx/vhost/\*.conf;

vim /usr/local/nginx/conf/nginx.conf

在 http{} 代码块最后添加

include /usr/local/nginx/vhost/*.conf;

重启 nginx

service nginx restart

  • 下载并解压微擎

    
    `cd /usr/local/nginx/vhost/weengine`
    
    `wget https://cdn.w7.cc/download/WeEngine-Laster-Online.zip`
    
    `unzip https://cdn.w7.cc/download/WeEngine-Laster-Online.zip`
    
    
  1. 配置微擎
  • 浏览器输入公网 IP/install.php 按提示一步步配置即可

参考文章:

LNMP 环境搭建 (linux+Nginx + Mysql + PHP)

service nginx start|stop|reload 报错:Failed to reload nginx.service: Unit not found.【解决方案】

相关实践学习
使用操作系统智能助手OS Copilot解锁操作系统运维与编程
在本实验场景中,将在阿里云ECS上体验OS Copilot产品。OS Copilot是阿里云操作系统团队基于大模型构建的OS智能助手。它具有自然语言问答、辅助命令执行、系统运维调优等功能,帮助用户更好地使用Linux,提升阿里云的使用体验。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
7月前
|
Ubuntu 安全 关系型数据库
安装MariaDB服务器流程介绍在Ubuntu 22.04系统上
至此, 您已经在 Ubuntu 22.04 系统上成功地完成了 MariadB 的标准部署流程,并且对其进行基础但重要地初步配置加固工作。通过以上简洁明快且实用性强大地操作流程, 您现在拥有一个待定制与使用地强大 SQL 数据库管理系统。
411 18
|
7月前
|
Ubuntu 安全 关系型数据库
安装MariaDB服务器流程介绍在Ubuntu 22.04系统上
至此, 您已经在 Ubuntu 22.04 系统上成功地完成了 MariadB 的标准部署流程,并且对其进行基础但重要地初步配置加固工作。通过以上简洁明快且实用性强大地操作流程, 您现在拥有一个待定制与使用地强大 SQL 数据库管理系统。
491 15
|
存储 Ubuntu Linux
HPE SPP 2025.09.00.00 - HPE 服务器固件、驱动程序和系统软件包 (Released Oct 2025)
HPE SPP 2025.09.00.00 - HPE 服务器固件、驱动程序和系统软件包
226 0
|
8月前
|
域名解析 运维 监控
阿里云轻量服务器的系统镜像和应用镜像的区别
轻量应用服务器是阿里云推出的易用型云服务器,支持一键部署、域名解析、安全管理和运维监控。本文介绍其系统镜像与应用镜像的区别及选择建议,助您根据业务需求和技术能力快速决策,实现高效部署。
|
8月前
|
人工智能 自然语言处理 安全
Python构建MCP服务器:从工具封装到AI集成的全流程实践
MCP协议为AI提供标准化工具调用接口,助力模型高效操作现实世界。
1389 1
|
9月前
|
监控 关系型数据库 数据库连接
FastAdmin系统框架通用操作平滑迁移到新服务器的详细步骤-优雅草卓伊凡
FastAdmin系统框架通用操作平滑迁移到新服务器的详细步骤-优雅草卓伊凡
293 3
FastAdmin系统框架通用操作平滑迁移到新服务器的详细步骤-优雅草卓伊凡
|
8月前
|
存储 Linux 测试技术
HPE SPP 2025.07.00.00 - HPE 服务器固件、驱动程序和系统软件包
HPE SPP 2025.07.00.00 - HPE 服务器固件、驱动程序和系统软件包
304 4
|
10月前
|
Linux 网络安全 数据安全/隐私保护
使用Linux系统的mount命令挂载远程服务器的文件夹。
如此一来,你就完成了一次从你的Linux发车站到远程服务器文件夹的有趣旅行。在这个技术之旅中,你既探索了新地方,也学到了如何桥接不同系统之间的距离。
1654 21
|
10月前
|
Ubuntu Linux 数据中心
阿里云服务器纯净版系统解析:公共镜像版本特性与选择指南参考
当我们选购阿里云服务器时,系统镜像的选择至关重要。阿里云为用户提供了多种系统镜像,包括公共镜像、自定义镜像、共享镜像、云市场镜像和社区镜像。其中,公共镜像为纯净版系统,这些系统皆已正版授权,旨在为ECS实例上的应用程序提供安全、稳定的运行环境。本文将为大家详细汇总阿里云服务器纯净版系统及最新的系统版本,以供大家了解和选择。
|
10月前
|
数据采集 人工智能 BI
MyEMS能源管理系统后台配置-邮件服务器设置
本文介绍其邮件服务器配置方法。
139 0

热门文章

最新文章