以目前来看,基于微信公众平台和小程序的应用程序开发是很普遍的,需求量也是很大的。经过几次LAMP环境应用程序的部署工作后,我觉得有必要把一般在Linux平台部署基于LAMP环境的应用程序的一般步骤记录下来作为经验积累。
为了部署过程更加便捷,我将此文章中所述的环境搭建步骤写成了 Python 脚本,使用此脚本可以自动安装LAMPP(Apache、MySQL、PHP、PHPMyAdmin)环境,可以点击这里下载安装脚本。
LAMP环境
LAMP是Linux,Apache,MySQL,PHP的缩写。Linux为操作系统,Apache为web服务器另外还提供PHP模块,MySQL是数据库。MySQL一般会有两种版本的选择,一是MySQL5.6,二是比较新的版本。PHP也是这样,一般现在会选择PHP7.x。另外,一般我接触过的会使用LAMP环境作为运行环境的应用程序为——使用PHP CI框架开发的为微信公众号或小程序提供后端服务的应用程序。
部署步骤
一、获得LINUX服务器
当然了,应用程序需要一个机器运行,可以从云平台上或者其他途径购买或获得一台Linux系统的服务器(一般使用CentOS或Ubuntu系统)。
二、安装所需软件(CENTOS为例)
1.安装Apache服务器
更新yum软件源:
yum makecache
安装Apache:
yum install httpd
安装完成后开启Apache:
service httpd start
设置开机启动:
chkconfig httpd on
可能需要的设置有:
- 防火墙打开http和https端口。
- selinux可能需要关闭或设置。
2.安装MySQL数据库
MySQL数据库在CentOS上不在默认的软件源中,它被MySQL的开源分支MariaDB替换了。CentOS中自带了MariaDB的安装,所以需要先卸载。
卸载预装的MariaDB:
yum remove mariadb-libs
访问MySQL官网下载安装MySQL源:https://dev.mysql.com/downloads/repo/yum/
CentOS为例,在上述页面中根据CentOS版本选择Redhat Enterprise Linux 6或7的rpm下载并安装。
yum localinstall 包名称
安装好之后使用下面的命令查看当前选择准备安装的MySQL版本:
yum repolist all | grep mysql
如果我们想安装的mysql版本右边显示的不是enable,就要切换安装版本:
vim /etc/yum.repos.d/mysql-community.repo
文件中的格式就像下面这样的,查看方括号中的mysql80,寻找到想安装的版本,并把enabled的值改成1即可启用,另外要将原本启用的版本enabled改成0.
[mysql80-community]
name=MySQL 8.0 Community Server
baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/6/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
然后可以使用下面的命令查看一下是否启用:
yum repolist enabled | grep mysql
若想要安装的版本已经启用,就直接使用下面的命令安装:
yum install mysql-community-server
安装完成后启动MySQL服务器:
service mysqld start
获得root的初始密码:
grep 'temporary password' /var/log/mysqld.log
使用命令登录MySQL并更改密码:
mysql -uroot -p
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';
使用下面的命令进行安全性设置(仅限于MySQL5.6):
mysql_secure_installation
设置数据库开机启动:
chkconfig mysqld on
数据库安装完成。
3.安装PHP7.x
在CentOS上默认软件源目前是没有PHP7.x的,我们需要自己添加。参照下方网页的指示:
https://webtatic.com/packages/php72/
这是一个提供CentOS软件源的网站。
获得PHP7.x的软件源:
yum install epel-release
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
安装用于Apache的PHP模块:
yum install mod_php72w php72w-opcache
另外还要安装一些工具库:
数据库连接库
php72w-mysqlnd
mbstring库
php72w-mbstring
PHP安装完成。
三、设置环境
1.设置服务器的时间(PHP的时间)
修改php.ini文件:
date.timezone=Asia/Shanghai
2.如果使用的是CI框架,就要开启Apache的url重写功能:
找到/etc/httpd/conf/httpd.conf将
LoadModule rewrite_module modules/mod_rewrite.so
这一行的注释符号#去掉,并在下方的None改成All即可。
<Directory "/var/www/html">
AllowOverride None
</Directory>
四、完成部署
现在已经基本完成部署,可以把程序代码上传到服务器上来测试一下了。
以上。
个人博客原文地址:https://maphical.cn/link/?t=6RF9S4