CentOS 7编译安装LNMP详解

2023年 7月 31日 67.6k 0

CentOS 7编译安装LNMP详解 (图片来源网络,侵删)

前言

作为一名LINUX爱好者,我相信大家都知道LNMP是Linux+Nginx+MySQL+PHP的缩写,是一套非常流行的Web服务器软件架构。在本文中,我们将详细介绍如何在CentOS 7系统上编译安装LNMP,希望能对大家有所帮助。

安装前的准备工作

在开始安装LNMP前,我们需要做好以下准备工作:

CentOS 7编译安装LNMP详解 (图片来源网络,侵删)

1. 确保CentOS 7系统已经安装并配置好了LAMP环境(即Linux+Apache+MySQL+PHP)。

2. 下载并安装必要的软件包,如Nginx、MySQL、PHP等。

CentOS 7编译安装LNMP详解 (图片来源网络,侵删)

3. 配置好防火墙,允许Nginx、MySQL和PHP服务的访问。

4. 确保系统已经更新到最新版本。

安装Nginx

1. 下载Nginx源码包并解压:

```

wget -1.20.0.tar.gz

tar zxvf nginx-1.20.0.tar.gz

2. 安装依赖包:

yum install gcc gcc-c++ zlib-devel pcre-devel openssl-devel -y

3. 进入解压后的Nginx源码目录,执行以下命令进行编译和安装:

./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_v2_module --with-http_stub_status_module

make && make install

4. 配置Nginx服务开机自启动:

vi /usr/lib/systemd/system/nginx.service

在文件中添加以下内容:

[Unit]

Description=The NGINX HTTP server

After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]

Type=forking

PIDFile=/usr/local/nginx/logs/nginx.pid

ExecStartPre=/usr/local/nginx/sbin/nginx -t

ExecStart=/usr/local/nginx/sbin/nginx

ExecReload=/bin/kill -s HUP $MAINPID

ExecStop=/bin/kill -s TERM $MAINPID

PrivateTmp=true

[Install]

WantedBy=multi-user.target

保存并退出,执行以下命令使服务生效:

systemctl daemon-reload

systemctl enable nginx.service

systemctl start nginx.service

5. 配置防火墙:

firewall-cmd --add-port=80/tcp --permanent

firewall-cmd --reload

安装MySQL

1. 下载MySQL源码包并解压:

wget -8.0/mysql-8.0.25.tar.gz

tar zxvf mysql-8.0.25.tar.gz

yum install gcc gcc-c++ cmake ncurses-devel -y

3. 进入解压后的MySQL源码目录,执行以下命令进行编译和安装:

mkdir build

cd build

cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/mysql

-DMYSQL_DATADIR=/usr/local/mysql/data

-DWITH_BOOST=boost

-DWITH_INNODB_MEMCACHED=ON

-DWITH_MYISAM_STORAGE_ENGINE=1

-DWITH_INNOBASE_STORAGE_ENGINE=1

-DWITH_ARCHIVE_STORAGE_ENGINE=1

-DWITH_BLACKHOLE_STORAGE_ENGINE=1

-DWITH_PARTITION_STORAGE_ENGINE=1

-DWITH_FEDERATED_STORAGE_ENGINE=1

-DWITH_SSL=system

-DWITH_ZLIB=system

-DWITH_LIBWRAP=0

-DENABLED_LOCAL_INFILE=1

-DENABLE_DTRACE=0

-DDEFAULT_CHARSET=utf8mb4

-DDEFAULT_COLLATION=utf8mb4_general_ci

-DWITH_DEBUG=0

4. 创建MySQL数据目录和用户:

mkdir /usr/local/mysql/data

useradd -M -s /sbin/nologin mysql

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

5. 初始化MySQL:

cd /usr/local/mysql

./bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

6. 配置MySQL服务开机自启动:

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

chmod +x /etc/init.d/mysql

chkconfig --add mysql

chkconfig mysql on

7. 启动MySQL服务:

service mysql start

8. 配置防火墙:

firewall-cmd --add-port=3306/tcp --permanent

安装PHP

1. 下载PHP源码包并解压:

wget -7.4.20.tar.gz

tar zxvf php-7.4.20.tar.gz

yum install libxml2-devel libjpeg-devel libpng-devel freetype-devel openssl-devel libcurl-devel -y

3. 进入解压后的PHP源码目录,执行以下命令进行编译和安装:

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

--with-config-file-path=/etc

--enable-fpm

--with-fpm-user=nginx

--with-fpm-group=nginx

--with-mysqli=mysqlnd

--with-pdo-mysql=mysqlnd

--with-iconv

--with-zlib

--with-openssl

--with-curl

--with-gd

--with-jpeg

--with-png

--with-freetype

--enable-bcmath

--enable-exif

--enable-ftp

--enable-gd-jis-conv

--enable-mbstring

--enable-pcntl

--enable-shmop

--enable-soap

--enable-sockets

--enable-sysvsem

--enable-sysvshm

--enable-xml

--enable-zip

--disable-fileinfo

4. 配置PHP:

cp php.ini-development /etc/php.ini

cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf

5. 配置PHP服务开机自启动:

cp /usr/local/php/sbin/php-fpm /etc/init.d/

chmod +x /etc/init.d/php-fpm

chkconfig --add php-fpm

chkconfig php-fpm on

6. 启动PHP服务:

service php-fpm start

7. 配置防火墙:

firewall-cmd --add-port=9000/tcp --permanent

配置Nginx

1. 创建Nginx配置文件:

mkdir /usr/local/nginx/conf/vhost

vi /usr/local/nginx/conf/vhost/default.conf

server {

listen 80;

server_name localhost;

root /var/www/html;

index index.php index.html index.htm;

location / {

try_files $uri $uri/ /index.php?$args;

}

error_page 404 /404.html;

location = /404.html {

root /usr/share/nginx/html;

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

location ~ .php$ {

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

include fastcgi_params;

}

保存并退出。

2. 修改Nginx配置文件:

vi /usr/local/nginx/conf/nginx.conf

在http块中添加以下内容:

include /usr/local/nginx/conf/vhost/*.conf;

3. 重启Nginx服务:

systemctl restart nginx.service

测试LNMP环境

在浏览器中输入服务器IP地址或域名,如果出现phpinfo()页面,则说明LNMP环境已经安装成功。

小结

本文详细介绍了如何在CentOS 7系统上编译安装LNMP,并配置好Nginx、MySQL和PHP服务,希望对大家有所帮助。

为您分享

Ubuntu系统中可以通过Ctrl+Alt+T快捷键打开终端,方便快捷。

相关文章

服务器端口转发,带你了解服务器端口转发
服务器开放端口,服务器开放端口的步骤
产品推荐:7月受欢迎AI容器镜像来了,有Qwen系列大模型镜像
如何使用 WinGet 下载 Microsoft Store 应用
百度搜索:蓝易云 – 熟悉ubuntu apt-get命令详解
百度搜索:蓝易云 – 域名解析成功但ping不通解决方案

发布评论