从零安装Debian系统(二)

image

安装lnmp

因为我懒、 而且 lnmp 是最快的统一配置php环境的方式,所以我用了它
lnmp官方网站
lnmp1.6版本

1
wget http://soft.vpser.net/lnmp/lnmp1.6.tar.gz -cO lnmp1.6.tar.gz && tar zxf lnmp1.6.tar.gz && cd lnmp1.6 && ./install.sh lnmp

根据自己的需求选择响应的配置即可。安装时间有点旧,请耐心等待。


配置 https

在阿里云或者腾讯云申请到了https证书后下载到服务器后,进行以下操作。
  • unzip 解压到指定目录

    1
    unzip -o test.zip -d /tmp/
  • 配置 nginx 选项

  1. 如果是 lnmp 生成虚拟主机的时候有相应的配置项,按照配置说明即可。
  2. 普通 nginx 配置

    • 编辑 nginx.conf

      1
      vim /usr/local/nginx/conf/nginx.conf
    • 在需要配置https的 server 里进行如下配置

      1
      2
      3
      4
      ssl_certificate      /root/project/ssl/nginx.crt;#证书路径     
      ssl_certificate_key  /root/project/ssl/nginx.key;#key路径             
      ssl_session_cache    shared:SSL:1m; #s储存SSL会话的缓存类型和大小                       
      ssl_session_timeout  5m; #会话过期时间
  3. http 自动跳转到 https

    1
    2
    3
    4
    server{
    listen 80 www.****.com;
    rewrite ^/(.*)$ https://www.****.com/$1 permanent;
    }

配置 laravel 项目

  1. lnmp下虚拟主机生成的项目会带有一个叫做.user.ini的文件,而且烦人的是,正常情况下无法删除
  • 删除 .user.ini
    chattr -i /home/wwwroot/你的网站目录/.user.ini
  1. 如果你使用 deploy 或者其他的代码部署工具,部署时会遇到部署失败的问题,原因在于php安全项设置
    1
    vim /usr/local/php/etc/php.ini

找到 disable_functions 删除掉被禁止的 funciton 即可

  1. 500 错误
    500 解决网址

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    #新增 支持laravel 优雅链接,在laravel 文档里有说明
    location / {
    try_files $uri $uri/ /index.php?$query_string;
    }
    #新增 支持php 的配置
    location ~ \.php$ {
    #不能有下面这句 try_files ,不然报错500
    # try_files $uri /index.php =404;
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    #这句注意 后面是.sock 不是127.0.0..1
    fastcgi_pass unix:/tmp/php-cgi.sock;
    fastcgi_index index.php;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

    }
  2. 解决NGINX PHP “No input file specified”

    1. 更改php.ini
      首先php.ini的配置中把
      ;cgi.fix_pathinfo=0 改为
      cgi.fix_pathinfo=1
      重启PHP或PHP-FPM

    2. 在nginx/conf/nginx.conf 找到:
      fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; 改为:
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

    3. nginx restart


咸鱼也要有梦想,万一实现了呢
0%