小兔网

如果是用于建站的话,我还是推荐使用Nginx的。因为我以前也是一个Apache用户,很多人说Nginx在处理静态请求方面很强,而Apache在稳定性方面要强,不过我在建站的过程中还是觉得Nginx用起来方便一些。

现在市面上流行的服务器面板大多数还是使用Apache架构的,例如VestaCP、ISPConfig、BT.cn宝塔面板等,即使OneinStack、LNMP这两个有名的Nginx一键安装包也提供了LAMP模式,可以用于安装Apache建站环境。

今天再来分享一个Apache建站环境搭建的一键安装包LAMP.sh一键安装包,作者为teddysun,之前的三大免费工具助你检测VPS服务器真伪中一键测试VPS性能的脚本就是出自该作者之手,而且不少的朋友肯定还用过他的B#B@R一键安装包。

LAMP.sh一键安装包搭建Apache建站环境-自动安装SSL和PHP

更多的免费的服务器控制面板可以看看我做的专题汇总:服务器控制面板榜单,更多的站长工具还有:

  1. 三款优秀的在线文件管理器(目录列表)对比-Directory Lister、h5ai和FileRun
  2. 三大原因让我放弃腾讯阿里云企业邮箱-附国内外企业(域名)邮箱汇总
  3. VPS挂载国内外网盘实现免费扩容工具:Rclone,COS-Fuse和OSSFS

一、LAMP.sh安装

LAMP 一键安装包是一个用 Linux Shell 编写的可以为 CentOS/Debian/Ubuntu 系统的 VPS 或服务器安装 LAMP(Linux + Apache + MySQL/MariaDB/Percona + PHP) 生产环境的 Shell 程序。

网站:https://lamp.sh/

项目:https://github.com/teddysun/lamp

1.1  安装要求

目前LAMP.sh提供的PHP、Apache、MysqL、MariaDB等都更新到最新版,且支持Let’s Encrypt免费证书。

系统需求

系统支持:CentOS 6+/Debian 7+/Ubuntu 12+

内存要求:≥ 512MB

硬盘要求:至少 5GB 以上的剩余空间

服务器必须配置好 软件源 和 可连接外网

必须具有系统 root 权限

强烈建议使用全新系统来安装

支持组件

支持 PHP 自带几乎所有组件

支持 MySQL、MariaDB、Percona Server数据库

支持 Redis(可选安装)

支持 XCache (可选安装)

支持 Swoole (可选安装)

支持 Memcached (可选安装)

支持 ImageMagick (可选安装)

支持 GraphicsMagick (可选安装)

支持 ZendGuardLoader (可选安装)

支持 ionCube Loader (可选安装)

自助升级 Apache,PHP,phpMyAdmin,MySQL/MariaDB/Percona Server至最新版本

命令行新增虚拟主机(使用 lamp 命令),操作简便

支持一键卸载

1.2  安装步骤

事前准备(安装 wget、screen、unzip,创建 screen 会话)

yum -y install wget screen git      // for CentOSapt-get -y install wget screen git  // for Debian/Ubuntu

git clone 并赋予脚本执行权限

git clone https://github.com/teddysun/lamp.gitcd lampchmod +x *.sh

开始安装

screen -S lamp./lamp.sh

安装过程中会让你选择Apache、PHP、MysqL等版本。

LAMP.sh一键安装包搭建Apache建站环境-自动安装SSL和PHP

相关的组件也可以一并安装。

LAMP.sh一键安装包搭建Apache建站环境-自动安装SSL和PHP

最后看到如下提示就表示安装成功了。

LAMP.sh安装成功

二、LAMP.sh使用

2.1  虚拟主机管理

LAMP.sh添加虚拟主机需要进入到命令工具中手动添加。命令如下:

lamp add      创建虚拟主机lamp del      删除虚拟主机lamp list     列出虚拟主机

在添加的过程中会让你绑定域名、设置好数据库账号与密码等,另外如果你要一键开启Let’s Encrypt,需要提前将域名做好DNS解析,然后在添加虚拟主机选择Let’s Encrypt证书选项。

LAMP.sh开启SSL证书

这是LAMP.sh创建成功的主机,自动添加上了SSL证书。

LAMP.sh访问成功

2.2  程序升级和目录

如何升级:

git pull                 // Get latest version./upgrade.sh             // Select one to upgrade./upgrade.sh apache      // Upgrade Apache./upgrade.sh db          // Upgrade MySQL/MariaDB/Percona./upgrade.sh php         // Upgrade PHP./upgrade.sh phpmyadmin  // Upgrade phpMyAdmin

如何卸载

./uninstall.sh 

程序目录

MySQL 安装目录: /usr/local/mysql

MySQL 数据库目录:/usr/local/mysql/data(默认,安装时可更改路径)

MariaDB 安装目录: /usr/local/mariadb

MariaDB 数据库目录:/usr/local/mariadb/data(默认,安装时可更改路径)

Percona 安装目录: /usr/local/percona

Percona 数据库目录:/usr/local/percona/data(默认,安装时可更改路径)

PHP 安装目录: /usr/local/php

Apache 安装目录: /usr/local/apache

2.3  相关命令工具

MySQL 或 MariaDB 或 Percona 命令

/etc/init.d/mysqld (start|stop|restart|status)

Apache 命令

/etc/init.d/httpd (start|stop|restart|status)

Memcached 命令(可选安装)

/etc/init.d/memcached (start|stop|restart|status)

Redis 命令(可选安装)

/etc/init.d/redis-server (start|stop|restart|status)

网站根目录 。默认的网站根目录: /data/www/default。

LAMP.sh网站目录

三、LAMP.sh问题

第一个问题:无法启用Http 2。虽然LAMP.sh官网中说已经默认支持Http 2,但是创建好虚拟主机访问时还是Http 1.1 ,不知道为啥。

LAMP.sh开启Http 2.0

第二个问题:301重定向。这个应该不是LAMP.sh本身的问题,如果你想要将所有的Http跳转到Https,你还需要在创建好了虚拟主机后再到.Htaccess中添加301跳转代码。以下是一段将所有的http请求跳转到Https://wzfou.com的代码。(注意www请求也跳转到非www中)

<IfModule mod_rewrite.c>    RewriteEngine On    RewriteCond %{HTTPS} off    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]    RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]    RewriteRule ^ https://%1%{REQUEST_URI} [R=301,L]</ifmodule>

四、总结

与OneinStack、LNMP这两个脚本相比,LAMP.sh专注于提供Apache建站脚本,并且作者一直在将Apache、PHP和MysqL等最新版本和特性添加进去,基本上可以满足大家对于Apache建站和LAMP的需要。

LAMP.sh一键安装脚本

LAMP.sh脚本在安装时如果 RAM + Swap 的容量小于 480MB 时,直接退出脚本运行,另外如果你想要一款Web面板用来与LAMP.sh配合使用,你可以试试Virtualmin/Webmin功能强大的服务器管理面板,记住只要安装Webmin即可。