LAMP 通常表示 Linux + Apache + MySQL/MariaDB + Perl/PHP/Python,LAMP 的各个组件不是一成不变的,并不局限于它最初的选择。作为一个解决方案套件,LAMP 非常适合构建动态网站和网站应用程序。另外使用类似 Zabbix 这样的组件做监控也是网站必不可少的。

更好的阅读体验,可以点击此处

安装 LAMP

本文档的 LAMP 代指 Linux + Apache2 + MySQL + php5 且各示例步骤基于 Azure 环境下的 LINUX 虚拟机。本文档介绍三种方式来安装LAMP:1. 使用 Azure PowerShell 脚本; 2. 使用 Azure CLI; 3. 使用 SHELL 脚本。 安装 LAMP 过程中会在虚拟机上自动安装 Zabbix agent。

说明:
目前 Azure PowerShell 脚本和 Azure CLI 方式仅支持 CentOS(6.5, 6.6, 6.7, 7.0, 7.1, 7.2)。而 SHELL 脚本则有 CentOS, Ubuntu以及 SLES 三个版本。

参数使用注意事项:
DNSNamePrefix:必须小写,需保证唯一性,该参数将作为 DNS 前缀。
ZabbixServerIPAddress:可选项,指定 Zabbix 服务器地址。

Azure PowerShell 方式

PowerShell 脚本运行注意事项:
需要以管理员权限运行 PowerShell,使用之前需运行如下命令:

Set-ExecutionPolicy -ExecutionPolicy Unrestricted

如果您选择 Azure PowerShell 方式安装 LAMP,那么请按如何安装和配置 Azure PowerShell 中的说明在本地计算机上安装 Azure PowerShell。然后打开 Azure PowerShell 命令提示符,通过运行以下命令并遵循提示进行 Azure 帐户的交互式登录体验,来使用工作或学校 ID 登录

Login-AzureRmAccount -EnvironmentName AzureChinaCloud

然后您需要创建一个 Azure 资源组 (Resource Group),创建 Azure 虚拟机和安装LAMP都在该资源组中进行,运行以下命令创建 Azure 资源组:

New-AzureRmResourceGroup -Name "YOUR-RESOURCE-GROUP-NAME" -Location "China East"

您需要下载 PowerShell 脚本 single-lamp-deploy.ps1,按照以下示例运行 single-lamp-deploy.ps1 脚本,即可在资源组 rg1 中生成一台 CentOS 虚拟机,接着会在该虚机上安装 LAMP。其中 rg1 是在之前步骤中创建的资源组名字。

PS C:\> .\single-lamp-deploy.ps1 -ResourceGroupName rg1 -CentOSVersion 7.0 -AdminUserName azureuser -AdminPassword “YOUR-PASSWORD”  -MySqlPassword “YOUR-MYSQL-PASSWORD” -DNSNamePrefix “YOUR-DNS-PREFIX”

创建过程大概需要 20 分钟,运行成功后会出现如下提示, 这里我们直接去到下面访问网站的步骤去进行验证。

Deploy LAMP Server successfully.
To veriy the lamp server deployment, following below steps:
Open the URL http://<YOUR-DNS-PREFIX>.chinaeast.cloudapp.chinacloudapi.cn/mysql.php to check if php can connect to MySQL, if can do some insert operation, and finally it will return the result on the web page.
If you refresh the webpage, will insert another record into mysql db table.
We strongly recommend you to delete /var/www/html/mysql.php after you access the URL and see the successful result because mysql.php stores your mysql root password.
You can delete the inserted data by executing below commands:
mysql -uroot -p
drop database testdb;

Azure CLI 方式

如果您选择 Azure CLI 方式安装 LAMP,那么请安装 Azure CLI。然后请确保您是处于资源管理器模式下,可通过运行以下命令来验证:

azure config mode arm

现在,通过运行以下命令并遵循提示进行 Azure 帐户的交互式登录体验,来使用工作或学校 ID 登录

azure login -e AzureChinaCloud -u <your account>

然后您需要创建一个 Azure 资源组 (Resource Group),创建 Azure 虚拟机和安装 LAMP 都在该资源组中进行,运行以下命令创建 Azure 资源组:

azure group create "YOUR-RESOURCE-GROUP-NAME" "China East"

您需要在安装好 Azure CLI 的机器上,运行如下命令下载 azuredeploy.parameters.json 参数配置文件:

wget http://msmirrors.blob.core.chinacloudapi.cn/single-lamp/azuredeploy.parameters.json -O azuredeploy.parameters.json

接着修改 azuredeploy.parameters.json 参数配置文件:

vi azuredeploy.parameters.json

需修改 "adminPassword", "dnsNamePrefix" 以及 "mySqlPassword" 的值即可,其他参数值可以保持默认不变。然后运行如下命令即可安装 CentOS 虚拟机和 LAMP,创建过程大概需要 20 分钟,其中 rg1 是之前步骤中创建的资源组名字:

$TemplateUri="http://msmirrors.blob.core.chinacloudapi.cn/single-lamp/azuredeploy.json"
azure group deployment create rg1 DeployLAMP --template-uri $TemplateUri -e azuredeploy.parameters.json

使用 SHELL 脚本方式

如果您已经建好了 LINUX 虚拟机,就可以直接运行 SHELL 脚本来安装 LAMP.

如果您还没有 Azure 下的 LINUX 虚拟机,请参考 Azure Linux VM tutorial. 创建 LINUX 虚拟机。

连接到您的 LINUX 虚拟机。如果这是您第一次使用 Azure 的 LINUX 虚拟机,请参考 Azure Linux VM tutorial 连接到虚拟机。

不同的 LINUX 发行版在安装 LAMP 时有少许的不同。请根据您的 LINUX 版本选择对应的步骤。

Redhat base Linux: (以 CentOS 7.0, 64-bit system, MySQL Server 5.6, apache 2.4, php5 为例)

下载SHELL脚本:

$sudo wget http://msmirrors.blob.core.chinacloudapi.cn/single-lamp/install_single_lamp.sh

然后执行下面命令。注意:其中的 mySqlPassword 指的是您的 MySQL root 密码,请根据您的具体情况设置;insertValue 指的是您要往 MySQL 测试表中写入的值,这个值在访问 http://yourwebsite/mysql.php 会显示出来。

比如您运行 sudo bash install_single_lamp.sh s3cret jack 那么 s3cret 就是您的 MySQL root 密码,jack 就是要写入 MySQL 测试表中的值。

$sudo bash install_single_lamp.sh mySqlPassword insertValue

Ubuntu Linux: (以 Ubuntu 14.04, 64-bit system, MySQL 5.5, apache 2.4, php5 为例)

下载SHELL脚本:

$sudo wget http://msmirrors.blob.core.chinacloudapi.cn/single-lamp/install_single_lamp_Ubuntu.sh

然后执行下面命令。注意:其中的 mySqlPassword 指的是您的 MySQL root 密码,请根据您的具体情况设置;insertValue 指的是您要往 MySQL 测试表中写入的值,这个值在访问 http://yourwebsite/mysql.php 会显示出来。 比如您运行 sudo bash install_single_lamp_Ubuntu.sh s3cret jack 那么 s3cret 就是您的 MySQL root 密码,jack 就是要写入 MySQL 测试表中的值。

$sudo bash install_single_lamp_Ubuntu.sh mySqlPassword insertValue

SUSE Linux: (以 SLES 12, 64-bit system, MySQL Server 5.6, apache 2.4, php5 为例)

下载 SHELL 脚本:

$sudo wget http://msmirrors.blob.core.chinacloudapi.cn/single-lamp/install_single_lamp_SLES.sh

然后执行下面命令。注意:其中的 mySqlPassword 指的是您的 MySQL root 密码,请根据您的具体情况设置;insertValue 指的是您要往 MySQL测试表中写入的值,这个值在访问 http://yourwebsite/mysql.php 会显示出来。

比如您运行 sudo bash install_single_lamp_SLES.sh s3cret jack 那么 s3cret 就是您的 MySQL root 密码,jack 就是要写入MySQL 测试表中的值。

$sudo bash install_single_lamp_SLES.sh mySqlPassword insertValue

  

开源解决方案一:快速搭建单机版 LAMP 网站的更多相关文章

  1. golang开源项目qor快速搭建网站qor-example运行实践

    最近想找几个基于Go语言开发的简单的开源项目学习下,分享给大家,github上有心人的收集的awesome-go项目集锦:github地址 发现一个Qor项目: Qor 是基于 Golang 开发的的 ...

  2. USBWebServer 中文便携版 快速搭建 PHP/MySQL 网站服务器环境

    如果你是一位 WEB 开发者,或正在学习网页编程,你一定会发现,每到一台新电脑上想要在本地调试测试/运行网站代码都得搭建配置一遍 WAMP (Win.Apache.PHP.MySQL) 环境简直烦透了 ...

  3. 本地快速搭建MarkDown语法网站

    主要是在之前跟人学的快速搭建一个简单的网站,可以通过这样的方式把相关的文档美美的放在服务器上,然后给别人看也好,自己也能熟系熟系MarkDown的语法并学习,要是接口文档还是推荐通过swagger去实 ...

  4. 腾讯云服务器安装宝塔面板快速配置LNMP/LAMP网站系统

    我们在选择购买腾讯云服务器之后,有部分用户肯定是用来建站用途的.毕竟云服务器的性能和功能比虚拟主机优秀很多.腾讯云服务器拥有香港.北京.广州.上海.美国等多个机房,可以安装Linux和Windows系 ...

  5. 快速搭建单机版Spring Cloud EurekaServer

    原文链接:http://www.yiidian.com/springcloud/build-eureka-single.html 本文介绍搭建单机版的Eureka Server服务 1 创建项目,导入 ...

  6. Webgis开源解决方案之环境搭建(三)

    前两篇文章介绍了开源GIS服务器Geoserver的安装以及开源数据库Postgres的安装,这篇文章介绍开源前端udig软件的安装,使用在后续篇幅中介绍 开源前端目前主流的是QGIS或者udig,网 ...

  7. WebGIS开源解决方案之环境搭建(二)

    续上篇,本文主要介绍开源GIS数据库产品postgres的安装, 从postgis官网下载安装文件,下载地址http://postgis.net 本文一postgresql-9.4.4-3-windo ...

  8. 【GZAdmin】开源BS demo快速搭建

    下载搭建项目:链接:https://pan.baidu.com/s/1jHZ3Kkm 密码:5k4q 项目源码: GZAdmin_API:https://github.com/GarsonZhang/ ...

  9. WebGIS开源解决方案之开发环境搭建(一)

    工欲善其事,必先利其器,本文主要讲述WebGIS开源解决方案之环境搭建--geoserver的安装 安装方式一:tomcat环境下安装 从tomcat官网下载tomcat环境,下载链接:http:// ...

随机推荐

  1. pageadmin自助建站 网站目录权限的设置方法

    在用pageadmin网页设计的时候遇到各种问题可以参考官网教程网站目录权限的设置方法 网站目录必须设置读取和写入权限,否则后台解压,删除文件,在线上传等功能都无法正常使用,下面讲解本机和服务器配置目 ...

  2. Mysql 学习笔记09

    ---Mysql 的主从复制  replication 1 主从复制原理 至少有2台服务器,一台主服务器,一台从服务器,主服务器的所有改动,如 insert update delete 操作,都会同步 ...

  3. TCP/IP学习笔记(2)-数据链路层

    数据链路层有三个目的: 为IP模块发送和接收IP数据报. 为ARP模块发送ARP请求和接收ARP应答. 为RARP发送RARP请求和接收RARP应答 ip大家都听说过.至于ARP和RARP,ARP叫做 ...

  4. Python3.6引入的f-string 与 Python 3的新的特性:类型注解;

    f-string 1.介绍 f-string(formatted string literals):格式化字符串常量,是Python3.6新引入的一种字符串格式化方法,使格式化字符串的操作更加简便. ...

  5. 从哈希结构去理解PHP数组

    php的数组实际上就是hash_table,无论是 数字索引数组array(1, 2, 3) 还是关联数组array(1 => 2, 2=> 4)等等. 一,这里的hash_table有几 ...

  6. 打造一款1kb大马并且处理D盾以及安全狗拦截与查杀

    在之前sky666提到了关于大马被waf拦的问题,我决定手动去过一下bypass.可是发现怎么也过不去查杀,更别说拦截了.对此无奈,只好花了个通宵去处理一下.顺便一提,理论过所有Waf,并且被杀只需要 ...

  7. ArchLinux下shadow服务报错

    用着Linux蓦然开机就报错了.我是个对报错很敏感的,而是是开机报错. 这个的严重性,听一位前辈说过:如果开机报错你都不理它,慢慢的它就会宕机. 报错内容: shadow服务是Linux下用于校队pa ...

  8. iOS核心动画之anchorpoint

    anchorpoint是什么 All geometric manipulations to the view occur about the specified point 就是说所有的动画参考点都是 ...

  9. uC/OS-II 函数之邮箱管理相关函数

    上文主要介绍了消息队列相关的函数,本文介绍邮箱管理相关的函数:OSMboxCreate()建立一个邮箱,OSMboxDel()删除一个邮箱,OSMboxPend()等待邮箱中的消息,OSMboxPos ...

  10. 在iOS7中修改键盘Return键的类型

    今天将之前运行在iOS7之前的一段代码拿出来,在iOS7的机器上运行,发现键盘上的ReturnKeyType不能被修改了. 经过几番查找资料,了解到iOS7中UISearchBar的结构发生了变化,将 ...