安装 Nginx 1.22.0
进入 Nginx 官网下载最新稳定版的tar.gz 源码包,本教程下载的是:http://nginx.org/download/nginx-1.22.1.tar.gz
将 nginx-1.22.0.tar.gz 文件通过 rz -y 命令上传到 /usr/local/ 路径下,然后执行下面命令
#在编译之前安装一些必须的依赖,否则将会抛出错误
yum -y install libaio ncurses gcc gcc-c++ cmake ncurses-devel wget pcre-devel zlib-devel openssl openssl-devel
#解压文件
tar -zxvf nginx-1.22.1.tar.gz
#进入解压后的文件夹
cd nginx-1.22.1
#配置支持https,--prefix是安装目录
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-stream --with-stream_ssl_preread_module --with-stream_ssl_module
#如果上条命令执行后没有报错,将会在目录下生成Makefile文件,此时我们只需执行make命令编译安装即可
make && make install
#查看Nginx版本
/usr/local/nginx/sbin/nginx -V
#运行Nginx
/usr/local/nginx/sbin/nginx
到这里,Nginx 就算安装好了。为了避免每次开机都要手动运行一次Nginx,下面将设置Nginx为开机自启动
#在系统服务目录里创建nginx.service服务文件
vi /lib/systemd/system/nginx.service
#输入下面内容,保存退出即可
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
#启用服务
systemctl enable nginx.service
#重启查看效果
reboot
通过以上操作设置服务后,Nginx 的启动、关闭、重启,以及运行状态都可以通过以下这些命令来操作
systemctl start nginx #启动nginx服务
systemctl stop nginx #停止nginx服务
systemctl status nginx #查看服务当前状态
systemctl restart nginx #重新启动服务
安装 Mysql 5.7
这里将不再使用编译源码方式安装,而是通过repo方式安装,这种方式无需手动设置开机自启动
#进入本地目录
cd /usr/local
#下载yum repo配置文件
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
#安装repo,这将会在/etc/yum.repos.d/目录下生成两个关于mysql的repo文件
rpm -ivh mysql57-community-release-el7-9.noarch.rpm
#进入上条命令所生成的repo文件的目录
cd /etc/yum.repos.d
#升级一下gpg
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
#使用yum命令安装mysql-server
yum install mysql-server
#安装完毕后启动Mysql服务
systemctl start mysqld
现在已经成功安装并运行Mysql5.7,但还不能直接使用Mysql命令登录,得重新设置一次密码
#编辑Mysql配置文件,并在[mysqld]后加入 skip-grant-tables=1
#其作用是为跳过密码验证,这样我们就可以无需密码登录到Mysql中设置新密码了
vi /etc/my.cnf
#以上设置完毕后,重启mysql使其生效
systemctl restart mysqld
#登录Mysql
mysql -u root -p
#更新Mysql密码
update mysql.user set authentication_string=password('yo#gdMEbt7ey1');
#信息更新后需要刷新
flush privileges;
#再次执行
alter user 'root'@'localhost' identified by 'yo#gdMEbt7ey1';
#密码设置完成,quit退出,记得将之前的跳过密码配置删除
quit
开启Mysql远程登录(非必要,不需要可以跳过)
#使用前面设置的密码登录Mysql
mysql -u root -p
#开启远程登录
grant all privileges on *.* to 'root'@'%' identified by 'yo#gdMEbt7ey1' with grant option;
#刷新
flush privileges;
现在就可以用软件连接Mysql管理数据库了。
安装 PHP 8.2.9
这里跟前面的Nginx安装方法大致相同,首先进入 PHP 官网下载最新稳定版的tar.gz 源码包,本教程下载的是:https://www.php.net/distributions/php-8.2.9.tar.gz
将 php-8.2.9.tar.gz 文件通过 rz -y 命令上传到 /usr/local/ 路径下,然后执行下面命令
#进入目录
cd /usr/local
#在这之前先安装一些依赖,以免编译报错。
#如果提示没有找到xxx包,可以尝试启用 EPEL 仓库,命令:
#yum install epel-release
#yum update
yum -y install cmake3 libxslt-devel libicu-devel bzip2-devel bzip2 autoconf bison re2c libxml2 libxml2-devel curl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel sqlite-devel oniguruma-devel
#由于yum安装的libzip版本过低,只能下载新版的源码编译安装,如无法下载,尝试本地下载后再手动上传到服务器
wget https://libzip.org/download/libzip-1.9.2.tar.gz
#解压libzip源码
tar -zxvf libzip-1.9.2.tar.gz
#进入解压后的文件夹
cd libzip-1.9.2
#生成供make命令使用的Makefile文件,这里就不指定参数了,默认即可
cmake3 ./
#使用make命令编译安装
make && make install
#配置临时环境变量(命令将libzip.pc生成到了/usr/local/lib64/pkgconfig目录,请注意lib64)
export PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig
#至此,编译PHP的先决条件已满足,我们返回到local目录,开始解压php源码包
cd /usr/local
#解压源码包
tar -zxvf php-8.2.9.tar.gz
#进入解压后的文件夹
cd php-8.2.9
#配置将要生成的Makefile文件的一些参数
#--prefix为安装目录
#--with-config-file-path为php.ini配置文件目录
#--with-fpm-user=www 属于哪个用户
#--with-fpm-group=www 属于哪个用户组
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-fpm-user=www --with-fpm-group=www --with-curl --with-freetype --enable-gd --with-jpeg --with-gettext --with-kerberos --with-libdir=lib64 --with-libxml --with-mysqli --with-openssl --with-pdo-mysql --with-pdo-sqlite --with-pear --enable-sockets --with-mhash --with-ldap-sasl --with-xsl --with-zlib --with-zip -with-bz2 --with-iconv --enable-fpm --enable-pdo --enable-ftp --enable-bcmath --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-sysvsem --enable-cli --enable-opcache --enable-intl --enable-calendar --enable-static --enable-mysqlnd --enable-exif
#使用make命令编译安装PHP
make && make install
#安装完成后将源码文件中的默认配置复制到PHP安装目录
cp php.ini-production /usr/local/php/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
#新建www用户并且加入www用户组,为什么要创建它?因为前面编译时指定了PHP归属哪个用户,可这个用户系统中还没有呢,所以需要创建
groupadd www
useradd -g www www
#启动PHP
/usr/local/php/sbin/php-fpm
到这里PHP就已经安装好了,现在添加开机启动
#在系统服务目录里创建php-fpm.service服务文件
vi /lib/systemd/system/php-fpm.service
#输入下面内容,保存退出即可
[Unit]
Description=php-fpm
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/php/sbin/php-fpm
PrivateTmp=true
[Install]
WantedBy=multi-user.target
#启用服务
systemctl enable php-fpm.service
#重启查看效果
reboot
给PHP安装 imagick 图像处理插件(非必要,不需要可以跳过)
cd /usr/local
#如果下载缓慢请手动下载上传
wget https://imagemagick.org/archive/releases/ImageMagick-7.1.0-46.tar.xz
#解压
tar -xvf ImageMagick-7.1.0-46.tar.xz
#进入解压后的文件夹
cd ImageMagick-7.1.0-46
#生成Makefile,配置安装路径
./configure --prefix=/usr/local/imagemagick
#编译安装
make && make install
#ImageMagick已经安装完毕,离开源码目录
cd /usr/local
#下载PHP版本的imagick
wget http://pecl.php.net/get/imagick-3.7.0.tgz
#解压
tar -zxvf imagick-3.7.0.tgz
#进入解压后的目录
cd imagick-3.7.0
#使用phpize生成configure文件
/usr/local/php/bin/phpize
#生成Makefile
./configure --with-php-config=/usr/local/php/bin/php-config --with-imagick=/usr/local/imagemagick
#编译安装
make && make install
#安装完毕,在php.ini的[PHP]下方加入 extension=imagick.so
vi /usr/local/php/etc/php.ini
#重启PHP生效
systemctl restart php-fpm
? 完结撒花 ~