高可用 LAMP Web应用框架部署物联网平台

高可用 LAMP Web应用框架

1. 部署物联网管理平台

第一章 Ubuntu 部署 LAMP

安装 apache2
sudo apt update

sudo apt-get -y install apache2

查看 Apache 版本

apache2 -v 

启动 Apache 服务并设置服务开机自启动。

sudo systemctl start apache2

sudo systemctl enable apache2

查看 Apache 服务状态

sudo systemctl status apache2

在这里插入图片描述

安装 Mysql
apt -y install mysql-servermysql -V

启动 Mysql 服务

sudo systemctl start mysql

设置开机启动 Mysql

systemctl enable mysql

systemctl daemon-reload
配置 Mysql

进入 Mysql

sudo mysql

设置 root 用户密码

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by

'mynewpassword';

退出 Mysql 数据库

exit;

对 Mysql 进行安全型配置

mysql_secure_installation 

输入 Y,设置密码验证策略

测试登录 Mysql 数据库

mysql -u root -p
安装 PHP
apt-get install -y software-properties-commonadd-apt-repository ppa:ondrej/php

apt-get install -y php8.3 php8.3-fpm libapache2-mod-php8.3

php -v

cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf.bak

打开 apache 配置文件

vim /etc/apache2/apache2.conf

添加下列配置信息

DirectoryIndex index.html index.php

<FilesMatch \.php$>

SetHandler application/x-httpd-php

查看 apache 网站根目录的路径信息

sudo cat /etc/apache2/sites-available/000-default.conf

sudo sh -c 'echo "<?php phpinfo(); ?>" > /var/www/html/phpinfo.php'

sudo systemctl restart apache2

http://192.168.43.133/phpinfo.php

在这里插入图片描述

第二章 物联网管理平台部署

PHP 连接 MYSQL

sudo apt install php8.0-mysql php8.0-mbstring php8.0-xml php8.0-gd php8.0-curl

2.1 下载代码

拉取项目
git clone https://gitee.com/Swordup/iotplatform.git

2.2 配置 LAMP/WAMP 环境,并设置网站根目录为 public 目录

在放置 web 服务器的目录/var/www/html/创建 web 应用名称的文件夹

cd /var/www/htmlmkdir iotpt

cp -r /home/xiaocai/iotplatform /var/www/html/iotpt

修改 apache2 的配置文件,增加 web 应用文件夹的权限

vim /etc/apache2/apache2.conf

在这里插入图片描述

新建 web 应用或网站的虚拟机

cd /etc/apache2/sites-available

cp 000-default.conf iotplatform.conf(新建的 web 应用或网站名称.conf)

vim iotplatform.conf

\#增加 web 应用名称文件夹

DocumentRoot /var/www/html/iotpt/iotplatform/public

\#端口:8090

保存退出

cd sites-enabled

ln -s /etc/apache2/sites-available/web 应用或网站名称.conf web 应用或网站名称.conf

\#将 sites-available 中的 iotplatform.conf 映射到 sites-enable 中

cd ..vim ports.conf

Listen 8090

保存后重启 apache2

systemctl restart apache2
2.3 创建 MySQL 数据库并导入项目根目录下的 data.sql 数据库
\#进入 mysql

mysql -u root -p;

create database data;

\#创建的数据库名称记得与拉取项目中的数据库名称一致

use data.sql;

source /home/xiaocai/iotplatform/data.sql;
2.4 配置 application 目录下的 datebase.php 文件中的相关属性
vim /var/www/html/iotpt/iotplatform/application/database.php

在这里插入图片描述

2.5 PHP 版本大于等于 7.2,小于 7.4
由于应用兼容性问题

下载 php7.2 版本,并替换 8.3

apt-get install php7.2

apt-get install php-pear php7.2-curl php7.2-dev php7.2-gd php7.2-mbstring php7.2-zip

php7.2-mysql php7.2-xml

sudo a2enmod php7.2

sudo a2dismod php8.3

sudo a2enmod rewrite 

修改 apache2.conf

将 iotplatform AllowOverride none AllowOverride All

重启 apache systemctl restart apache2

在这里插入图片描述

在 public 目录下创建.htaccess

cd /var/www/html/iotpt/iotplatform/public/

vim .htaccess 

内容如下:

<IfModule mod_rewrite.c>

Options +FollowSymlinks -Multiviews

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]

在 php.ini 文件中找到 extension=pdo_mysql 配置项,将前面注释的分号去掉

cd /etc/php/7.2/apache2

vim php.ini

extension=pdo_mysql

在这里插入图片描述

重启 apache systemctl restart apache2

如上已然配置完毕,接下来访问网站 192.168.43.133:8090*
在这里插入图片描述
在这里插入图片描述

2.集群部署物联网平台

第一章 部署两台同样的物联网平台

步骤同上

第二章 部署集群

修改 nginx 服务器中的/etc/nginx/nginx.conf

cd /etc/nginx

cd ./sites-available

sudo vim default

增加

upstream iotcluster {

server 192.168.80.251:8090 weight=3;

server 192.168.80.133:8090 weight=2;

}

在 80 端口 server 中增加 proxy_pass http://iotcluster;

server

{

\#监听端口

listen 80;

location / {

proxy_pass http://iotcluster;

}}

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值