0
点赞
收藏
分享

微信扫一扫

LNMP源码编译

西特张 2022-05-26 阅读 93

1.Nginx安装

1.1关闭防火墙,将需要的安装包下载到/opt目录下

systemctl stop firewalld

systemctl disable firewalld

setenforce 0

LNMP源码编译_php

LNMP源码编译_mysql_02

1.2解压下面压缩包

LNMP源码编译_数据库_03

1.3移动文件改名,安装依赖包

yum -y install \

gcc \ #C语言的编译器

gcc-c++ \ #C++的编译器

make \ #源代码编译器(源代码转换成二进制文件)

pcre \ #pcre是一个Perl函数库,包括perl 兼容的正则表达式库

pcre-devel \                    #perl的接口开发包

expat-devel \                   #用于支持网站解析HTML、XML文件

perl                            #perl语言编译器

LNMP源码编译_php_04

1.4编译安装

cd /opt/httpd-2.4.29/ 切换目录

./configure \

--prefix=/usr/local/httpd \ #指定 httpd 服务程序的安装路径

--enable-so \ #启用动态加载核心模块支持,使 httpd 具备进一步扩展功能的能力

--enable-rewrite \ #启用网页地址重写功能,用于网站优化、防盗链及目录迁移维护

--enable-charset-lite \ #启动字符集支持,以便支持使用各种字符集编码的页面

--enable-cgi #启用CGI(通用网关接口)脚本程序支持,便于增强网站的外部扩展应用访问能力


LNMP源码编译_php_05

1.5make && meka install 或make -j3 && make install //指定三个cpu 

LNMP源码编译_mysql_06

1.6优化配置文件路径,并把httpd服务的可执行程序文件放入路径环境变量的目录中便于系统识别

LNMP源码编译_php_07

1.7更改配置文件

chkconfig: 35 85 21  //3 5级别自动运行  第85个启动 第21个关闭

LNMP源码编译_mysql_08

chkconfig --add httpd  //将httpd加入到系统管理器

1.8 vim /usr/local/httpd/conf/httpd.conf

52行修改自己ip

LNMP源码编译_数据库_09

197行取消注释,修改自己ip

LNMP源码编译_数据库_10


1.9检查语法httpd -t 或 apachectl -t

LNMP源码编译_数据库_11

1.10启动服务,查看Apache服务

LNMP源码编译_php_12

1.11访问ip地址,Apache安装成功

LNMP源码编译_mysql_13

2. 数据库安装

2.1 将安装mysql 所需软件包传到/opt目录下

mysql-5.7.17.tar.gz

boost_1_59_0.tar.gz #支持c++的运行库

LNMP源码编译_数据库_14

2.2安装依赖包

yum -y install \

gcc \

gcc-c++ \

ncurses \ #字符终端下图形互动功能的动态库

ncurses-devel \ #ncurses开发包

bison \ #语法分析器

cmake #mysql需要用cmake编译安装

2.3解压压缩包

LNMP源码编译_数据库_15

重命名并切换路径

LNMP源码编译_php_16

2.4配置软件模块

cmake \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #指定mysql的安装路径

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ #指定mysql进程监听套接字文件(数据库连接文件)的存储路径

-DSYSCONFDIR=/etc \                             #指定配置文件的存储路径

-DSYSTEMD_PID_DIR=/usr/local/mysql \            #指定进程文件的存储路径

-DDEFAULT_CHARSET=utf8  \                       #指定默认使用的字符集编码,如 utf8

-DDEFAULT_COLLATION=utf8_general_ci \ #指定默认使用的字符集校对规则

-DWITH_EXTRA_CHARSETS=all \ #指定支持其他字符集编码

-DWITH_INNOBASE_STORAGE_ENGINE=1 \              #安装INNOBASE存储引擎

-DWITH_ARCHIVE_STORAGE_ENGINE=1 \               #安装ARCHIVE存储引擎

-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \             #安装BLACKHOLE存储引擎

-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \            #安装FEDERATED存储引擎

-DMYSQL_DATADIR=/usr/local/mysql/data \         #指定数据库文件的存储路径

-DWITH_BOOST=/usr/local/boost \          #指定boost的路径,若使用mysql-boost集成包安装则-DWITH_BOOST=boost

-DWITH_SYSTEMD=1


LNMP源码编译_数据库_17

编译安装 make -j4 && make install

LNMP源码编译_mysql_18

2.5创建mysql用户

useradd -M -s /sbin/nologin  mysql

2.6修改mysql配置文件

vim /etc/my.cnf #删除原配置项,再重新添加下面内容

[client] #客户端设置

port = 3306

socket = /usr/local/mysql/mysql.sock


[mysql] #服务端设置

port = 3306

socket = /usr/local/mysql/mysql.sock

auto-rehash #开启自动补全功能


[mysqld] #服务全局设置

user = mysql        #设置管理用户

basedir=/usr/local/mysql #指定数据库的安装目录

datadir=/usr/local/mysql/data #指定数据库文件的存储路径

port = 3306 #指定端口

character-set-server=utf8 #设置服务器字符集编码格式为utf8

pid-file = /usr/local/mysql/mysqld.pid #指定pid 进程文件路径

socket=/usr/local/mysql/mysql.sock #指定数据库连接文件

bind-address = 0.0.0.0 #设置监听地址,0.0.0.0代表允许所有,如允许多个IP需空格隔开

skip-name-resolve #禁用DNS解析

max_connections=2048 #设置mysql的最大连接数

default-storage-engine=INNODB #指定默认存储引擎

max_allowed_packet=16M #设置数据库接收的数据包大小的最大值

server-id = 1 #指定服务ID号


sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES

LNMP源码编译_php_19

2.7更改mysql安装目录和配置文件的属主属组

chown -R mysql:mysql /usr/local/mysql/

chown mysql:mysql /etc/my.cnf

LNMP源码编译_php_20

2.8设置路径环境变量

echo 'export PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile

source /etc/profile

2.9初始化数据库

cd /usr/local/mysql/bin/

./mysqld \

--initialize-insecure \ #生成初始化密码为空

--user=mysql \                      #指定管理用户

--basedir=/usr/local/mysql \        #指定数据库的安装目录

--datadir=/usr/local/mysql/data #指定数据库文件的存储路径

LNMP源码编译_mysql_21

2.10添加mysqld系统服务

cp /usr/local/mysql/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/ #用于systemctl服务管理

systemctl daemon-reload         #刷新识别     

systemctl start mysqld.service  #开启服务

systemctl enable mysqld         #开机自启动

netstat -anpt | grep 3306       #查看端口

LNMP源码编译_数据库_22

2.11安装成功设置密码为123456

LNMP源码编译_mysql_23

查看数据库

LNMP源码编译_数据库_24

3. 安装php

3.1将安装PHP 所需软件包传到/opt目录下

php-7.1.10.tar.bz2

3.2 安装GD库和GD库关联程序,用来处理和生成图片

yum -y install \

gd \ #图像化处理的库

libpng \ #png格式图片的库

libpng-devel \

pcre \ #PCRE库支持正则表达式

pcre-devel \ #pcre-devel是使用PCRE做二次开发时所需要的开发库,也是编译安装需要的

libxml2-devel \ #解析xml标记语言的库

libjpeg-devel #jpeg格式图片的库

LNMP源码编译_mysql_25

LNMP源码编译_mysql_26

3.2配置软件模块

cd /opt

tar jxvf php-7.1.10.tar.bz2

cd /opt/php-7.1.10/

./configure \

--prefix=/usr/local/php7 \ #指定将 PHP 程序的安装路径

--with-apxs2=/usr/local/httpd/bin/apxs \ #指定Apache httpd服务提供的apxs 模块支持程序的文件位置

--with-mysql-sock=/usr/local/mysql/mysql.sock \ #指定mysql 数据库连接文件的存储路径

--with-config-file-path=/usr/local/php7 #设置 PHP 的配置文件 php.ini 将要存放的位置

--with-mysqli \ #添加 MySQL 扩展支持 #mysqli扩展技术不仅可以调用MySQL的存储过程、处理MySQL事务,而且还可以使访问数据库工作变得更加稳定

--with-zlib \ #支持zlib功能,提供数据压缩

--with-curl \ #开启curl扩展功能,实现HTTP的Get下载和Post请求的方法

--with-gd \ #激活gd 库的支持

--with-jpeg-dir \ #激活jpeg 的支持

--with-png-dir \ #激活png 的支持

--with-freetype-dir \

--with-openssl \

--enable-mbstring \ #启用多字节字符串功能,以便支持中文等代码

--enable-xml \ #开启扩展性标记语言模块

--enable-session \ #会话

--enable-ftp \ #文本传输协议

--enable-pdo \ #函数库

--enable-tokenizer \ #令牌解释器

--enable-zip #ZIP压缩格式


LNMP源码编译_数据库_27

3.3编译安装make && make install

3.4复制模版文件作为PHP 的主配置文件,并进行修改

cp /opt/php-7.1.10/php.ini-development /usr/local/php7/php.ini

3.5编辑配置文件

vim /usr/local/php7/php.ini

取消注释,修改

LNMP源码编译_mysql_28

修改mysqli.default_socket = /usr/local/mysql/mysql.sock

LNMP源码编译_php_29

3.6优化把PHP 的可执行程序文件放入路径环境变量的目录中便于系统识别

ln -s /usr/local/php7/bin/* /usr/local/bin/

LNMP源码编译_mysql_30

3.7修改Apache配置文件让Apache支持PHP

vi /etc/httpd.conf

LNMP源码编译_mysql_31

​#在392行下方插入内容,让Apache可以支持.php的网页文件

LNMP源码编译_php_32

3.8 创建、编辑php页面文件验证PHP 测试页

rm -rf /urs/local/httpd/htdocs/index.html

vim /usr/local/httpd/htdocs/index.php

<?php

phpinfo();

LNMP源码编译_mysql_33

LNMP源码编译_数据库_34

3.9在网页测试“http://192.168.204.136/index.php”

LNMP源码编译_mysql_35

4.搭建论坛

4.1   mysql> CREATE DATABASE bbs;  //创建一个数据库//

mysql> GRANT all ON bbs.* TO 'bbsuser'@'%' IDENTIFIED BY 'admin123';   //把bbs数据库里面所有表的权限授予给bbsuser,并设置密码//  所有访问来源/渠道

mysql> GRANT all ON bbs.* TO 'bbsuser'@'localhost' IDENTIFIED BY 'admin123';

mysql>flush privileges; //刷新数据库//

LNMP源码编译_数据库_36

4.2 解压论坛压缩包

LNMP源码编译_mysql_37

4.3上传站点更新包

cp -r upload/ /usr/local/httpd/htdocs/bbs

4.4切换论坛目录

cd /usr/local/httpd/htdocs/bbs

LNMP源码编译_php_38

4.5更改论坛目录属主

LNMP源码编译_数据库_39

4.6加绝对路径访问/bbs/install.点击我同意

LNMP源码编译_php_40

LNMP源码编译_php_41

LNMP源码编译_mysql_42

4.7注册用户

LNMP源码编译_mysql_43

4.8登录成功

LNMP源码编译_数据库_44







举报

相关推荐

0 条评论