【LNMP】 环境搭建

一、 安装nginx

使用yum的 安装方式最为简单,只需要一行命令就可以执行安装 :

yum install nginx

得出的结果截图:

安装成功!

接着,我们就要把他设置为开机启动的了,使用命令:

chkconfig nginx on #设置nginx开机启动

得出的结果如图:

它让我们直接使用 systemctl enable nginx.service 直接启动 nginx 服务,执行即可;

systemctl start nginx.service

    systemctl stop nginx.service

    systemctl reload nginx.service

    systemctl status nginx.service

二、 安装MySQL

如果你用yum 直接安装MySQL 的话,可能会直接安装到MySQL的分支 MariaDB

所以需要下载对应的安装包来进行安装

首先,先下载对应的源包;

wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

然后用 yum 直接执行安装

yum -y install mysql57-community-release-el7-10.noarch.rpm

之后再安装 MySQL服务器部分

yum -y install mysql-community-server

到这里安装部分就结束了;

然后我们还需要对MySQL进行密码修改,远程链接的设置:

首先,我们先启动MySQL

systemctl start mysqld.service

查看MySQL运行状态

systemctl status mysqld.service

 如果MySQL已经开始正常运行,那么要想进入MySQL还得先找出此时root用户的密码,通过如下命令可以在日志文件中找出密码:

grep "password" /var/log/mysqld.log

找到密码后,我们就需要进入数据库去修改密码了:

mysql -uroot -p

输入你找到的密码,进入数据库,因为MySQL默认必须修改密码之后才能操作数据库,所以你现在不能进行其他操作;

修改密码

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';

注意:新密码设置的时候如果设置的过于简单会报错!

最后还有一个问题,就是因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉:

yum -y remove mysql57-community-release-el7-10.noarch

然后就全部完成了!

对于数据库密码想要修改的简单点的话,可以进入数据库进行设置:

mysql> set global validate_password_policy=0; mysql> set global validate_password_length=1;

这样密码就可以设置为简单点了。

引用:CentOS7 yum方式安装MySQL5.7 - 码头小渔夫 - 博客园

远程链接的问题,你直接链接数据库的时候可能会报:

host ‘’ is not allowed to connect to this mysql server

这种问题,这时候你需要进入数据库操作:

use mysql; update user set host = '%' where user = 'root'; FLUSH PRIVILEGES;

然后再重新链接就可以了!

注: 第四步是刷新MySQL的权限相关表,一定不要忘了。

引用:Host is not allowed to connect to this MySQL server解决方法 - 姜飞祥 - 博客园

三、PHP 安装

因为我安装的是PHP7.3 版本的,所以需要下载好安装包来进行安装:

下载地址:1、Index of /php/distributions/

2、https://www.php.net/downloads.php

下载好了之后,放到服务器中解压:

tar -zxvf php-7.3.9.tar.gz cd php-7.3.9

进行安装前先安装一下依赖:

yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurse ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers gmp gmp-devel ibmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel sqlite-devel

然后进行编译安装:

./configure --prefix=/opt/php/etc --with-config-file-path=/opt/php/lib --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --enable-inline-optimization --disable-debug --disable-rpath --enable-shared --enable-soap --with-xmlrpc --with-openssl --with-mcrypt --with-pcre-regex --with-sqlite3 --with-zlib --enable-bcmath --with-iconv --with-bz2 --enable-calendar --with-cdb --enable-dom --enable-exif --enable-fileinfo --enable-filter --with-pcre-dir --enable-ftp --with-gd --with-openssl-dir --with-jpeg-dir --with-png-dir --with-freetype-dir --enable-gd-native-ttf --enable-gd-jis-conv --with-gettext --with-gmp --with-mhash --enable-json --enable-mbstring --enable-mbregex --enable-mbregex-backtrack --with-libmbfl --with-onig --enable-pdo --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-zlib-dir --with-pdo-sqlite --with-readline --enable-session --enable-shmop --enable-simplexml --enable-sockets --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-wddx --with-libxml-dir --with-xsl --enable-zip --enable-mysqlnd-compression-support --with-pear --enable-opcache --with-curl

注:--prefix 指定php 的 安装目录

php7.3 7.4的版本不支持部分编译配置。 php7.4编译参数 php7.4 configure_Luffy_龙的博客-CSDN博客_php7.4 编译参数

安装PHP7.4找不到包 No package 'oniguruma' found错误 wget https://github.com/kkos/oniguruma/archive/v6.9.4.tar.gz -O oniguruma-6.9.4.tar.gz  tar -xvf oniguruma-6.9.4.tar.gz  cd oniguruma-6.9.4/ ./autogen.sh ./configure --prefix=/usr --libdir=/lib64  //64位的系统一定要标识  --libdir=/lib64 否则还是不行 make && make install ./autogen.sh:行47: autoreconf: 未找到命令 解决办法:yum -y install autoconf automake libtool

编译安装:

make clean && make -j 4 && make install

安装完成后需要加上硬链接:

ln -s /opt/php/etc/bin/php /usr/bin/php

不然你的PHP无法使用。

注:创建硬链的地址需要使用绝对地址

ps:后续想重启php-fpm 发现重启不了,没有允许php-fpm ,但是直接查运行确可以查到,实际上是:

配置没配置好就直接运行PHP了,上面弄完之后还需要进行php-fpm 的配置:

cp /opt/php/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

如果不清楚init.d.php-fpm 这个文件在哪,可以使用 find / -name init.d.php-fpm 全局搜一下。

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

执行上面的配置php-fpm

注意:这样配置完的php-fpm 是没有读取到php.ini 的文件的,如何判断他有没有读取呢?可以执行phpinfo(); 看看 Loaded Configuration File 的值是什么,假如为none 的话,那就是没有配置读取到php.ini

解决:

看下 Configuration File (php.ini) Path 他这个目录是哪里的,这个目录就是存放php.ini 的路径,然后我们直接把源码包中的php.ini-production拷贝到--with-config-file-path设置的路径下 /usr/local/php/etc/php.ini ,--with-config-file-path 这里设置的路径就是 Configuration File (php.ini) Path 的路径。

到这一步,php就可以正常读取到你新增的扩展了。

这时候 再执行 :killall php-fpm 就可以关掉 php-fpm,然后再重新启动。

service php-fpm start

安装过程中可能出现的问题:

cmake 版本过低:

重装cmake

wget http://www.cmake.org/files/v3.1/cmake-3.1.1.tar.gz tar zxvf cmake-3.1.1.tar.gz cd cmake-3.1.1 ./bootstrap make && make install cp bin/cmake /usr/bin/

最后一步是看你需要,你可以先执行 cmake --vension 确定是否安装完成,如果出现版本号,则安装完成,如果没用,则执行最后一步。

php执行配置命令configure时,报如下错误:

checking for libzip... not found

configure: error: Please reinstall the libzip distribution

(1)移除旧的libzip:   yum remove libzip (2)安装新版本:   curl-O https://libzip.org/download/libzip-1.5.1.tar.gz   tar -zxvf libzip-1.5.1.tar.gz   cd libzip-1.5.1   mkdir build   cd build   cmake ..   make && make install 注意:如果提示cmake版本过低,需新版本,则需要重新安装cmake。 注意:低版本的可能不需要cmake,例如1.2版本:   curl-O https://nih.at/libzip/libzip-1.2.0.tar.gz   tar -zxvf libzip-1.2.0.tar.gz   cd libzip-1.2.0   ./configure   make && make install

第二个报错地方:

configure: error: off_t undefined; check your library configuration

解决方法:

vim /etc/ld.so.conf #添加如下几行 /usr/local/lib64 /usr/local/lib /usr/lib /usr/lib64 #保存退出 :wq ldconfig -v # 使之生效

这样就可以了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值