前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Ubuntu16.04部署LNMP环境

Ubuntu16.04部署LNMP环境

作者头像
Meng小羽
修改2019-12-23 15:29:17
4220
修改2019-12-23 15:29:17
举报
文章被收录于专栏:Debug客栈Debug客栈

LNMP就是相对于LAMP环境的开发环境:

LAMP = Linux + Apache + MySQL + PHP

LNMP = Linux + Nginx + MySQL + PHP

自己从网络上找了许多的教程,但是马虎的比较多,详细的还是没有几个,并且有许多的Bug,现在将自己踩的坑做出来的教程呈上。

LNMP就是采用nginx服务器来进行作为服务器应用运行环境,具体怎么设置,请看下文:

升级系统

代码语言:javascript
复制
sudo apt update

安装Nginx

代码语言:javascript
复制
sudo apt install nginx

默认web路径在/var/www/html,

访问本地http://loaclhost/出现Welcome to Nginx!,即是安装成功!

安装Mysql

代码语言:javascript
复制
sudo apt install mysql-server mysql-client

安装过程中需设置 mysql root 密码

mysql_secure_installation #加强安全性,可选

安装PHP

安装环境检测

代码语言:javascript
复制
# 如果之前有其他版本PHP,先卸载
sudo apt-get autoremove php5php5-fpmphp7

配置安装源并且安装

代码语言:javascript
复制
sudo apt-get install software-properties-common python-software-properties
sudo add-apt-repository ppa:ondrej/php && sudo apt-get update
# 安装PHP7.2
sudo apt-get -y install php7.2

安装PHP及常用扩展

代码语言:javascript
复制
sudo apt-get install php7.2-fpm php7.2-mysql php7.2-curl php7.2-json php7.2-mbstring php7.2-xml php7.2-intl -y 

安装其他扩展(按需安装)

代码语言:javascript
复制
sudo apt-get install php7.2-gd
sudo apt-get install php7.2-soap
sudo apt-get install php7.2-gmp
sudo apt-get install php7.2-odbc
sudo apt-get install php7.2-pspell
sudo apt-get install php7.2-bcmath
sudo apt-get install php7.2-enchant
sudo apt-get install php7.2-imap
sudo apt-get install php7.2-ldap
sudo apt-get install php7.2-opcache
sudo apt-get install php7.2-readline
sudo apt-get install php7.2-sqlite3
sudo apt-get install php7.2-xmlrpc
sudo apt-get install php7.2-bz2
sudo apt-get install php7.2-interbase
sudo apt-get install php7.2-pgsql
sudo apt-get install php7.2-recode
sudo apt-get install php7.2-sybase
sudo apt-get install php7.2-xsl
sudo apt-get install php7.2-cgi
sudo apt-get install php7.2-dba
sudo apt-get install php7.2-phpdbg
sudo apt-get install php7.2-snmp
sudo apt-get install php7.2-tidy
sudo apt-get install php7.2-zip

Nginx配置PHP环境

默认配置文件位置:/etc/nginx/sites-availble 文件夹下:

新建一个文件名为自己域名的文件,例如 “debuginn.cn.conf”,文件内容为:

代码语言:javascript
复制
server {
    listen 443;
    server_name www.debuginn.cn;
    root /var/www/html/www.debuginn.cn;
    index index.html index.php;
    
    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;

        # With php7.0-cgi alone:
        # fastcgi_pass 127.0.0.1:9000;
        # With php7.0-fpm:
        fastcgi_pass unix:/run/php/php7.2-fpm.sock;
    }
}

server {
    listen 80;
    server_name www.debuginn.cn;
    return 301 http://$server_name$request_uri;
}

升级HTTPS服务文件配置(非必须)

代码语言:javascript
复制
server {
    listen 443;

    server_name www.debuginn.cn;
    ssl on;
    root /var/www/html/www.debuginn.cn;
    index index.html index.php;
    ssl_certificate  cert/1826431_www.debuginn.cn.pem;
    ssl_certificate_key cert/1826431_www.debuginn.cn.key;
    ssl_session_timeout 5m;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    
    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;

        # With php7.0-cgi alone:
        # fastcgi_pass 127.0.0.1:9000;
        # With php7.0-fpm:
        fastcgi_pass unix:/run/php/php7.2-fpm.sock;
    }
}

server {
    listen 80;
    server_name www.debuginn.cn;

    return 301 https://$server_name$request_uri;
}

添加重定向 (非必须)

http重定向为https

代码语言:javascript
复制
server {
    listen 80;
    server_name www.debuginn.cn;
    return 301 https://$server_name$request_uri;
}

return 301 https://$server_name$request_uri;

连接配置信息
代码语言:javascript
复制
ln -s /etc/nginx/sites-available /etc/nginx/sites-enabled

添加host文件

hosts文件位置在 /etc/hosts 添加一行记录,如下:

代码语言:javascript
复制
127.0.0.1 www.debuginn.cn

OK 配置完毕,希望对你有用哦!

本文链接:https://cloud.tencent.com/developer/article/1557751

本文采用CC BY-NC-SA 3.0 Unported协议进行许可,转载请保留此文章链接

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 升级系统
  • 安装Nginx
  • 安装Mysql
  • 安装PHP
    • 安装环境检测
      • 配置安装源并且安装
        • 安装PHP及常用扩展
          • 安装其他扩展(按需安装)
          • Nginx配置PHP环境
            • 升级HTTPS服务文件配置(非必须)
              • 添加重定向 (非必须)
              • 添加host文件
              相关产品与服务
              云数据库 MySQL
              腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档