云计算-----单机LNMP结构WordPress网站

server/2024/10/21 8:55:05/

LNMP结构 博客网站     day1

小伙伴们,LNMP结构在第一二阶段浅浅的学习过,这里我们可以离线部署该结构。L指(虚拟机)服务器,nginx(前端代理服务器)+mysql数据库,最后基于php建设动态资源网站。

#也有前端代理服务器是apache的,建站语言还有tomcat(*^▽^*)

#服务器一般都是用linux系统的,好处安全隔离,不占空间内存大。

nginx担任前端代理服务器,负责负载均衡和前端代理作用。

它可以配置多台web网页服务器,访问相关站点资源。

NFS是起文件共享作用,mysql的作用是存储网页数据。

一般网站都会架构mysql主从同步读写分离的数据库。php需要在nginx安装的环境下,才能产生作用。

#准备以下机器,方便环境进行,单机环境即可,不上云平台购买。

主机名IP地址
client01192.168.88.10/24
web1192.168.88.11/24
web2192.168.88.12/24
web3192.168.88.13/24
database192.168.88.21/24
nfs192.168.88.31/24
haproxy01192.168.88.5
haproxy02192.168.88.6

一、单机安装WordPress

#类似WordPress的博客类网站很多(织梦,帝国等),这里只是举例子,感兴趣的可以去看看。下图是wordpress博客样例。具体功能建完我再将。^_^


  • 创建虚拟机,并配置防火墙、SELINUX、主机名、IP地址、yum

配置ansible管理环境

#这里我们用的是云计算2阶段留下来的虚拟机(192.168.88.240)主机名随课程环境更改。

你也可以自己创个master虚拟机,觉得机器多的话,可以在client虚拟机里面设置ansible 相关自动化操作,批量部署配置  虚拟机软件环境。


# 1. 创建工作目录

[root@pubserver ~]# mkdir -p project01/files
[root@pubserver ~]# cd project01/

# 2. 创建主配置文件、主机清单文件、yum配置文件

[root@pubserver project01]# vim ansible.cfg 
[defaults]
inventory = inventory
host_key_checking = false[root@pubserver project01]# vim inventory 
[webservers]
web1 ansible_host=192.168.88.11[all:vars]
ansible_ssh_user=root
ansible_ssh_pass=a[root@pubserver project01]# vim files/local88.repo 
[BaseOS]
name = BaseOS
baseurl = ftp://192.168.88.240/dvd/BaseOS
enabled = 1
gpgcheck = 0[AppStream]
name = AppStream
baseurl = ftp://192.168.88.240/dvd/AppStream
enabled = 1
gpgcheck = 0[rpms]
name = rpms
baseurl = ftp://192.168.88.240/rpms
enabled = 1
gpgcheck = 0

[root@pubserver project01]# vim files/local88.repo 
[BaseOS]
name = BaseOS
baseurl = ftp://192.168.88.240/dvd/BaseOS
enabled = 1
gpgcheck = 0[AppStream]
name = AppStream
baseurl = ftp://192.168.88.240/dvd/AppStream
enabled = 1
gpgcheck = 0[rpms]
name = rpms
baseurl = ftp://192.168.88.240/rpms
enabled = 1
gpgcheck = 0
  • 配置yum服务
[root@pubserver project01]# vim 01-upload-repo.yml 
---
- name: config repos.dhosts: alltasks:- name: delete repos.dfile:path: /etc/yum.repos.dstate: absent- name: create repos.dfile:path: /etc/yum.repos.dstate: directorymode: '0755'- name: upload local88copy:src: files/local88.repodest: /etc/yum.repos.d/[root@pubserver project01]# ansible-playbook 01-upload-repo.yml 

配置nginx

[root@pubserver project01]# vim 02-config-web1.yml 
---
- name: config web1hosts: webserverstasks:- name: install pkgs   # 安装软件包yum:name:- nginx- mysql-server- php-mysqlnd- php-fpm- php-jsonstate: present- name: start service   # 循环启动多个服务service:name: "{{item}}"state: startedenabled: yesloop:- nginx- php-fpm- mysqld
[root@pubserver project01]# ansible-playbook 02-config-web1.yml

  • 编写php文件,并访问http://192.168.88.11/测试
  • #再次提醒,必须先配置NGINX和php相关依赖,才能出现下图。
[root@web1 ~]# vim /usr/share/nginx/html/index.php
<?phpphpinfo();
?>

                                #测试能看到这个界面,说明环境配置成功。

二、分离数据库

  • 安装Wordpress网站,需要数据库,创建数据库并授权
# 1. 编写用于创建数据库和用户的脚本
[root@pubserver project01]# vim files/config_mysql.sh
#!/bin/bashmysql -e "create database wordpress character set utf8mb4"
mysql -e "create user wpuser01@localhost identified by 'wordpress'"
mysql -e "grant all privileges on wordpress.* to wpuser01@localhost"

#上面是编写了脚本,执行了创建数据库用户和密码,下图则是通过ansible的script模块调用脚本文件。

# 2. 通过ansible的script模块执行脚本
[root@pubserver project01]# vim 03-config-mysql.yml 
---
- name: config mysqlhosts: web1tasks:- name: create databasescript: files/config_mysql.sh[root@pubserver project01]# ansible-playbook 03-config-mysql.yml
# 3. 测试账号,如果可以成功登陆mysql,则数据库和用户创建正确
[root@web1 ~]# mysql -uwpuser01 -pwordpress -hlocalhost wordpress
# 1. 拷贝wordpress到web1
[root@myhost ~]# scp /linux-soft/s2/zzg/project01_soft/wordpress-6.1.1-zh_CN.tar.gz 192.168.88.11:/root/# 2. 解压并复制文件到nginx文档目录
[root@web1 ~]# tar xf wordpress-6.1.1-zh_CN.tar.gz  
[root@web1 ~]# cp -r wordpress/* /usr/share/nginx/html/# 3. php程序是由php-fpm处理的,php-fpm以apache身份运行
[root@web1 ~]# ps aux | grep php-fpm
root        5655  0.0  0.4 395620 19056 ?        Ss   12:13   0:00 php-fpm: master process (/etc/php-fpm.conf)
apache      5670  0.0  0.3 412108 13812 ?        S    12:13   0:00 php-fpm: pool www# 4. 为了让php-fpm程序能对html目录进行读写操作,需要为他授予权限
[root@web1 ~]# chown -R apache:apache /usr/share/nginx/html/

#这里我们可以直接,进入wordpress官网下载中文版,之后从真机传入虚拟机服务器。

最后按照上述骤检查 。

  • 访问http://192.168.88.11/,根据提示进行初始化

#这里的数据库名和密码,和你前面设置的mysql数据库的对应上,不然进不去嗷。

#网站登录密码,自己设置好记的,邮箱随便填写

#博客网站取名随意

注意:注销登陆后,如果再次登陆,需访问http://192.168.88.11/wp-login.php

三、配置额外的web服务器

web与数据库服务分离

#只有1台web服务器肯定是不行的,所以需要配置多台web服务器,进行负载均衡的选择。

搭建好 database 服务器,之后配好IP 192.168.88.21

修改ansible配置环境
[root@pubserver project01]# vim inventory 
[webservers]
web1 ansible_host=192.168.88.11[dbs]
database ansible_host=192.168.88.21[all:vars]
ansible_ssh_user=root
ansible_ssh_pass=a
  • 配置数据库服务器
# 1. 修改yum配置
[root@pubserver project01]# ansible-playbook 01-upload-repo.yml # 2. 安装数据库服务,并创建数据库及用户
[root@pubserver project01]# vim files/config_mysql2.sh
#!/bin/bashmysql -e "create database wordpress character set utf8mb4"
mysql -e "create user wpuser01@'%' identified by 'wordpress'"
mysql -e "grant all privileges on wordpress.* to wpuser01@'%'"[root@pubserver project01]# vim 04-config-database.yml
---
- name: config databasehosts: dbstasks:- name: install mysql    # 安装数据库服务yum:name: mysql-serverstate: present- name: start service    # 启动数据库服务service:name: mysqldstate: startedenabled: yes- name: create databasescript: files/config_mysql2.sh[root@pubserver project01]# ansible-playbook 04-config-database.yml

迁移数据库 (测试新数据库的功能)

 

 #文章里面的区块附近,可以点击查看相关设置,有网页设计知识的都看得懂,比较简单。结构都是HTML ,CSS,JAVAscript的相关内容,不涉及JAVA前端Vue框架知识。都看得懂

 

  • 注意:默认的wordpress对中文标题支持有bug,需要修改源码修复bug。或者更改【固定链接】配置,如下:

 

  • 迁移数据库
# 1. 在源服务器上备份数据库中的数据。备份数据库wordpress中的数据到wordpress.sql文件
[root@web1 ~]# mysqldump wordpress > wordpress.sql# 2. 将备份文件拷贝到新数据库服务器
[root@web1 ~]# scp wordpress.sql 192.168.88.21:/root/# 3. 在新数据库服务器上,导入数据。将wordpress.sql中的数据导入到wordpress数据库中
[root@database ~]# mysql wordpress < wordpress.sql # 4. 修改php网站,将数据库服务器地址,指向新数据库服务器
[root@web1 ~]# vim /usr/share/nginx/html/wp-config.php 
...略...31 /** Database hostname */32 define( 'DB_HOST', '192.168.88.21' );
...略...
# 5. 停止web1上的数据库服务,wordpress网站仍然可以访问
[root@web1 ~]# systemctl stop mysqld
[root@web1 ~]# yum remove -y mysql-server# 6. 停止database上的数据库服务,wordpress将不能访问
  • 查询数据库中的内容
[root@database ~]# mysql   # 打开mysql命令行
mysql> show databases;     # 查看有哪些数据库
mysql> use wordpress;      # 切换到wordpress数据库
mysql> show tables;        # 查看wordpress库中有哪些表
mysql> select * from wp_posts\G  # 查看wp_posts表中的内容

 配置额外的web服务器

#注意如果你们一开始机器就准备好了,这里的两台web2-web3服务器,和它们的IP地址就别设置到了 。

你们应该看出来了,机器和相应的ansible自动化配置,没有一开始配完。主要是考虑思路,循序渐进的演示,如果一开始ip和机器配好,自动化也设置好,就会有点知识不过脑。

  • 修改ansible配置
[root@pubserver project01]# vim inventory 
[webservers]
web1 ansible_host=192.168.88.11
web2 ansible_host=192.168.88.12
web3 ansible_host=192.168.88.13[dbs]
database ansible_host=192.168.88.21[all:vars]
ansible_ssh_user=root
ansible_ssh_pass=a
  • 配置web服务
# 1. 配置yum
[root@pubserver project01]# ansible-playbook 01-upload-repo.yml # 2. 配置web服务器
[root@pubserver project01]# vim 05-config-webservers.yml 
---
- name: config webservershosts: webserverstasks:- name: install pkgs    # 安装软件包yum:name:- nginx- php-mysqlnd- php-fpm- php-jsonstate: present- name: start service   # 循环启动多个服务service:name: "{{item}}"state: startedenabled: yesloop:- nginx- php-fpm[root@pubserver project01]# ansible-playbook 05-config-webservers.yml
  • 将web1的html目录打包并下载
[root@pubserver project01]# vim 06-fetch-web1.yml 
---
- name: copy webhosts: web1tasks:- name: compress html    # 压缩html目录到/root下archive:path: /usr/share/nginx/htmldest: /root/html.tar.gzformat: gz- name: download html    # 下载压缩文件fetch:src: /root/html.tar.gzdest: files/flat: yes[root@pubserver project01]# ansible-playbook 06-copy-web.yml 
  • 释放html压缩包到web2和web3上
  • [root@pubserver project01]# vim 07-deploy-web23.yml
    ---
    - name: deploy web2 and web3hosts: web2,web3tasks:- name: unarchive to web    # 解压文件到指定位置unarchive:src: files/html.tar.gzdest: /usr/share/nginx/[root@pubserver project01]# ansible-playbook 07-deploy-web23.yml
  • 访问http://192.168.88.12/和http://192.168.88.13/将会得到与http://192.168.88.11/相同的页面

LNMP结构 博客网站     day2

深入理解程序的数据存储

  • 程序将文字数据保存到数据库中
  • 程序将非文字数据(如图片、视频、压缩包等)保存到相应的文件目录中

验证

  • 发一篇文章,文章内容包含文字和图片
  • 在数据库中查看文字数据。在最新的一条记录中,可以查看到图片的保存位置
  • #去博客上面发哈。
[root@database ~]# mysql
mysql> use wordpress;
mysql> select * from wp_posts\G
  • 在文件系统中查看图片文件。/usr/share/nginx/html/wp-content/uploads/是固定位置,其后的2024/10是年和月目录。每个月上传的图片,都会保存到相应的月份目录。
[root@web1 html]# ls /usr/share/nginx/html/wp-content/uploads/2024/10/
snow.jpg

配置NFS服务器 

#老样子,首先配好nfs服务器IP,以后可以更具需求架构图,先配置好

  • 配置ansible环境
[root@pubserver project01]# vim inventory 
[webservers]
web1 ansible_host=192.168.88.11
web2 ansible_host=192.168.88.12
web3 ansible_host=192.168.88.13[dbs]
database ansible_host=192.168.88.21[storages]
nfs ansible_host=192.168.88.31[all:vars]
ansible_ssh_user=root
ansible_ssh_pass=a
  • 配置nfs服务
# 1. 配置yum
[root@pubserver project01]# ansible-playbook 01-upload-repo.yml # 2. 配置nfs服务
[root@pubserver project01]# vim 08-config-nfs.yml
---
- name: config nfshosts: nfstasks:- name: install nfs        # 安装nfsyum:name: nfs-utilsstate: present- name: mkdir /nfs_root    # 创建共享目录file:path: /nfs_rootstate: directorymode: "0755"- name: nfs share          # 修改配置文件lineinfile:path: /etc/exportsline: '/nfs_root 192.168.88.0/24(rw)'- name: start service      # 循环启动服务service:name: "{{item}}"state: startedenabled: yesloop:- rpcbind       # nfs服务依赖rpcbind服务- nfs-server[root@pubserver project01]# ansible-playbook 08-config-nfs.yml# 3. 查看共享输出
[root@nfs ~]# showmount -e
Export list for nfs:
/nfs_root 192.168.88.0/24
迁移文件至nfs共享
  • 迁移文件至nfs共享
# 1. 重新下载web1的html目录
[root@pubserver project01]# cp 06-fetch-web1.yml 09-fetch-web1.yml
---
- name: copy webhosts: web1tasks:- name: compress html        # 压缩html目录到/root下archive:path: /usr/share/nginx/htmldest: /root/html2.tar.gzformat: gz- name: download htmlfetch:src: /root/html2.tar.gz  # 下载压缩文件dest: files/flat: yes[root@pubserver project01]# ansible-playbook 09-fetch-web1.yml 
# 2. 释放压缩包到nfs服务器
[root@pubserver project01]# cp 07-deploy-web23.yml 10-deploy-nfs.yml
[root@pubserver project01]# vim 10-deploy-nfs.yml 
---
- name: deploy nfshosts: nfstasks:- name: unarchive to web     # 将控制端压缩文件解压到指定位置unarchive:src: files/html2.tar.gzdest: /nfs_root/[root@pubserver project01]# ansible-playbook 10-deploy-nfs.yml 
# 3. 清除web服务器的html目录
[root@pubserver project01]# vim 11-rm-html.yml
---
- name: rm htmlhosts: webserverstasks:- name: rm htmlfile:path: /usr/share/nginx/htmlstate: absent- name: create htmlfile:path: /usr/share/nginx/htmlstate: directoryowner: apachegroup: apachemode: "0755"[root@pubserver project01]# ansible-playbook 11-rm-html.yml
# 4. 挂载nfs到web服务器
[root@pubserver project01]# vim 12-mount-nfs.yml
---
- name: mount nfshosts: webserverstasks:- name: install nfsyum:name: nfs-utilsstate: present- name: mount nfsmount:path: /usr/share/nginx/htmlsrc: 192.168.88.31:/nfs_root/htmlfstype: nfsstate: mounted[root@pubserver project01]# ansible-playbook 12-mount-nfs.yml

配置代理服务器 

#配置好机器IP

  • 配置ansible环境
    [root@pubserver project01]# vim inventory 
    [webservers]
    web1 ansible_host=192.168.88.11
    web2 ansible_host=192.168.88.12
    web3 ansible_host=192.168.88.13[dbs]
    database ansible_host=192.168.88.21[storages]
    nfs ansible_host=192.168.88.31[lb]
    haproxy1 ansible_host=192.168.88.5
    haproxy2 ansible_host=192.168.88.6[all:vars]
    ansible_ssh_user=root
    ansible_ssh_pass=a

  • 配置高可用、负载均衡功能
# 1. 配置yum
[root@pubserver project01]# ansible-playbook 01-upload-repo.yml # 2. 配置调度服务器
[root@pubserver project01]# vim 13-install-lb.yml 
---
- name: install lbhosts: lbtasks:- name: install pkgyum:name: haproxy,keepalivedstate: present[root@pubserver project01]# ansible-playbook 13-install-lb.yml 
# 3. 修改配置文件并启动服务
[root@pubserver project01]# vim 14-config-lb.yml
---
- name: config haproxyhosts: lbtasks:- name: rm linesshell: sed -i '64,$d' /etc/haproxy/haproxy.cfg- name: add linesblockinfile:path: /etc/haproxy/haproxy.cfgblock: |listen wordpressbind 0.0.0.0:80balance roundrobinserver web1 192.168.88.11:80 check inter 2000 rise 2 fall 5server web2 192.168.88.12:80 check inter 2000 rise 2 fall 5server web3 192.168.88.13:80 check inter 2000 rise 2 fall 5listen monbind 0.0.0.0:1080stats refresh 30sstats uri /monstats auth admin:admin- name: start serviceservice:name: haproxystate: startedenabled: yes[root@pubserver project01]# ansible-playbook 14-config-lb.yml

# 4. haproxy1配置keepalived,实现高可用集群
[root@haproxy1 ~]# vim /etc/keepalived/keepalived.conf 
...略...12    router_id haproxy1   # 为本机取一个唯一的id13    vrrp_iptables        # 自动开启iptables放行规则
...略...20 vrrp_instance VI_1 {21     state MASTER        # 主服务器状态是MASTER22     interface eth023     virtual_router_id 5124     priority 10025     advert_int 126     authentication {27         auth_type PASS28         auth_pass 111129     }30     virtual_ipaddress {31         192.168.88.80       # vip地址32     }33 }
# 以下全部删除

# #########  33行下面去哪删除 !!!!!!!!!!!!!!!!!!!!

# 5. haproxy2配置keepalived
[root@haproxy1 ~]# scp /etc/keepalived/keepalived.conf 192.168.88.6:/etc/keepalived/
[root@haproxy2 ~]# vim /etc/keepalived/keepalived.conf 
...略...12    router_id haproxy2   # 为本机取一个唯一的id13    vrrp_iptables        # 自动开启iptables放行规则
...略...20 vrrp_instance VI_1 {21     state BACKUP        # 备份服务器状态是BACKUP22     interface eth023     virtual_router_id 5124     priority 80         # 备份服务器优先级低于主服务器25     advert_int 126     authentication {27         auth_type PASS28         auth_pass 111129     }30     virtual_ipaddress {31         192.168.88.8032     }33 }

#区别1个是master,1个配置为了backup.

服务器ID不一样,优先级不一样。别搞混乱了

 
# 6. 启动服务
[root@haproxy1 ~]# systemctl enable keepalived.service --now
[root@haproxy2 ~]# systemctl enable keepalived.service --now
# 7. 验证。haproxy1上出现VIP。客户端访问http://192.168.88.80即可
[root@haproxy1 ~]# ip a s | grep 192inet 192.168.88.5/24 brd 192.168.88.255 scope global noprefixroute eth0inet 192.168.88.80/32 scope global eth0

 配置名称解析

通过本机hosts文件实现名称解析
[root@myhost ~]# echo "192.168.88.80 www.danei.com" >> /etc/hosts
  • 如果客户端是windows主机,则使用记事本程序打开C:\windows\System32\drivers\etc\hosts添加名称解析
  • 当点击http://www.danei.com页面中任意链接时,地址栏上的地址,都会变成192.168.88.11。通过以下方式修复它:
# 在nfs服务器上修改配置文件
[root@nfs ~]# vim /nfs_root/html/wp-config.php 
# define('DB_NAME', 'wordpress')它的上方添加以下两行:
define('WP_SITEURL', 'http://www.danei.com');
define('WP_HOME', 'http://www.danei.com');

以上就是全部的云计算第一个简单项目了,该项目主要讲述了,搭建网站的lnmp结构。和相关的数据库读写分离,web服务器的keepalived,与NGINX的负载均衡设值。

彩蛋: 

        很多国产监控面板,上面都有一键建站功能,你熟悉了上述功能之后,你就可以快速上手使用了。

 功能也很多,和华为云、阿里云也有合作。在两家平台创建服务器时,可以自己勾选宝塔面板,安装在服务器上。设置也方便绑定ip。windterm等远程连接软件,都可以在命令行输入

bt      调用出bt终端。

想要下载可以点下方链接,下载电脑对应版本。

 宝塔面板下载,免费全能的服务器运维软件 

我不是打广告的,宝塔也没给我钱嗷,喜欢就可以试试,毕竟宝塔本省也是国产监控软件 的一种,了解一下。  ^_^

  

 问题:  单机版可以进入自己的域名网站,自己也可以领ssl测试证书。如果是公网部署网站,需要自己 买域名,配置SSL安全证书,网站工商局网上备案等相关细微操作。


http://www.ppmy.cn/server/133592.html

相关文章

Windows10去掉隐藏文件仍找不到hosts文件的解决办法

正常情况下hosts文件在目录C:\Windows\System32\drivers\etc中&#xff0c;最近新装的Windows10系统发现该目录下没有hosts文件。 执行如下命令hosts文件出现&#xff1a; 执行 for /f %P in (dir %windir%\WinSxS\hosts /b /s) do copy %P %windir%\System32\drivers\etc &am…

【网络知识】LVS+KeepAlived实现负载均衡+高可用

目录 一、Linux Virtual Server (LVS)&#xff1a;构建高性能负载均衡器1. LVS 概述2. LVS 的工作原理3. LVS 的组件3.1 虚拟服务器 (Virtual Server)3.2 真实服务器 (Real Server)3.3 负载均衡器 (Load Balancer) 4. LVS 的配置和管理4.1 安装 IPVS 模块4.2 配置虚拟服务器4.3…

深入解析 Go 语言接口:多接口实现与接口组合的实际应用

文章目录 一、引言二、一个类型实现多个接口1. 定义多个接口2. 类型实现多个接口3. 使用多个接口 三、接口的组合1. 接口嵌套2. 实现复合接口 四、实际开发中的应用场景1. 多态与模块化设计2. 松耦合系统设计3. 测试与依赖注入4. 事件驱动架构中的应用 五、小结 一、引言 在 G…

如何分析 JVM 内存泄漏问题:常见原因、分析 JVM 内存泄漏的工具与步骤、如何避免 JVM 内存泄漏

文章目录 1. JVM 内存泄漏的常见原因2. 分析 JVM 内存泄漏的工具与步骤2.1 使用 jmap 工具生成堆转储文件2.2 使用 jvisualvm 分析堆转储2.3 使用 Eclipse Memory Analyzer Tool (MAT)2.4 监控 GC 日志2.5 实时监控内存使用情况 3. 如何避免 JVM 内存泄漏4. 总结5.相关博客 JVM…

vue.js【常用UI组件库】

Element Plus组件库 Element Plus是基于Vue 3开发的优秀的PC端开源UI组件库&#xff0c;它是Element的升级版&#xff0c;对于习惯使用Element的人员来说&#xff0c;在学习Element Plus时&#xff0c;不用花费太多的时间。因为Vue 3不再支持IE 11&#xff0c;所以Element Plu…

【LeetCode热题100】分治-归并

这篇博客记录了分治-归并的几道题目&#xff0c;包括排序数组、逆序对、计算右侧小于当前元素的个数、翻转对这几道题目。 //归并排序 class Solution {//创建一个全局变量&#xff0c;这样可以提高效率vector<int> tmp; public:void _sortArray(vector<int>&…

Vue 3 的不同版本总结

Vue 3 的不同版本&#xff08;例如 3.x 系列的多个次版本&#xff09;在语法和特性上有一些变化和改进。以下是 Vue 3 中随着版本迭代的一些语法变化和新特性的总结。 1. Vue 3.0: 初始发布 主要特性&#xff1a; 组合式 API (Composition API)&#xff1a;引入 setup 函数&…

小米等手机彻底关闭快应用

文章目录 快应用的是非最终措施&#xff1a;撤销快应用隐私协议配套措施&#xff1a;安卓去除开屏广告 无用的操作&#xff1a;载快应用小米手机无用&#xff0c;其他手机可以尝试的操作关闭唤起快应用服务打开防止误触、后台启动其他应用 其他措施&#xff1a;冻结、加密快应用…