更新yum

yum update

安装Apache:

yum install -y httpd

安装完之后,重新启动

service httpd restart

将Apache设置为开机启动

chkconfig httpd on

要查看httpd服务的启动状态

chkconfig --list httpd

安装MySQL:

yum install mysql mysql-server 

启动MySQL

service mysqld start

将MySQL设置为开机启动

chkconfig mysqld on

给root账户设置密码

mysql_secure_installation 

根据提示输入2次密码,就设置成功了。注意,在设置过程中,会提示删除是否anonymous用户,是否拒绝root的远程访问,是否删除测试用的数据库等,这些都需要根据自己的实际情况进行选择。最后出现:Thanks for using MySQL!,设置密码成功了。

重新启动

service mysqld restart

安装PHP:

yum install php

安装完之后重新启动Apache

service httpd restart

使用命令 yum search php来查看PHP的组件,选择需要的模块进行安装:

yum install php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml
php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt

安装完之后,重启Apache

service httpd restart

重启MySQL

service mysqld restart

配置Apache

  • 修改Apache配置文件:vi
  • /etc/httpd/conf/httpd.conf,并在文件中查找下面所在行,进行修改
  • (查找可以在vi的一般模式下输入“/要查找的字符”进行查找):
  • ServerTokens OS 修改为:ServerTokens Prod
  • (在出现错误页的时候不显示服务器操作系统的名称)
  • ServerSignature On 修改为:ServerSignature Off
  • (在错误页中不显示Apache的版本)
  • Options Indexes FollowSymLinks 修改为:Options Includes ExecCGI FollowSymLinks
  • (允许服务器执行CGI及SSI,禁止列出目录)
  • #AddHandler cgi-script .cgi 修改为:AddHandler cgi-script .cgi .pl
  • (允许扩展名为.pl的CGI脚本运行)
  • AllowOverride None 修改为:AllowOverride All
  • (允许.htaccess)
  • AddDefaultCharset UTF-8 修改为:AddDefaultCharset GB2312
  • (添加GB2312为默认编码)
  • Options Indexes MultiViews FollowSymLinks 修改为:Options MultiViews FollowSymLinks
  • (不在浏览器上显示树状目录结构)
  • DirectoryIndex index.html index.html.var 修改为:DirectoryIndex index.html index.htm
  • Default.html Default.htm index.php Default.php index.html.var
  • (设置默认首页文件增加index.php)
  • KeepAlive Off 修改为:KeepAlive On
  • (允许程序性联机)
  • MaxKeepAliveRequests 100 修改为:MaxKeepAliveRequests 1000
  • (增加同时连接数)

修改好之后保存配置,重新启动

service httpd restart

建议删除默认的测试页面:

rm -f /etc/httpd/conf.d/welcome.conf /var/www/error/noindex.html

第二步:配置PHP

修改PHP配置文件:

vi /etc/php.ini

以下需要修改的行的位置可以通过vi的查找命令来查找:

date.timezone = PRC #把前面的分号去掉,改为date.timezone = PRC
disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,
proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,
popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,
checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,
posix_get_last_error,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid,
posix_getgrgid,posix_getgrnam,
posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid,posix_getppid,
posix_getpwnam,posix_getpwuid,posix_getrlimit,posix_getsid,posix_getuid,posix_isatty,
posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,
posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname
#列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。
expose_php = Off #禁止显示php版本的信息
display_errors = OFF #关闭错误提示
register_globals = OFF #关闭注册全局变量
magic_quotes_gpc = On #打开magic_quotes_gpc来防止SQL注入
log_errors = On #记录错误日志
error_log = /var/log/php/error_log.log
#设置错误日志存放目录,文件必须允许apache用户的和组具有写的权限(注意,在修改之前,要先创建文
件/var/log/php/error_log.log,然后在修改其属性,使其属于apache用户和用户组。
chown apache /var/log/php/error_log.log和chgrp apache /var/log/php/error_log.log
open_basedir = .:/tmp/
#设置表示允许访问当前目录(即PHP脚本文件所在之目录)和/tmp/目录,可以防止php木马跨站

经过安装和配置之后,web服务器基本上已经搭建起来了,可以对其进行访问。

测试篇
在目录/var/www/html下:

cd /var/www/html

创建php文件:

vi index.php

<?php
phpinfo();
?>

那么,在浏览器中输入本机地址的时候,就可以访问到刚才创建的index.php网页文件了。

注意:apache的默认程序目录是:/var/www/html,网页文件放在这里就可以被访问到。需要保证这个目
录是属于用户apache和用户组apache的。

chown -R apache:apache /var/www/html

MySQL的数据库目录是:/var/lib/mysql

写到这里,LAMP就安装配置完毕了,浏览器只要输入服务器的IP地址或者是域名的话,就能够访问到服务器上的网页文件了。

Amazon Linux AMI 2015.09 (HVM)平台搭建lamp的更多相关文章

  1. Procedure for installing and setting Sun JDK Java on Default Amazon Linux AMI

    # First verify the version of Java being used is not SunJSK. java -version   # Get the latest Sun Ja ...

  2. LINUX centos 7.2/7.3 搭建LAMP环境

    首先我们先查看下centos的版本信息 #适用于所有的linux lsb_release -a #或者 cat /etc/redhat-release #又或者 rpm -q centos-relea ...

  3. LNMP平台搭建---Linux系统安装篇

    在互联网网站开发领域,有一个名词,大家一定不陌生,那就是LAMP,经典的Web服务器环境,由Linux+Apache+MySQL+PHP组成,,后来,一个名叫Nginx的Web服务器开源出来了,因其更 ...

  4. SAAS云平台搭建札记: (二) Linux Ubutu下.Net Core整套运行环境的搭建

    最近做的项目,由于预算有限,公司决定不采购Windows服务器,而采购基于Linux的服务器. 一般的VPS服务器,如果使用Windows系统,那么Windows Server2012\2016安装好 ...

  5. linux监控平台搭建-cpu

    linux监控平台搭建-cpu 目前服务器的主流CPU是intel或者AMD.到底主频是什么.多核.多线程.并发.并行.超频.一级缓存.二级缓存.三级缓存.i386.x86 cpu:含有算术逻辑.控制 ...

  6. linux监控平台搭建-内存

    linux监控平台搭建-内存 上一篇文章说的硬盘.就写一下.更加重要的东西.在手机上面是RAM.机器是memory.内存是按照字节编址.每个地址的存储单元可以存放8bit的数据.cpu 通过内存地址获 ...

  7. linux监控平台搭建-磁盘

    linux监控平台搭建-磁盘 磁盘:随着大数据快速发展.人工智能.自动化.云平台.数据量指数的增长.磁盘的使用量也在增长.目前的机器基本上采用SSD或者SATA盘,一直有人比较那个好.会不会使用时间短 ...

  8. [Openwrt 项目开发笔记]:Openwrt平台搭建(一)

    [Openwrt项目开发笔记]系列文章传送门:http://www.cnblogs.com/double-win/p/3888399.html 正文: 最近开始着手进行Openwrt平台的物联网网关设 ...

  9. FILEBEAT+ELK日志收集平台搭建流程

    filebeat+elk日志收集平台搭建流程 1.         整体简介: 模式:单机 平台:Linux - centos - 7 ELK:elasticsearch.logstash.kiban ...

随机推荐

  1. Container 技能图谱skill-map

    # Container 技能图谱 ## 1. 容器核心 - [Docker](https://www.docker.com/) - [LXC](https://linuxcontainers.org/ ...

  2. 测试技能图谱skill-map

    # 测试技能图谱 ## 代码静态分析- Sonar- PMD- Infer- Android * findbugs * AndroidLint * CheckStyle- iOS * scanbuil ...

  3. JS 常用字符串,数组操作

    JavaScript String/Array对象 JS String对象   String 对象属性 属性 描述 constructor 对创建该对象的函数的引用 length 字符串的长度 pro ...

  4. iOS之CAReplicatorLayer属性简介和使用

    1.CAReplicatorLayer简介 CAReplicatorLayer用于对图层进行复制,包括图层的动画也能复制!可以看着将某一段事务进行重复! #import <QuartzCore/ ...

  5. %matplotlib inline 被注释掉后,pycharm不能生成图

    目录 问题描述 解决方案 @ 问题描述 在 jupyter 编译器中 程序的开头,有这么一行 %matplotlib inline import numpy as np import matplotl ...

  6. C/C++程序员 面试经历总结

    最近在找工作,遇到了一些面试题,很惭愧的是很多都没答上来. 现在把一些问题总结一下,算是记录一下面试的经历吧.以后有空简单地回答一下, 同时也欢迎各位同仁解答,共同学习一下吧!   一.嵌入式C语言面 ...

  7. 从输入url到显示网页,发生了那些事情?

    作为一个软件开发者,你一定会对网络应用如何工作有一个完整的层次化的认知,同样这里也包括这些应用所用到的技术:像浏览器,HTTP,HTML,网络服务器,需求处理等等. 本文将更深入的研究当你输入一个网址 ...

  8. nmon 定时任务 监控资源

    nmon命令: # ./nmon  –f  -s 30 –c 100 说明:-f 以文件的形式输出,默认输出是机器名+日期.nmon的格式,也可以用-F指定输出的文件名,例如: # ./nmon_x8 ...

  9. jmeter 5 参数化

    文件: 文件编码 注意: 如果文件另存为utf-8,文件第一行头会带bom头(不可见字符),jmeter读取参数后,会把头读取到请求报文中,提示不存在该用户 什么是bom头? 在utf-8编码文件中B ...

  10. Linux NIO 系列(04-1) select

    目录 一.select 机制的优势 二.select API 介绍与使用 2.1 select 2.2 fd_set 集合操作 2.3 select 使用范例 三.深入理解 select 模型: 四. ...