LAMP(一)

LAMP环境搭建与配置

  1. L 代表服务器操作系统使用Linux
  2. A 代表网站服务使用的是Apache软件基金会中的httpd的模块
  3. M 代表网站后台使用的数据库时MySQL数据库
  4. P 代表网站是使用PHP语言开发                                                               

         

  1. 安装MySQL   下载MySQL安装包,

mysql-5.6.43-linux-glibc2.12-x86_64.tar

(1)解压

    tar –zxvf  mysql-5.6.47-linux-glibc2.12-x86_64.tar.gz –C /usr/local/src

    所有压缩包都放在/usr/local/src目录下,方便统一管理

(2)将解压完的数据移动到/usr/local/mysql,存放MySQL的一些脚本配置文件。

mv mysql-5.6.47-linux-glibc2.12-x86_64 /usr/local/mysql

(3)创建MySQL数据库的用户

useradd -s /sbin/nologin mysql

(4)定义数据库安装位置,数据存放位置存放数据的目录赋予他用户组和用户的权限

mkdir -p /data/mysql ;chown -R mysql:mysql /data/mysql

 (5)看一下我的目录的所属属性是什么:

ls -la /data/mysql

    可以看到他所属的用户和用户组都是mysql

(6)安装perl包

yum install -y perl-Module-Install*

(7)查看perl :

yum list | grep perl | grep -i dumper

(8)软件包和系统版本问题,缺少以上脚本依赖,所以需安装numactl模块

yum install –y numactl 

(9)进入包对应目录

cd/usr/local/src/mysql-5.6.47-linux-glibc2.12-x86_64

 (10)运行脚本,出现两个OK表示运行成功

./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

 

(11)拷贝文件:

cp support-files/my-default.cnf /etc/my.cnf 

(12)修改配置文件:

vim/etc/my.cnf

Basedir=/usr/local/scr/mysql-5.6.47-linux-glibc2.12-x86_64                      //basedir              //表示MySQL包所在路径

Datadir=/data/mysql/    //表示定义存放数据的位置

Port=3306    //port表示定义  MySQL服务监听的端口号

Server_id=128      //表示该 MySQL服务的ID号,一般写成IP地址的第四节即可

(13)复制启动脚本文件并改名为mysqld:

 cp support-files/mysql.server /etc/init.d/mysql 

(14)修改文件内容

vim /etc/init.d/mysqld

basedir=/usr/local/mysql

datadir=/data/mysql

(15)把mysql服务加到系统服务列表中:

chkconfig --add mysqld

(16)开机自启 :

chkconfig mysqld on

(17)启动服务:

service mysql start 

     

显示SUCCESS就成功了

 

 

 

遇到的问题:

无法安装perl配件:

解决方法:在配置YUM源时,把/etc/yum.repo.d/目录下的文件都删除了,后来在另一台虚拟机上将这些文件传过来就可以了。

 

任务二:安装apache

1.2安装Apache

  1. 下载 httpd-2.4.43.tar、apr-1.6.5.tar和apr-util-1.6.1.tar压缩包

wgethttp://mirrors.cnnic.cn/apache/httpd/httpd-2.4.43.tar.gz

Wgethttp://mirrors.hust.edu.cn/apache/apr/apr-1.6.5.tar.gz

Wgethttp://mirrors.hust.edu.cn/apache/apr/apr-util-1.6.1.tar.gz

安装包还是都放在/usr/local/src/目录下,方便统一管理。

  1. 安装配置;

安装这些包是有顺序的,首先我们先来安装apr,

(3)进入apr目录

先安装一个插件,防止编译出现错误

yum install -y libtool*

(4)编译文件

./configure --prefix=/usr/local/apr

(5)安装make

make &&make install

(6)安装apr-util

进入arp-util目录,编辑文件

./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/

(7)安装make,会出现一个错误,缺少expat文件

make &&make install

报了一个错误

需要安装一个expat-devel文件

yum install -y expat-devel

再运行一遍make &&make install,就没有错误了

(8)安装apache

在安装之前先要安装正则表达式包

yum install -y pcre pcre-devel

进入httpd-2.4.43目录,编译解析configure文件:

#./configure \         //回车,反斜杠是脱义字符,加上它一行命令写成多行

--prefix=/usr/local/apache2.4 \

--with-apr=/usr/local/apr \

--with-apr-util=/usr/local/apr-util \

--enable-so \

--enable-mods-shared=most

//--enable-so表示启用   DSO

 (9)将apr和apr-util拷贝到srclib这个目录下来

#cp -r apr-1.6.5 httpd-2.4.43/srclib/apr

#cp -r apr-util-1.6.1 httpd-2.4.43/srclib/apr-util

(10)安装make

make -j4 && make install  //-j4表示安装时候多加4个线程,提速

(11)安装成功查看配置文件

/usr/local/apache2.4/bin/apachectl –M

//shared字样的动态共享模块,static以静态形式存在

 

 

 

遇到的问题:

安装htppt编译./configure时出错,无论是复制命令还是手打命令都报错。

解决方法:重启了一遍虚拟机就好了。

1.3安装PHP

  1. 下载PHP安装包

将压缩包还是放在/usr/local/src目录下,统一管理

解压:tar -jxvf php-5.6.39.tar.gz -C /usr/local/src/

  1.  进入php-5.6.24目录

3)先安装和配置,防止后面编译出错

# yum install -y libxml2-devel

# yum install -y openssl openssl-devel

# yum install -y bzip2 bzip2-devel

# yum install -y libpng libpng-devel

# yum install -y freetype freetype-devel

# yum install -y epel-release

# yum install -y libmcrypt-devel

//为防止配置时出错提前安装库文件

  1. 编译./configure文件

--with-apxs2=/usr/local/apache2.4/bin/apxs

--with-config-file-path=/usr/local/php/etc

--with-mysql=/usr/local/src/mysql-5.6.47-linux-glibc2.12-x86_64

--with-png-dir --with-freetype-dir --with-openssl

--with-mcrypt --with-libxml-dir

--with-gd --with-jpeg-dir --with-bz2

--with-iconv-dir --with-zlib-dir

--enable-soap

--enable-gd-native-ttf

--enable-mbstring

--enable-sockets

--enable-exif

  1. 安装make:

make && make install 

  1. echo $? 查看有没有错误

  1. 使用命令查看安装是否成功

后面多了一个php5的模块,就说明安装成功了

  1. 在配置文件里查看php:

cat /usr/local/apache2.4/conf/httpd.conf

可以看到已经写入配置文件中

  1. 配置文件拷贝出来

cp php.ini-production /usr/local/php/etc/php.ini

 

1.4 Httpd解析php

 

(1)vim/usr/local/apache2.4/conf/httpd.conf   修改主配置文件

搜索 ServerName,把 ServerName www.example.com:80前的#去掉;

搜索Require,将denied改为granted;

<Directory />

AllowOverride none

Require all denied

</Directory>

改成:

<Directory />

AllowOverride none

Require all granted

</Directory>    //目的允许所有请求访问

 

搜索 AddType application/x-gzip.gz.tgz,在下面添加一行    

AddType application/x-httpd-php .php

搜索IfModule dir_module

<IfModule dir_module>

DirectoryIndex index.html

</IfModule>

改成:

<IfModule dir_module>

DirectoryIndex index.html index.php

</IfModule>

      

(2)测试安装:/usr/local/apache2.4/bin/apachectl -t

显示OK,说明安装成功

  1. 重启服务:

/usr/local/apache2.4/bin/apachectl start (graceful:重启)

启动apache服务。若重启不成功,先kill -9杀死httpd相关进程

netstat -ntplu |grep httpd

(4)查看是否启动:

curl localhost

显示:<html><body><h1>It works!</h1></body></html>:就是重启成功了

(5)也可以本地浏览器测试,修改本地hosts文件,将虚拟机IP地址输入进去,

(7)测试是否正确解析PHP

#vim /usr/local/apache2.4/htdocs/2.php

<?php

echo“php解析正确”

?>       //编写一个测试脚本

然后运行:curl localhost/2.php

这样就解析成功了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
也许大家对LAMP比较熟悉,LAMP代表Linux下Apache、MySQL、PHP这种网站服务器架构;同上LNMP代表的就是Linux下Nginx、MySQL、PHP这种网站服务器架构。 我们为什么采用LNMP这种架构? 采用Linux、PHP、MySQL的优点我们不必多说。 Nginx是一个小巧而高效的Linux下的Web服务器软件,是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,已经在一些俄罗斯的大型网站上运行多年,相当的稳定。 Nginx相当的稳定、功能丰富、安装配置简单、低系统资源…… LNMP这种架构有什么优势? 作为 Web 服务器:相比 Apache,Nginx 使用更少的资源,支持更多的并发连接,体现更高的效率。 作为负载均衡服务器:Nginx 既可以在内部直接支持 Rails 和 PHP,也可以支持作为 HTTP代理服务器 对外进行服务。Nginx 用 C 编写, 不论是系统资源开销还是 CPU 使用效率都比 Perlbal 要好的多。 作为邮件代理服务器: Nginx 同也是一个非常优秀的邮件代理服务器(最早开发这个产品的目的之一也是作为邮件代理服务器),Last.fm 描述了成功并且美妙的使用经验。 Nginx 安装非常的简单,配置文件 非常简洁(还能够支持perl语法),Bugs非常少的服务器: Nginx 启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。你还能够在 不间断服务的情况下进行软件版本的升级。更多Nginx介绍 如何获取LNMP一键安装包? 你可以自由 下载 并使用它在VPS(VDS)或独立服务器上,做为真正的生产环境或测试环境。 它安装那些软件 Nginx MySQL PHP PHPMyAdmin Apache Zend Optimizer eAccelerator ionCube PureFTPd VsFTPd 2012年4月23日发布LNMP 0.9 优化安装过程及错误处理; MySQL安装增加InnoDB选项(可选); 修正eaccelerator和ionCube的PHP版本判断错误的问题; 修正memcached pid创建失败的问题 修正pdo_mysql安装方法; PHP增加部分禁用函数; 优化Nginx升级脚本; 去除vsftpd安装脚本; 修正访问不存在的PHP返回404; 更新Nginx版本; 更新PHP探针; 增加phpwin伪静态 升级过程增加停止LNMP相关服务; 修正Nginx log_format问题; 

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值