CentOS编译安装LNMP详细教程
前言
LINUX一直以来都是开源社区中的一颗明珠,其中CentOS作为企业级的LINUX系统,深受广大企业用户的青睐。而LNMP则是常用的WEB开发环境,包含了Linux、Nginx、MySQL和PHP等软件。本文将详细介绍CentOS如何编译安装LNMP环境。
安装前的准备工作
在开始安装之前,我们需要做一些准备工作:
1. 确认CentOS系统版本为7.x或8.x,并已经安装了一些必要的软件包,如gcc、make、wget等。
2. 下载并解压安装包,我们可以从官网下载Nginx、MySQL和PHP的源码包,也可以使用已经编译好的软件包。
安装Nginx
1. 安装依赖包
首先需要安装一些依赖包,可以使用yum命令进行安装:
```
yum -y install gcc gcc-c++ autoconf automake make
yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel
2. 下载并解压Nginx安装包
从Nginx官网下载最新版的源码包,使用wget命令进行下载:
wget -1.20.1.tar.gz
下载完成后,使用tar命令解压文件:
tar zxvf nginx-1.20.1.tar.gz
3. 编译安装Nginx
切换到解压后的Nginx目录下,执行以下命令进行编译和安装:
cd nginx-1.20.1
./configure --prefix=/usr/local/nginx --with-http_ssl_module
make && make install
--prefix参数指定了Nginx的安装路径,--with-http_ssl_module参数启用了SSL模块。
4. 启动Nginx
执行以下命令启动Nginx:
/usr/local/nginx/sbin/nginx
可以使用ps命令查看Nginx进程是否启动:
ps -ef | grep nginx
安装MySQL
2. 下载并解压MySQL安装包
从MySQL官网下载最新版的源码包,使用wget命令进行下载:
wget -8.0/mysql-8.0.26.tar.gz
tar zxvf mysql-8.0.26.tar.gz
3. 编译安装MySQL
切换到解压后的MySQL目录下,执行以下命令进行编译和安装:
cd mysql-8.0.26
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=1 -DWITH_BOOST=/usr/local/boost
--prefix参数指定了MySQL的安装路径,--datadir参数指定了MySQL的数据目录,-DWITH_XXX_STORAGE_ENGINE参数启用了各种存储引擎,-DENABLED_LOCAL_INFILE参数启用了LOAD DATA LOCAL INFILE功能,-DWITH_BOOST参数指定了Boost库的路径。
4. 配置MySQL
执行以下命令进行MySQL的初始化:
cd /usr/local/mysql
bin/mysqld --initialize-insecure --user=mysql
然后执行以下命令启动MySQL:
bin/mysqld_safe --user=mysql &
可以使用mysql命令登录MySQL:
bin/mysql -u root
安装PHP
yum -y install libxml2 libxml2-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libmcrypt libmcrypt-devel libxslt libxslt-devel
2. 下载并解压PHP安装包
从PHP官网下载最新版的源码包,使用wget命令进行下载:
wget -7.4.22.tar.gz
tar zxvf php-7.4.22.tar.gz
3. 编译安装PHP
切换到解压后的PHP目录下,执行以下命令进行编译和安装:
cd php-7.4.22
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype --with-jpeg --with-zlib --with-libxml-dir=/usr --with-gettext --with-xmlrpc --with-xsl --with-mcrypt --with-gd --enable-soap --enable-mbstring --enable-sockets --enable-exif --enable-bcmath --enable-opcache --with-openssl --with-curl
--prefix参数指定了PHP的安装路径,--with-config-file-path参数指定了PHP的配置文件路径,--enable-fpm参数启用了PHP-FPM,--with-fpm-user参数指定了PHP-FPM的运行用户,--with-fpm-group参数指定了PHP-FPM的运行用户组,--with_XXX参数启用了各种功能模块。
4. 配置PHP
在PHP安装目录下,复制php.ini-development文件为php.ini:
cp php.ini-development /usr/local/php/etc/php.ini
然后修改php.ini文件,启用需要的PHP模块。
5. 启动PHP-FPM
执行以下命令启动PHP-FPM:
/usr/local/php/sbin/php-fpm
配置Nginx
1. 配置Nginx
在Nginx的配置文件中,添加以下内容:
server {
listen 80;
server_name localhost;
root /var/www/html;
index index.php index.html index.htm;
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;
}
}