Centos7构建LAMP平台
Posted 还行少年
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos7构建LAMP平台相关的知识,希望对你有一定的参考价值。
文章目录
前言
LAMP架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态Web站点服务及其应用开发环境
一、LAMP概述
二、构建LAMP平台
1.linux版本
[root@localhost ~]# cat /etc/centos-release //查看发行版本
CentOS Linux release 7.6.1810 (Core)
[root@localhost ~]# uname -a //查看内核版本
Linux localhost.localdomain 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@localhost ~]#
2.Apache编译安装
2.1 判断httpd服务是否已存在(端口被占用)
[root@localhost ~]# netstat -anpt | grep httpd
[root@localhost ~]# netstat -anpt | grep 80
[root@localhost ~]# rpm -q httpd
未安装软件包 httpd
2.2 源码编译及安装
[root@localhost opt]# ls //apr*为httpd2.4之后所需插件
apr-1.6.2.tar.gz apr-util-1.6.0.tar.gz httpd-2.4.29.tar.bz2 rh
解压并将其放至srclib目录下
[root@localhost opt]# tar xf apr-1.6.2.tar.gz
[root@localhost opt]# tar xf apr-util-1.6.0.tar.gz
[root@localhost opt]# tar xf httpd-2.4.29.tar.bz2
[root@localhost opt]# mv apr-1.6.2 httpd-2.4.29/srclib/apr
[root@localhost opt]# mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util
[root@localhost opt]#
指定安装目录,启用字符集支持
[root@localhost opt]# cd /opt/httpd-2.4.29/ //切换到解压目录下
[root@localhost httpd-2.4.29]# ./configure \\
> --prefix=/usr/local/httpd \\ //指定 httpd 服务程序的安装路径
> --enable-so \\ //启用动态加载核心模块支持,使 httpd 具备进一步扩展功能的能力
> --enable-rewrite \\ //启用网页地址重写功能,用于网站优化、防盗链及目录迁移维护
> --enable-charset-lite \\ //启动字符集支持,以便支持使用各种字符集编码的页面
> --enable-cgi //启用CGI(通用网关接口)脚本程序支持,便于增强网站的外部扩展应用访问能力
无报错即为成功
编译和安装
[root@localhost httpd-2.4.29]# make && make install
无报错即为成功
2.3 优化管理
优化配置文件路径,并把httpd服务的可执行程序文件放入路径环境变量的目录中便于系统识别
[root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/conf/httpd.conf /etc/
[root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/bin/* /usr/local/bin/
添加httpd系统服务
[root@localhost ~]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd //复制控制脚本
[root@localhost ~]# vim /etc/init.d/httpd //添加以下两项
# chkconfig: 35 85 21 //35级别自动运行 第85个启动 第21个关闭
# description: Apache is a World Wide Web server
[root@localhost ~]# chkconfig --add httpd //将httpd加入到系统管理器
检查语法
[root@localhost ~]# httpd -t
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain. Set the 'ServerName' directive globally to suppress this message
Syntax OK
2.4 启动服务
[root@localhost ~]# systemctl start httpd
[root@localhost ~]# systemctl status httpd
● httpd.service - SYSV: Apache is a World Wide Web server
Loaded: loaded (/etc/rc.d/init.d/httpd; bad; vendor preset: disabled)
Active: active (exited) since 六 2021-06-19 14:10:15 CST; 5s ago
Docs: man:systemd-sysv-generator(8)
Process: 48038 ExecStart=/etc/rc.d/init.d/httpd start (code=exited, status=0/SUCCESS)
6月 19 14:10:15 localhost.localdomain systemd[1]: Starting SYSV: Apache is a World Wide Web server...
6月 19 14:10:15 localhost.localdomain httpd[48038]: AH00558: httpd: Could not reliably determine the server's full...sage
6月 19 14:10:15 localhost.localdomain httpd[48038]: httpd (pid 47947) already running
6月 19 14:10:15 localhost.localdomain systemd[1]: Started SYSV: Apache is a World Wide Web server.
Hint: Some lines were ellipsized, use -l to show in full.
[root@localhost ~]# netstat -antp | grep 80
tcp6 0 0 :::80 :::* LISTEN 47947/httpd
[root@localhost ~]#
2.5 浏览网页
3.MySQL编译安装
3.1 判断mysql服务是否存在
[root@localhost ~]# rpm -q mysql-sqlserver mysql
未安装软件包 mysql-sqlserver
未安装软件包 mysql
[root@localhost ~]#
3.2源码编译及安装
解压并进入解压后的源码目录
[root@localhost opt]# tar xzf mysql-5.6.26.tar.gz
[root@localhost opt]# cd mysql-5.6.26/
[root@localhost mysql-5.6.26]#
指定安装目录,启用字符集支持
[root@localhost mysql-5.6.26]# cmake \\
> -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \\ //指定安装路径
> -DDEFAULT_CHARSET=utf8 \\ //指定默认使用的字符集编码,如 utf-8
> -DDEFAULT_COLLATION=utf8_general_ci \\ //指定默认使用的字符集校对规则
> -DEXTRA_CHARSETS=all \\ //指定支持其他字符集编码
> -DSYSCONFIDIR=/etc \\ ///etc/mysql --->系统中有一个默认的配置/etc/my.cnf
> -DMYSQL_DATADIR=/home/mysql/ \\ //数据文件
> -DMYSQL_UNIX_ADDR=/home/mysql/mysql.sock //指定连接数据库的通讯文件(启动数据库的时候会生成)
无报错即为成功
编译及安装
[root@localhost mysql-5.6.26]# make && make install
无报错即为成功
3.3 创建普通用户管理mysql
[root@localhost mysql-5.6.26]# useradd -s /sbin/nologin mysql
[root@localhost mysql-5.6.26]# chown -R mysql:mysql /usr/local/mysql/
[root@localhost mysql-5.6.26]# chown mysql:mysql /etc/my.cnf
3.4 优化管理
[root@localhost mysql-5.6.26]# cp support-files/my-default.cnf /etc/my.cnf
cp:是否覆盖"/etc/my.cnf"? y
[root@localhost mysql-5.6.26]# cp support-files/mysql.server /etc/init.d/mysqld
[root@localhost mysql-5.6.26]# chmod 755 /etc/init.d/mysqld //赋权
[root@localhost mysql-5.6.26]# chkconfig --add /etc/init.d/mysqld //加入到系统服务
[root@localhost mysql-5.6.26]# chkconfig mysqld --level 35 on //开机自启
[root@localhost mysql-5.6.26]# useradd -s /sbin/nologin mysql //创建管理用户
[root@localhost mysql-5.6.26]# chown -R mysql:mysql /usr/local/mysql/ //递归更改属主属组
[root@localhost mysql-5.6.26]# chown mysql:mysql /etc/my.cnf //更改属主属组
[root@localhost mysql-5.6.26]# echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile //添加环境变量
[root@localhost mysql-5.6.26]# source /etc/profile //刷新环境变量
3.5 初始化数据库
[root@localhost mysql-5.6.26]# /usr/local/mysql/scripts/mysql_install_db --user=mysql --ldata=/var/lib/mysql --basedir=/usr/local/mysql --datadir=/home/mysql
无报错即为成功
3.6 修改配置文件
[root@localhost mysql-5.6.26]# vi /etc/init.d/mysqld
3.7 启动服务
[root@localhost mysql-5.6.26]# systemctl start mysqld
Warning: mysqld.service changed on disk. Run 'systemctl daemon-reload' to reload units.
[root@localhost mysql-5.6.26]# systemctl status mysqld
● mysqld.service - LSB: start and stop MySQL
Loaded: loaded (/etc/rc.d/init.d/mysqld; bad; vendor preset: disabled)
Active: active (running) since 六 2021-06-19 15:37:07 CST; 12s ago
Docs: man:systemd-sysv-generator(8)
Process: 122596 ExecStart=/etc/rc.d/init.d/mysqld start (code=exited, status=0/SUCCESS)
Tasks: 22
CGroup: /system.slice/mysqld.service
├─122601 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/home/mysql --pid-file=/home/mysql/localhost.loc...
└─122716 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/home/mysql --plugin-dir=/usr/loca...
6月 19 15:37:06 localhost.localdomain systemd[1]: Starting LSB: start and stop MySQL...
6月 19 15:37:07 localhost.localdomain mysqld[122596]: Starting MySQL. SUCCESS!
6月 19 15:37:07 localhost.localdomain systemd[1]: Started LSB: start and stop MySQL.
Warning: mysqld.service changed on disk. Run 'systemctl daemon-reload' to reload units.
[root@localhost mysql-5.6.26]# mysql
Welcome to the MySQL monitor. Commands end with ; or \\g.
Your MySQL connection id is 1
Server version: 5.6.26 Source distribution
Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\\h' for help. Type '\\c' to clear the current input statement.
mysql>
4.PHP编译安装
4.1 安装所需要的环境
[root@localhost ~]# yum -y install gd libpng libpng-devel pcre pcre-devel libxml2-devel
4.2 源码编译及安装
解压并进入解压后的源码目录
[root@localhost opt]# tar xjf php-5.6.11.tar.bz2
[root@localhost opt]# cd php-5.6.11
[root@localhost php-5.6.11]#
指定安装路径及其他功能
[root@localhost php-5.6.11]# ./configure \\
> --prefix=/usr/local/php5 \\ //指定安装路径
--with-gd \\ //激活gd 库的支持
--with-zlib \\ //支持zlib功能,提供数据压缩功能的函式库
--with-apxs2=/usr/local/httpd/bin/apxs \\ //指定httpd服务提供的apxs模块支持程序的文件位置
--with-mysql=/usr/local/mysql \\ //关联数据库
--with-config-file-path=/usr/local/php5 \\ //指定配置文件
--enable-mbstring //启用多字节字符串功能,以便支持中文等代码
无报错即为成功
编译及安装
[root@localhost php-5.6.11]# make && make install
4.3 优化管理
把PHP 的可执行程序文件放入路径环境变量的目录中便于系统识别
[root@localhost php-5.6.11]# ln -s /usr/local/php5/bin/* /usr/local/bin/
4.4 修改配置文件
修改Apache配置文件让Apache支持PHP
创建、编辑php页面文件
[root@localhost php-5.6.11]# cat /usr/local/httpd/htdocs/index.php
<?php
phpinfo();
?>
[root@localhost php-5.6.11]#
4.5 重启apache服务观察现象
以上是关于Centos7构建LAMP平台的主要内容,如果未能解决你的问题,请参考以下文章