记录一次 LNMP 环境搭建到 Https 配置

之前一直习惯使用 LAMP环境,更多的使用Apache去作为自己的服务器。今天折腾了一下LNMP,以及升级https,因为没什么含金量,仅作为我的一个记录笔记吧。


  • 1.搭建了LNMP环境

        sudo apt-get update
    
        #安装nginx
        sudo apt-get install nginx 
    
        #安装 php7.2以及php7.2-fpm
        sudo apt-get install php7.2 php7.2-fpm
    
        #配置修改
        sudo vim /etc/nginx/sites-avaiable/default
        增加以下配置内容
    ![记录一次LNMP 环境搭建到Https配置](https://cdn.learnku.com/uploads/images/201911/06/12860/MX47r8I5Lc.png!large)
    
        #修改 www.conf配置文件
    
        /etc/php/7.2/fpm/pool.d/www.conf
    
        sudo vim  /etc/php/7.2/fpm/pool.d/www.conf
        #把 
        listen = /run/php/php7.2-fpm.sock 
        #修改为
        listen =  /var/run/php/php7.2-fpm.sock
    
        #修改 php.ini配置文件
        sudo vim /etc/php/7.2/fpm/php.ini
        #将该文件的 
        cgi.fix_pathinfo = 1 
        #更改为
        cgi.fix_pathinfo = 0
    
        #修改 fastcgi_params配置文件
        sudo vim /etc/nginx/fastcgi_params
    
        #在该文件的组后一行假如代码
        fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name
    
        #接下来我们可以检验一下装的是否正确,在根目录下新建一个 test.php 文件
        sudo vim /var/www/html/test.php
    
        #执行 localhost/test.php如果可以正确解析则OK。
    
        #安装Mysql
    
        sudo apt-get install mysql-server mysql-client php7.2-mysql
    
        #安装完成后我们可以使用PDO来检测一下
        sudo vim /var/www/html/mysql.php
    
        <?php
           try{
              $pdo = new PDO("mysql:host=localhost;dbName=mysql;",'root','root');
              var_dump($pdo);
           }catch(Exception $e){
               echo $e->getMessage();?>
           #然后我们可以在浏览器访问  localhost/mysql.php
    

记录一次LNMP 环境搭建到Https配置


    【友情提醒】
    1,先安装 nginx然后安装php,因为在安装php时候会自动安装apache
    2,可以使用 sudo apt-get auroremove 软件名 来卸载,然后重新安装。
  • 安装 phpmyadmin
sudo apt-get update

sudo apt-get install phpmyadmin

#然后按照提示内容默认进行即可。
#建立 /var/www/html/下的软连接

sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin
#然后重启nginx
sudo service nginx restart

#访问 localhost/phpmyadmin/index.php 看是否正确
  • 配置HTTPS

1,首先在我所在的服务器申请免费的 ssl证书,通过一系列认证之类的乱七八糟操作之后呢就开始下载证书了。

记录一次LNMP 环境搭建到Https配置

就是这两个文件

记录一次LNMP 环境搭建到Https配置

然后我在 /etc/nginx下新建了ssl文件夹用于存放证书

```
 server {
    listen 443 ssl;
    listen [::]:443;
    root /home/ubuntu/CODE/xxxx/public/;
    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-XSS-Protection "1;mode=block";
    add_header X-Content-Type-Options "nosniff";

    charset utf-8;

    ssl on;
    ssl_certificate      /etc/nginx/ssl/public.pem;
    ssl_certificate_key   /etc/nginx/ssl/private.key;
    ssl_session_timeout  5m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers  ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers on;

    index index.html index.htm  index.php;

    server_name xxx.com www.xxx.com;

    access_log /var/log/nginx/xx.access.log;
    error_log /var/log/nginx/xx.error.log;

    location / {
            try_files $uri $uri/ /index.php?$query_string;
    }
    location ~ \.php$ {
            fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
            fastcgi_split_path_info ^(.+\.php)(/.*)$;
            include fastcgi_params;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;    
    }
    }
server{
   listen 80;
   server_name fantasycode.top www.fantasycode.top;
   rewrite ^(.*) https://$host$1 permanent;
}

记录一次LNMP 环境搭建到Https配置

本作品采用《CC 协议》,转载必须注明作者和本文链接
UKNOW
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!