zoukankan      html  css  js  c++  java
  • Ubuntu 18.04.1 下快速搭建 LNMP环境

    1.Nginx的安装

    Nginx安装是属于最简单的,只需要在命令行执行 

    sudo apt-get install nginx

    就能自动安装 Nginx,其中过程中需要 选择 Y/n 的选择Y就行了,当安装结束后再执行下列代码,重启Nginx服务器

    sudo service nginx restart

    然后通过chrome浏览器访问 localhost,如果出现Nginx的欢迎页面,就代码Nginx安装成功

    2:MySQL的安装

    由于咱们使用的Ubuntu18.04,如果直接不选MySQL版本的话,则自动安装最新的MySQL,所以,在此次安装中,就自动安装了MySQL5.7;

    执行命令如下:

    sudo apt-get install mysql-server mysql-client 

    虽然我看到很多教程上说,在安装过程中会出现设定MySQL初始密码的的步骤,不过我在安装过程中,属实是什么都没发生,就是这个,导致后面有些坑的出现。

    在安装完成后,执行下面命令:

    mysql -u root -p

    然后要求你输入密码,如果之前设置,则输入设置好的。

    如果没设置,就要开始进入下个坑了,出现下列报错:

    ERROR 1698 (28000): Access denied for user ‘root‘@‘localhost‘

    这个错误,简单的说,就是密码错了,但是你没设置过,怎么会错呢,这个就是MySQL自身会设置的随机密码的问题了,解决方法就是重新设置新的root密码,但是问题在于,如果进入MySQL中去。我在这过程中有两种方法进入MySQL命令行里,

    第一种如下:

    sudo mysql

    通过管理员权限,直接进入。

    第二种如下:

    关闭正在运行的 MySQL :
    service mysql stop
    
    运行命令:
    mysqld_safe --skip-grant-tables &

    以上两种方法,如果执行成功,则会成功进入MySQL的命令行中,

    然后就开始进行修改root密码的操作了:

    mysql> use mysql;
    mysql> update mysql.user set authentication_string=PASSWORD('447728'),plugin='mysql_native_password' where user='root';
    mysql>flush privileges;
    
    

    这一步主要是在设置新密码的时候,顺便把用户root的plugin进行修改,修改为默认的 mysql_native_password,然后在刷新权限设置。

    在执行成功后,重启MySQL,然后再执行一次上面连接数据库命令:

    sudo service mysql restart 
    mysql -u root -p

     我这样解决掉MySQL的使用问题的。

      3:PHP7.2.5安装

    我直接执行如下命令:

    sudo apt-get install php7.2 php7.2-fpm php7.2-mysql
    安装之后差curl 并且php.ini中未开启
    sudo apt-get install php7.2-curl
    cd /etc/php/7.2/fpm
    sudo vim php.ini

    三个命令一起执行,直接把php相关的各种软件和拓展直接安装成功。

    4:配置Nginx解析PHP

    首先修改你Nginx配置文件,执行命令:

    sudo vim /etc/nginx/sites-available/default

    修改如下图:

    server {
    listen 80;
    server_name 域名;

    charset utf-8;

    #access_log logs/host.access.log main;
    # root /var/www/joyway/laraverl/public;
    root /var/www/joyway;

    location / {
    index index.html index.htm index.php l.php;
    autoindex off;
    }

    if (!-e $request_filename) {
    rewrite ^/(.*) /index.php/$1 last;
    }
    #error_page 404 /404.html;

    # redirect server error pages to the static page /50x.html
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {

       root html;
    }
    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    # location ~ .php$ {
    # proxy_pass http://127.0.0.1;
    #}
    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    location ~ .php(.*)$ {
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_split_path_info ^((?U).+.php)(/?.+)$;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param PATH_INFO $fastcgi_path_info;
    fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
    include fastcgi_params;
    }
    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #location ~ /.ht {
    # deny all;
    #}

    }

    然后执行命令,重启Nginx:

    sudo service nginx restart

     接下来我们修改PHP相关配置文件:

    sudo vim /etc/php/7.2/fpm/pool.d/www.conf

    在37行加入替换代码:

    :set number

    修改之后,我们重启php7.2-fpm

    sudo service php7.2-fpm start

    然后咱们在/var/www里面新建index.php文件

    index.php代码如下:

    <?php

    echo 123;

    ?>

    然后在浏览器打开:域名/index.php 效果如下:

    然后咱们在/var/www里面新建mysql.php文件,

    mysql.php代码如下:

    <?php echo ‘<h1>Page loaded with PHP!</h1>‘;
    $conn = mysqli_connect(‘localhost‘, ‘site_admin‘, ‘your_password‘);
    
    if(!$conn){
        die(‘<h2>Error: </h2>‘ . mysqli_connect_error());
    }else{
        echo ‘<h2>Successfully Connected to MySQL Database!</h2>‘;
    }
    ?>

    然后在浏览器打开:localhost/mysql.php 

  • 相关阅读:
    Java结束线程的三种方法(爱奇艺面试)
    Threadlocal 传递参数(百度二面)
    数据一致性 kafka 是保存副本 leader读写,follower 只备份 而 zookeeper是 leader 读写,follower负责读
    Mysql 间隙锁原理,以及Repeatable Read隔离级别下可以防止幻读原理(百度)
    SOA,SOAP,RPC,以及 RPC协议与 REST 协议之间的关系(搜狗)
    select、poll、epoll之间的区别(搜狗面试)
    windows日志查看-非法关机判断方法
    望帝春心托杜鹃 中望帝的由来~
    深入解读Quartz的原理
    Hibernate性能优化之EHCache缓存
  • 原文地址:https://www.cnblogs.com/apesplan/p/10595411.html
Copyright © 2011-2022 走看看