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 

  • 相关阅读:
    ASP.NET CORE 使用Consul实现服务治理与健康检查(2)——源码篇
    ASP.NET CORE 使用Consul实现服务治理与健康检查(1)——概念篇
    Asp.Net Core 单元测试正确姿势
    如何通过 Docker 部署 Logstash 同步 Mysql 数据库数据到 ElasticSearch
    Asp.Net Core2.2 源码阅读系列——控制台日志源码解析
    使用VS Code 开发.NET CORE 程序指南
    .NetCore下ES查询驱动 PlainElastic .Net 升级官方驱动 Elasticsearch .Net
    重新认识 async/await 语法糖
    EF添加
    EF修改部分字段
  • 原文地址:https://www.cnblogs.com/apesplan/p/10595411.html
Copyright © 2011-2022 走看看