Linux使用LAMP搭建Apache+PHP+MySQL服务器
共 3176字,需浏览 7分钟
·
2021-09-17 00:57
相信很多小伙伴在掌握了网站开发技能后,都想搭建自己的服务器把自己的网站真正运行起来。无论你是前端开发、后端开发还是多面手全栈开发,都需要掌握基本的Web服务器搭建技能。
目前搭建Web服务器主要有三种方式:
纯技术流,每个服务都自己安装。
使用集成环境,省心省事。
使用Docker,追求时尚高效。
没有哪种方式是绝对的好,也没有绝对的不好。大家根据自己的情况选择。本教程主要介绍下使用集成环境的方式搭建Web服务器,主要特点如下:
技术环境:Apache+PHP+MySQL 适用对象:短平快搭建基础Web服务器,满足中小型网站运行 |
前言:集成环境选型
目前有很多Web服务集成环境软件可以选择,比如:
【免费】小皮面板(phpStudy)
网址:https://www.xp.cn/
【付费】宝塔面板
网址:https://www.bt.cn/
【免费】XAMMP
网址:https://www.apachefriends.org/index.html
【免费】bitnami的LAMP
网址:https://bitnami.com/stack/lamp
本次教程选用的是bitnami的LAMP。
先来说说这几款集成环境的区别。
小皮面板和宝塔面板安装非常方便,如果是在Linux系统上,一个命令就完成了安装,而且还配有可视化的运维管理后台,可随时切换Ngnix、Apache、PHP、MySQL等软件的版本,还可以随时安装卸载FTP、phpMyAdmin等各种工具软件。全程可视化运维操作,即使不熟悉Linux命令也能搞定,可谓是超级懒人版。为什么没有选择这两个?一个是集成的软件版本更新慢,另一个原因就是MySQL如果是企业用的话,是要付费的。
集成软件版本低主要涉及服务器的安全隐患,如果只是个人网站展示,没有重要的业务,用用这个倒也无妨。对网站安全要求高的话,建议不选用这两个集成环境了。而且发现了环境漏洞也很难自己去修复。比如小皮面板,我在使用Linux1.29版本的时候,其集成的openssl服务还是1.0.2k-fips 26 Jan 2017这个版本,导致在做网站安全扫描的时候,被告警为高危漏洞。我们也不能只被动等待第三方软件的更新,所以对安全要求高的情况不建议使用。
再说说XAMMP和bitnami的LAMP。
这两款都是国外的集成环境,也很老牌了。总体来说,没有非常大的差别,需要下载安装文件进行安装,而且都没有可视化的运维界面,所以需要自己手动修改配置文件来调整网站环境。他们的有点就是更新很及时,基本上集成的软件中有稳定版本更新,就会发布一个新版,而且数据库用的是MariaDB ,不用担心付费问题。至于为什么最终选择了bitnami的LAMP。在网上查阅相关资料,据说是比XAMMP在性能上优化更好一点,但是我没有进行验证过。另外就是bitnami的官网看上去给人的感觉就是靠谱,我在2012年就在用LAMP,这么多年也是比较信赖这个品牌。
接下来,就进入教程的正式部分,。
1.去官网下载集成安装包
网址:https://bitnami.com/stack/lamp
Linux系统应该下载的是run文件。Windows和MacOS请下载对应的安装文件。
2. 把下载好的安装包上传到服务器中
本教程的路径为/data/download/
3. 安装集成包
进入到安装包目录,执行以下命令:
cd /data/download/
chmod +x xxxx.run
./xxxx.run
注:xxxx表示刚刚下载的安装文件名。
安装开始前,会询问是否安装以下可选软件,没有特殊需要,可以全部选n。
Varnish
Zend Framework
Symfony
CodeIgniter
CakePHP
Smarty
Laravel
然后会让你设置MySQL密码。
之后会确认安装目录,本教程的默认目录是:
/opt/lampstack-8.0.9-0
以上都确认后就会开始安装。
安装完成后,会提示是否启动,输入Y即可:
Launch Bitnami LAMP Stack [Y/n]: Y
4. 验证
浏览器输入服务器IP,默认页面已可访问。
5. 更改网站目录
修改LAMP的Apache的配置文件:
vim /opt/lampstack-8.0.9-0/apache2/conf/bitnami/bitnami.conf
找到这个地方:
<VirtualHost _default_:80>
DocumentRoot "/opt/lampstack-8.0.9-0/apache2/htdocs"
<Directory "/opt/lampstack-8.0.9-0/apache2/htdocs">
...(略)
<VirtualHost _default_:443>
DocumentRoot "/opt/lampstack-8.0.9-0/apache2/htdocs"
<Directory "/opt/lampstack-8.0.9-0/apache2/htdocs">
本教程的网站目录是/www/localhost_80,把:
/opt/lampstack-8.0.9-0/apache2/htdocs
改为:
/www/localhost_80
保存退出。
6. LAMP服务器命令
LAMP通过sh脚本提供了启动、停止、重启、查看状态的命令,进入到LAMP目录中,运行sh脚本文件的帮助命令:
cd /opt/lampstack-8.0.9-0
sh ctlscript.sh -h
可查看全部命令:
usage: ctlscript.sh help
ctlscript.sh (start|stop|restart|status)
ctlscript.sh (start|stop|restart|status) mariadb
ctlscript.sh (start|stop|restart|status) apache
help - this screen
start - start the service(s)
stop - stop the service(s)
restart - restart or start the service(s)
status - show the status of the service(s)
执行以下命令,重启服务,以上设置生效。
sh ctlscript.sh restart
7. 禁止Apache显示目录浏览
修改之前提到的bitnami.conf:
vim /opt/lampstack-8.0.9-0/apache2/conf/bitnami/bitnami.conf
以下地方有两处,都要修改:
Options Indexes FollowSymLinks
改为:
Options FollowSymLinks
修改完成后别忘了重启Apache。
cd /opt/lampstack-8.0.9-0
sh ctlscript.sh restart apache
经过以上操作,已经搭建好了Apache+PHP+MariaDB(MySQL)的服务器。如果你之前是基于MySQL开发的程序,改用MariaDB不需要做任何调整。
本次教程仅是基础的环境搭建。当然,要进一步调优,还需掌握更深入的运维知识。