• [高清组图]环广西赛:参赛车队赛前适应训练 2018-08-31
  • [高清组图]特谢拉复出吴曦失单刀 苏宁0-0平斯威 2018-08-31
  • [高清组图]潜水偶遇座头鲸 亲密互动玩起“水中击掌” 2018-08-31
  • [高清组图]法拉利拍定妆照 维特尔KIMI准备好了 2018-08-31
  • [高清组图]毛剑卿伤退莫雷诺捅射 申花1-0一方 2018-08-31
  • [高清组图]比埃拉双响巴坎布建功 国安5-1富力 2018-08-31
  • [高清组图]武磊世界波胡尔克点射 上港2-0胜申花 2018-08-31
  • [高清组图]武磊2球吕文君建功 上港3-1富力 2018-08-31
  • [高清组图]欧超杯-科斯塔2球 皇马加时赛2-4马竞 2018-08-31
  • [高清组图]格里芬赤膊骑行 休赛期享受二人世界 2018-08-31
  • [视频]【深化改革 重在实效】精准扶贫 四川彝区要拔掉“穷根” 2018-08-31
  • [视频]【深化改革 重在实效】破藩篱促合力 体制创新粘合“两张皮” 2018-08-31
  • [视频]【深化改革 重在实效】激发活力 实现市场准入全程便利化 2018-08-31
  • [视频]【深化改革 重在实效】打通简政放权的“最后一公里” 2018-08-31
  • [视频]【深化改革 重在实效】广东:户籍改革为外来工打开一扇门 2018-08-31
  • 手机版
    你好,游客 登录 注册 搜索
    背景:
    阅读新闻

    Ubuntu 17.10上安装LEMP环境(Nginx,MariaDB,PHP7.1)

    [日期:2017-12-18] 来源:Linux公社  作者:醉落红尘 [字体: ]

    奥门新萄京官方正版 www.arianalance.com 本教程将向您展示如何在Ubuntu 17.10上安装Nginx,MariaDB和PHP7.1(LEMP)。 您可以在VPS(虚拟专用服务器)上或本地Ubuntu 17.10计算机上按照本教程进行操作。 PHP7.1包含在Ubuntu 17.10中,并且比PHP7.0稍微提升了性能。

    第1步:更新软件包

    在安装LEMP环境之前,更新存储库和软件包是一个好的习惯。 在你的Ubuntu 17.10操作系统上运行以下命令。

    sudo apt update
    
    sudo apt upgrade

    第2步:安装Nginx Web服务器

    Nginx是一款高性能的网络服务器,近来非常流行。 它也可以用作反向代理。 输入此命令来安装Nginx Web服务器。

    sudo apt install nginx

    Ubuntu 17.10上安装LEMP环境(Nginx,MariaDB,PHP7.1)

    安装之后,我们可以通过运行以下命令来启动Ubuntu时自动启动Nginx。...

    sudo systemctl enable nginx

    然后用这个命令启动Nginx:

    sudo systemctl start nginx

    现在检查它的状态。

    systemctl status nginx

    输出:

    linuxidc@linuxidc:~$ systemctl status nginx
    ● nginx.service - A high performance web server and a reverse proxy server
      Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: en
      Active: active (running) since Sat 2017-12-16 13:10:08 CST; 1min 6s ago
        Docs: man:nginx(8)
     Main PID: 23788 (nginx)
        Tasks: 5 (limit: 4915)
      CGroup: /system.slice/nginx.service
              ├─23788 nginx: master process /usr/sbin/nginx -g daemon on; master_pr
              ├─23789 nginx: worker process
              ├─23790 nginx: worker process
              ├─23791 nginx: worker process
              └─23792 nginx: worker process

    “enabled”表示启动时自动启动已启用,我们可以看到Nginx正在运行。 注意上面的命令运行后不会立即退出。 您需要按“q”使其退出。

    检查Nginx版本。

    nginx -v

    输出:

    nginx version: nginx/1.12.1 (Ubuntu)

    现在在浏览器地址栏中输入你的Ubuntu 17.10服务器的公共IP地址。 您应该看到“Welcome to Nginx”网页,这意味着Nginx Web服务器运行正常。 如果要在本地Ubuntu 17.10计算机上安装LEMP,请在浏览器地址栏中键入127.0.0.1或localhost。

    Ubuntu 17.10上安装LEMP环境(Nginx,MariaDB,PHP7.1)

    最后,我们需要将www-data(Nginx用户)作为Web根目录的所有者。 默认情况下,它由root用户拥有。

    sudo chown www-data:www-data /usr/share/nginx/html -R

    第3步:安装MariaDB数据库服务器

    MariaDB是MySQL的替代品。 它是由MySQL团队的前成员开发的,他们担心Oracle可能会把MySQL变成一个封闭的产品。 输入以下命令在Ubuntu 17.10上安装MariaDB。

    sudo apt install mariadb-server mariadb-client

    Ubuntu 17.10上安装LEMP环境(Nginx,MariaDB,PHP7.1)

    安装之后,MariaDB服务器应该被自动识别。 使用systemctl来检查它的状态。

    systemctl status mariadb

    输出:

    ● mariadb.service - MariaDB database server
      Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset:
      Active: active (running) since Sat 2017-12-16 13:18:04 CST; 1min 51s ago
     Main PID: 26260 (mysqld)
      Status: "Taking your SQL requests now..."
        Tasks: 26 (limit: 4915)
      CGroup: /system.slice/mariadb.service
              └─26260 /usr/sbin/mysqld

    12月 16 13:18:02 linuxidc systemd[1]: Starting MariaDB database server...
    12月 16 13:18:03 linuxidc mysqld[26260]: 2017-12-16 13:18:03 139963505346816 [No
    12月 16 13:18:04 linuxidc systemd[1]: Started MariaDB database server.
    linuxidc@linuxidc:~$ sudo systemctl start mariadb

    Ubuntu 17.10上安装LEMP环境(Nginx,MariaDB,PHP7.1)

    如果没有运行,请使用以下命令启动它:

    sudo systemctl start mariadb

    要启用MariaDB在引导时自动启动,请运行

    sudo systemctl enable mariadb

    现在运行安装安全脚本。

    sudo mysql_secure_installation

    当它要求您输入MariaDB root密码时,请按下Enter键,因为根密码尚未设置。 然后输入y以设置MariaDB服务器的root密码。

    Ubuntu 17.10上安装LEMP环境(Nginx,MariaDB,PHP7.1)

    接下来,您可以按Enter回答所有剩余的问题,这些问题将删除匿名用户,禁用远程root登录并删除测试数据库。 这一步是MariaDB数据库安全的基本要求。 (请注意,Y是大写,这意味着按Enter键和输入Y是一样的。)

    Ubuntu 17.10上安装LEMP环境(Nginx,MariaDB,PHP7.1)

    默认情况下,Ubuntu上的MaraiDB软件包使用unix_socket对用户登录进行身份验证,这意味着您可以使用操作系统的用户名和密码登录到MariaDB控制台。 所以你可以运行以下命令来登录而不提供MariaDB的root密码。

    sudo mariadb -u root

    要退出,请运行

    exit;

    检查MariaDB服务器版本信息。

    mariadb --version

    Ubuntu 17.10上安装LEMP环境(Nginx,MariaDB,PHP7.1)

    正如你所看到的,我们已经安装了MariaDB 10.1.25。

    mariadb Ver 15.1 Distrib 10.1.25-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

    第4步:安装PHP7.1

    PHP7.1包含在Ubuntu 17.10版本库中,与PHP7.0相比,性能略有提升。 输入以下命令来安装PHP7.1和一些常见的扩展。

    sudo apt install php7.1 php7.1-fpm php7.1-mysql php-common php7.1-cli php7.1-common php7.1-json php7.1-opcache php7.1-readline php7.1-mbstring php7.1-xml php7.1-gd php7.1-curl

    Ubuntu 17.10上安装LEMP环境(Nginx,MariaDB,PHP7.1)

    内容管理系统(CMS)通常需要PHP扩展,比如WordPress。 例如,如果你的安装缺少php7.1-xml,那么你的一些WordPress站点页面可能是空白的,你可以在Nginx错误日志中找到一个错误:

    PHP message: PHP Fatal error:  Uncaught Error: Call to undefined function xml_parser_create()

    安装这些PHP扩展可确保您的CMS顺利运行。 现在开始php7.1-fpm。

    sudo systemctl start php7.1-fpm

    在系统启动时启用自动启动。

    sudo systemctl enable php7.1-fpm

    检查状态:

    systemctl status php7.1-fpm

    示例输出:

    ● php7.1-fpm.service - The PHP 7.1 FastCGI Process Manager
      Loaded: loaded (/lib/systemd/system/php7.1-fpm.service; enabled; vendor prese
      Active: active (running) since Sat 2017-12-16 13:28:21 CST; 2min 54s ago
        Docs: man:php-fpm7.1(8)
     Main PID: 5275 (php-fpm7.1)
      Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/se
        Tasks: 3 (limit: 4915)
      CGroup: /system.slice/php7.1-fpm.service
              ├─5275 php-fpm: master process (/etc/php/7.1/fpm/php-fpm.conf)
              ├─5276 php-fpm: pool www
              └─5277 php-fpm: pool www

    12月 16 13:28:21 linuxidc systemd[1]: Starting The PHP 7.1 FastCGI Process Manag
    12月 16 13:28:21 linuxidc systemd[1]: Started The PHP 7.1 FastCGI Process Manage

    Ubuntu 17.10上安装LEMP环境(Nginx,MariaDB,PHP7.1)

    第5步:创建一个Nginx虚拟主机

    Nginx服务器就像Apache中的一个虚拟主机。 我们不会使用默认的服务器块,因为它不足以运行PHP代码,如果我们修改它,它变得一团糟。 因此,通过运行以下命令来删除启用了站点的目录中的默认符号链接。 (它仍然是可用的/etc/nginx/sites-available/default

    sudo rm /etc/nginx/sites-enabled/default

    然后在/etc/nginx/conf.d/目录下创建一个全新的服务器文件。

    sudo nano /etc/nginx/conf.d/default.conf

    将以下文本粘贴到文件中。 将192.168.1.108替换为您的实际服务器IP地址。

    server {
      listen 80;
      listen [::]:80;
      server_name 192.168.1.108;
      root /usr/share/nginx/html/;
      index index.php index.html index.htm index.nginx-debian.html;
    
      location / {
        try_files $uri $uri/ /index.php;
      }
    
      error_page 404 /404.html;
      error_page 500 502 503 504 /50x.html;
    
      location = /50x.html {
        root /usr/share/nginx/html;
      }
    
      location ~ \.php$ {
        fastcgi_pass unix:/run/php/php7.1-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
        include snippets/fastcgi-php.conf;
      }
    
      location ~ /\.ht {
        deny all;
      }
    }
    

    保存并关闭文件。 然后测试Nginx配置。

    sudo nginx -t

    如果测试成功,请重新加载Nginx。

    sudo systemctl reload nginx

    第6步:测试PHP

    要使用Nginx Web服务器测试PHP-FPM,我们需要在文档根目录下创建一个info.php文件。

    sudo nano /usr/share/nginx/html/info.php

    将以下PHP代码粘贴到文件中。

    <?php phpinfo(); ?>

    保存并关闭文件。 现在在浏览器地址栏中输入server-ip-address/info.php。 用您的实际IP替换sever-ip-address。 如果您在本地计算机上按照本教程进行操作,请输入127.0.0.1/info.php或localhost/info.php。

    你应该看到你的服务器的PHP信息。 这意味着PHP脚本可以使用Nginx Web服务器正常运行。

    Ubuntu 17.10上安装LEMP环境(Nginx,MariaDB,PHP7.1)

    如何安装PHP7.2

    PHP7.2是PHP的最新稳定版本,于2017年11月30日发布,与PHP7.1相比,性能有所提升。 我们可以从Ondrej Sury添加PPA来在Ubuntu 17.10上安装PHP7.2。 那个人也是Certbot PPA的维护者。

    sudo apt install software-properties-common
    
    sudo add-apt-repository ppa:ondrej/php
    
    sudo apt update

    然后我们可以使用下面的命令安装PHP7.2和通用扩展。

    sudo apt install php7.2 php7.2-fpm php7.2-mysql php-common php7.2-cli php7.2-common php7.2-json php7.2-opcache php7.2-readline php7.2-mbstring php7.2-xml php7.2-gd php7.2-curl

    现在启动PHP7.2-FPM。

    sudo systemctl start php7.2-fpm

    在系统启动时启用自动启动。

    sudo systemctl enable php7.2-fpm

    检查其状态:

    systemctl status php7.2-fpm

    在Nginx中使用PHP7.2-FPM

    为了使Nginx使用PHP7.2-FPM而不是PHP7.1-FPM,我们需要编辑Nginx服务器文件。

    sudo nano /etc/nginx/conf.d/default.conf

    找到下面的行。

    fastcgi_pass unix:/run/php/php7.1-fpm.sock;

    将php7.1-fpm更改为php7.2-fpm。

    fastcgi_pass unix:/run/php/php7.2-fpm.sock;

    保存并关闭文件。 然后重新加载Nginx以使更改生效。

    sudo systemctl reload nginx

    如果你刷新server-ip-address/info.php页面,你会看到Nginx正在使用PHP7.2-FPM。

    PHP7.1可以和PHP7.2共存。 如果你不想使用PHP7.1,那么你可以删除它。 请注意,某些Web应用程序可能与NextCloud 12等PHP7.2不兼容。在我的测试中,PHP7.2下WordPress运行良好。

    恭喜! 您已经在Ubuntu 17.10上成功安装了Nginx,MariaDB和PHP7。 为了您的服务器的安全性,您应该立即删除info.php文件以防止窥探。

    sudo rm /usr/share/nginx/html/info.php

    Ubuntu 17.10上安装LEMP环境(Nginx,MariaDB,PHP7.1)

    使用Nginx,MariaDB,PHP7.1(LEMP)在Ubuntu 17.10上安装WordPress  见  http://www.arianalance.com/Linux/2017-12/149582.htm

    OK! 我希望这个教程帮助你在Ubuntu 17.10上安装LEMP环境。 与往常一样,如果你发现这篇文章有用,请分享给更多的朋友。 

    完整PDF文档可以到Linux公社资源站下载:

    ------------------------------------------分割线------------------------------------------

    免费下载地址在 http://linux.linuxidc.com/

    用户名与密码都是奥门新萄京官方正版

    具体下载目录在 /2017年资料/12月/18日/Ubuntu 17.10上安装LEMP环境(Nginx,MariaDB,PHP7.1)/

    下载方法见 http://www.arianalance.com/Linux/2013-07/87684.htm

    ------------------------------------------分割线------------------------------------------

     更多Ubuntu相关信息见Ubuntu 专题页面 http://www.arianalance.com/topicnews.aspx?tid=2

    本文永久更新链接地址http://www.arianalance.com/Linux/2017-12/149581.htm

    linux
    相关资讯       MariaDB  LEMP 
    本文评论   查看全部评论 (3)
    表情: 表情 姓名: 字数

           

    评论声明
    • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
    • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
    • 本站管理人员有权保留或删除其管辖留言中的任意内容
    • 本站有权在网站内转载或引用您的评论
    • 参与本评论即表明您已经阅读并接受上述条款
    第 3 楼
    * Linux会员 发表于 2018/3/26 19:07:13
    回复 cyalias会员 的评论
    您好,我看文章內容一直是LNMP ,您的標題寫的是LEMP ,是否是誤寫呢?
    百度下或者谷歌下LNMP 与 LEMP
    第 2 楼
    * cyalias会员 发表于 2018/3/26 11:15:35
    您好,我看文章內容一直是LNMP ,您的標題寫的是LEMP ,是否是誤寫呢?
    第 1 楼
    * buged会员 发表于 2018/1/22 9:01:02
    后台学习中