LNMP的 安装

    科技2025-09-02  12

    nginx安装

    setenforce 0 关闭核心防护 nginx安装相关环境 [root@localhost ~]# yum -y install pcre-devel zlib-devel gcc-c++ gcc 解压并安装 Nginx。 [root@localhost ~]# useradd -M -s /sbin/nologin nginx [root@localhost opt]# tar xzvf nginx-1.12.2tar.gz [root@localhost opt]# cd nginx-1.12.2/ [root@localhost nginx-1.12.2]# ./configure --prefix=/usr/local/nginx 安装路径 --user=nginx 指定运行的用户 --group=nginx 指定运行的组 --with-http_stub_status_module 启用状态统计 [root@localhost nginx-1.12.2]#make &&make install 路径优化 [root@localhost nginx-1.12.2]#ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ [root@localhost nginx-1.12.2]#ls -l /usr/local/sbin/nginx [root@localhost nginx-1.12.2]#nginx -t 配置启动文件 [root@localhost ~]# vim /lib/systemd/system/nginx.service [Unit] Description=nginx ####描述 After=network.target ####描述服务类别 [Service] Type=forking ####后台运行形式 PIDFile=/usr/local/nginx/logs/nginx.pid ####PID 文件位置 ExecStart=/usr/local/nginx/sbin/nginx ####启动服务 ExecReload=/usr/bin/kill -s HUP $MAINPID ####根据 PID 重载配置 ExecStop=/usr/bin/kill -s QUIT $MAINPID ####根据 PID 终止进程 PrivateTmp=true [Install] WantedBy=multi-user.target [root@localhost system]# chmod 754 /lib/systemd/system/nginx.service [root@localhost system]# systemctl enable nginx.service [root@localhost system]# systemctl start nginx.service [root@localhost system]# natstat -anpt | grep 80 ​ tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 使用 浏览器 输入IP 显示“Welcome to nginx!”页面,表明 Nginx 服务已经正常运行

    mysql 安装

    [root@localhost~]#yum -y install \ gcc \ gcc-c++ \ make \ ncurses \ 字符集终端库 ncurses-devel \ bison \ 语法分析器 cmake [root@localhost~]#useradd -s /sbin/nologin mysql

    ###上传mysql-boost-5.7.20.tar.gz到opt目录下###

    [root@localhost~]#cd /opt [root@localhost opt]#tar xf mysql-boost-5.7.20.tar.gz [root@localhost opt]#cd /opt/mysql-5.7.20/ [root@localhost mysql-5.7.20]#cmake \ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ 指定将 mysql 数据库程序安装到某目录下 -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ 通信文件 -DSYSCONFDIR=/etc \ 指定初始化参数文件目录 -DSYSTEMD_PID_DIR=/usr/local/mysql \ 进程文件位置 -DDEFAULT_CHARSET=utf8 \ 指定默认使用的字符集校对规则 -DDEFAULT_COLLATION=utf8_general_ci \ 指定默认使用的字符集校对规则 -DWITH_INNOBASE_STORAGE_ENGINE=1 \ 存储使用引擎 -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ 存储使用引擎 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ 存储使用引擎 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \ 存储使用引擎 -DMYSQL_DATADIR=/usr/local/mysql/data \ 数据存放位置 -DWITH_BOOST=boost \ 支持运行库 -DWITH_SYSTEMD=1

    ######编译安装####

    [root@localhost mysql-5.7.20]#make && make install

    #####数据库目录进行权限调整###

    [root@localhost mysql-5.7.20]#chown -R mysql:mysql /usr/local/mysql/

    #####建立调整配置文件########

    [root@localhost mysql-5.7.20]#vi /etc/my.cnf [client] port = 3306 default-character-set=utf8 socket = /usr/local/mysql/mysql.sock [mysql] port = 3306 default-character-set=utf8 socket = /usr/local/mysql/mysql.sock [mysqld] user = mysql basedir = /usr/local/mysql datadir = /usr/local/mysql/data port = 3306 character_set_server=utf8 pid-file = /usr/local/mysql/mysqld.pid socket = /usr/local/mysql/mysql.sock server-id = 1 sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES [root@localhost mysql-5.7.20]#chown mysql:mysql /etc/my.cnf #######设置环境变量#### [root@localhost mysql-5.7.20]#echo 'PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile [root@localhost mysql-5.7.20]#echo 'export PATH' >> /etc/profile [root@localhost mysql-5.7.20]#source /etc/profile [root@localhost mysql-5.7.20]#cd /usr/local/mysql/ [root@localhost mysql]#bin/mysqld \ --initialize-insecure \ --user=mysql \ --basedir=/usr/local/mysql \ --datadir=/usr/local/mysql/data [root@localhost mysql]#cp usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/ [root@localhost mysql]#systemctl enable mysqld [root@localhost mysql]#systemctl start mysqld [root@localhost mysql]#systemctl status mysqld [root@localhost mysql]#netstat -anpt | grep 3306 [root@localhost mysql]#mysqladmin -u root -p password "abc123" //刚开始没密码是空的直接回车,然后输入密码abc123,在此确认abc123,这是在root账户下运行的 [root@localhost mysql]#mysql -u root -p ##这个命令敲下,提示要输入密码,这个就是刚才设置的密码abc123

    二,PHP安装

    [root@localhost ~]#yum -y install \ libjpeg \ 图片处理 libjpeg-devel \ 开发包 libpng libpng-devel \ png 图片 freetype freetype-devel \ 字体 libxml2 \ libxml2-devel \ xml2 文件格式 zlib zlib-devel \ 压缩 curl curl-devel \ 网页上传下载 openssl openssl-devel 身份验证

    #######上传php-7.1.10.tar.bz2包到opt目录下#####

    [root@localhost ~]#cd /opt [root@localhost opt]#tar xjvf php-7.1.10.tar.bz2 [root@localhost opt]#cd php-7.1.10 [root@localhost php-7.1.10]#./configure \ --prefix=/usr/local/php \ 指定将 PHP 程序安装到哪个目录下 --with-apxs2=/usr/local/httpd/bin/apxs \ 设置 Apache HTTP Server 提供的 apxs 模块支持程序的文件位置 --with-mysql-sock=/usr/local/mysql/mysql.sock \ 指向MySQL文件位置 --with-mysqli \ 客户终端处理 --with-zlib \ --with-curl \ --with-gd \ 图形化处理 --with-jpeg-dir \ --with-png-dir \ --with-freetype-dir \ --with-openssl \ --enable-mbstring \ 启用多字节字符串功能,以便支持中文等代码 --enable-xml \ --enable-session \ 会话 --enable-ftp \ --enable-pdo \ --enable-tokenizer \ 函数库 --enable-zip 压缩 --enable-fpm 动态处理 [root@localhost php-7.1.10]#make && make install [root@localhost php-7.1.10]#cp php.ini-development /usr/local/php/lib/php.ini [root@localhost php-7.1.10]#vi /usr/local/php/lib/php.ini mysqli.default_socket = /usr/local/mysql/mysql.sock date.timezone = Asia/Shanghai [root@localhost php]#/usr/local/php/bin/php -m //验证安装的模块 [root@localhost php]#vi /etc/httpd.conf //在合适位置新增 AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps DirectoryIndex index.php index.html [root@localhost php]#rm -f /usr/local/httpd/htdocs/index.html [root@localhost php]#vi /usr/local/httpd/htdocs/index.php <?php phpinfo(); ?> [root@localhost htdocs]#systemctl restart httpd [root@localhost htdocs]#mysql -u root -p mysql>CREATE DATABASE myadm; mysql>GRANT all ON myadm.* TO 'myadm'@'%' IDENTIFIED BY 'admin123'; mysql>GRANT all ON myadm.* TO 'myadm'@'localhost' IDENTIFIED BY 'admin123'; mysql>flush privileges; [root@localhost hmysql]#vi /usr/local/httpd/htdocs/index.php <?php $link=mysqli_connect('192.168.1.21','myadm','admin123'); if($link) echo "<h1>Success!!</h1>"; else echo "Fail!!"; ?>

    通过浏览器访问测试网页,如 http://192.168.1.21/index.php

    测试PHP网页是否能访问测试网页和MySQL数据库,如能访问成功信息,表示能够通过PHP网页访问。

    Processed: 0.016, SQL: 9