一、 安装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 # 使之生效
这样就可以了。