02 LNMP环境

一、安装mysql

检测系统默认是否安装mariadb,如有需删除。

rpm -qa|grep mariadb

  1. 创建mysql用户
    groupadd mysql
    useradd -s /sbin/nologin -g mysql -M mysql
  1. 获取相应软件包并上传至服务器(查看相应版本,以5.5稳定版本为例)
    https://dev.mysql.com/downloads/

  2. 采用二进制方式安装

    [root@docker software]# tar xf mysql-5.5.62-linux-glibc2.12-x86_64.tar
    [root@docker software]# mv mysql-5.5.62-linux-glibc2.12-x86_64 /application/mysql-5.5.62
    [root@docker software]# cd /application/
    [root@docker application]# ls
    mysql-5.5.62  nginx  nginx-1.14.2
    [root@docker application]# ln -s mysql-5.5.62 mysql
    [root@docker application]# ll
    total 4
    lrwxrwxrwx  1 root root   12 Feb 11 11:13 mysql -> mysql-5.5.62
    drwxr-xr-x 13 root root 4096 Feb 11 11:11 mysql-5.5.62
    lrwxrwxrwx  1 root root   25 Jan 25 17:59 nginx -> /application/nginx-1.14.2
    drwxr-xr-x 11 root root  142 Jan 25 18:00 nginx-1.14.2
    [root@docker application]#
  1. 初始化my.cnf
    [root@docker application]# cd mysql
    [root@docker mysql]# ls -l support-files/*.cnf
    -rw-r--r-- 1 7161 31415  4691 Aug 29 05:36 support-files/my-huge.cnf
    -rw-r--r-- 1 7161 31415 19759 Aug 29 05:36 support-files/my-innodb-heavy-4G.cnf
    -rw-r--r-- 1 7161 31415  4665 Aug 29 05:36 support-files/my-large.cnf
    -rw-r--r-- 1 7161 31415  4676 Aug 29 05:36 support-files/my-medium.cnf
    -rw-r--r-- 1 7161 31415  2840 Aug 29 05:36 support-files/my-small.cnf
    [root@docker mysql]# cp support-files/my-small.cnf /etc/my.cnf
  1. 初始化mysql数据库文件
    [root@docker mysql]# mkdir -p /application/mysql/data
    [root@docker mysql]# chown -R mysql.mysql /application/mysql
    [root@docker mysql]# /application/mysql/scripts/mysql_install_db --basedir=/application/mysql --datadir=/application/mysql/data --user=mysql
  1. 设置mysql启动脚本
    [root@docker mysql]# cp support-files/mysql.server /etc/init.d/mysqld
    [root@docker mysql]# chmod +x /etc/init.d/mysqld
    [root@docker mysql]# sed -i 's#/usr/local/mysql#/application/mysql#g' /application/mysql/bin/mysqld_safe /etc/init.d/mysqld
  1. 启动数据库
    [root@docker mysql]# /etc/init.d/mysqld start
    [root@docker mysql]# ps -ef|grep mysql
    [root@docker mysql]# netstat -antulp|grep 3306
  1. 添加自启动
    [root@docker mysql]# chkconfig --add mysqld
    [root@docker mysql]# chkconfig mysqld on
    [root@docker mysql]# chkconfig --list mysqld
  1. 添加mysql全局路径
    [root@docker mysql]#  echo 'export PATH=/application/mysql/bin:$PATH' >>/etc/profile
    [root@docker mysql]#  source /etc/profile
    [root@docker mysql]#  echo $PATH
  1. 登陆mysql
    [root@docker mysql]#   mysql
  1. 设置登陆密码
    [root@docker mysql]#  mysqladmin -u root password 'root'
    [root@docker mysql]#  mysql -uroot -p

二、安装PHP

PHP

  1. 检查ginx、mysql进程
    netstat -antulp|grep -E "80|3306"
    curl 127.0.0.1
    mysql -uroot -p
  1. 确认PHP所需的lib库
    rpm -qa zlib-devel libxml2-devel libjpeg-turbo-devel freetype-devel libpng-devel gd-devel libcurl-devel libxslt-devel libmcrypt-devel mhash mcrypt
    yum install zlib-devel libxml2-devel libjpeg-turbo-devel freetype-devel libpng-devel gd-devel libcurl-devel libxslt-devel libmcrypt-devel mhash mcrypt -y
    
    libiconv-devel
    wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.15.tar.gz  
    tar -zxvf libiconv-1.15.tar.gz  
    cd libiconv-1.15  
    ./configure --prefix=/usr/local/libiconv  
    make && make install 
  1. 下载php(5.6.40)
    http://cn.php.net

  2. 编译PHP

    tar zxf php-5.6.40.tar.gz
    cd php-5.6.40
    ./configure --prefix=/application/php5.6.40 --with-mysql=/application/mysql --with-iconv-dir=/usr/local/libiconv \
    --with-fpm-user=nginx --with-fpm-group=nginx --enable-fpm
    ln -s /application/mysql/lib/libmysqlclient.so.18 /usr/lib64/
    make
    make install
    cd /application/
    ln -s /application/php5.6.40/ php
  1. 配置php.ini
    cp php.ini-production /application/php/lib/php.ini
  1. 配置php.fpm.conf
    cd /application/php/etc
    cp php-fpm.conf.default php-fpm.conf
  1. 启动php-fpm
    /application/php/sbin/php-fpm
    ps -ef|grep php-fpm
    lsof -i:9000

配置nginx支持php

  1. 配置www.conf
    在server下添加如下:
    location ~ .*\.(php|php5)?$ {
                root   html/www;
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_index index.php;
                include fastcgi.conf;
            }
  1. 检查配置语法并重新加载
    /sbin/nginx -t
    /sbin/nginx -s reload
  1. 创建测试文件
    echo "<?php phpinfo(); ?>" >test_info.php
    cat test_mysql.php
    <?php
        $link_id=mysql_connect('localhost','root','root') or mysql_error();
        if($link_id){
            echo "mysql successful by jzhang";
        }else{
            echo mysql_error();
        }
    ?>
  2. 登陆web查看结果
    http://your_ip/test_info.php
    http://your_ip/test_mysql.php 

部署wordpress博客

  1. 下载wordpress
    wget https://cn.wordpress.org/wordpress-5.0.3-zh_CN.tar.gz
    tar zxf wordpress-5.0.3-zh_CN.tar.gz
    mv wordpress /application/nginx/html/www/
    chown -R nginx.nginx /application/nginx/html/www
  1. 创建数据库用户
    mysql -uroot -p
    create database wordpress;
    grant all on wordpress.* to wordpress@'localhost' identified by '123456';
    grant all on wordpress.* to wordpress@'192.168.176.%' identified by '123456';
    flush privileges;
  1. 补充一个首页文件index.php
       server {
            listen       80;
            server_name  www.cool4.com;
            location / {
                root   html/www;
                index  index.php index.html index.htm;
            location ~ .*\.(php|php5)?$ {
                root   html/www;
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_index index.php;
                include fastcgi.conf;
            }
           }
       }
  1. 重新加载
    /application/nginx/sbin/nginx -t
    /application/nginx/sbin/nginx -s reload
  2. 通过web进行安装
    http://your_ip/wordpress
    按照实际情况进行填写,下一步、下一步。。。。,完成。
    随意写写吧。

猜你喜欢

转载自www.cnblogs.com/jzhang/p/10470104.html