如何在 Windows 10 WSL 上安裝 LEMP 堆棧


本教程展示瞭如何在 Windows 10 WSL 上安裝 LEMP 堆棧。對於那些不知道的人,LEMP 是一個免費和開源的 Web 開發平台,用於開發 Web 應用程序。 LEMP 代表 Linux、Nginx (Engine-X)、MariaDB/MySQL 和 PHP,所有這些都是開源的並且可以免費使用。這是支持動態網站和 Web 應用程序的最流行的軟件堆棧。

本文假設您至少具備 Linux 的基本知識,知道如何使用 shell,最重要的是,您將網站託管在自己的 VPS 上。 假設您在 root 帳戶下運行,安裝非常簡單。sudo‘ 獲取 root 權限的命令。 在 Windows 上安裝 LEMP 堆棧的分步說明。 對於 Ubuntu 18.04、16.04 和其他基於 Debian 的發行版,例如 Linux Mint on Linux 2 Subsystem (WSL2),可以遵循相同的步驟。

我需要

  • Windows 2020 年 5 月 10 日 (2004)、Windows 2019 年 5 月 10 日 (1903) 或 Windows 2019 年 11 月 10 日 (1909) 或更高版本。
  • 支持 Hyper-V 虛擬化的計算機。

在 Windows 10 WSL 上安裝 LEMP 堆棧

步驟 1. 為 Linux 2 啟用 Windows 子系統。

在 Windows 上安裝 Linux 發行版之前,您必須首先啟用“Windows Subsystem for Linux”可選功能。通過運行以下命令啟用它:

以管理員身份打開 PowerShell 並運行:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

步驟 2. 啟用虛擬機功能。

在安裝 WSL 2 之前,您需要為您的虛擬機平台啟用可選功能。要使用此功能,您的機器必須具有虛擬化功能。

要在 Windows 10 (2004) 上啟用虛擬機平台,請以管理員身份打開 PowerShell 並運行:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

步驟 3. 將 WSL 2 設置為默認版本。

將 WSL 2 設置為默認值。以管理員身份打開 PowerShell 並運行以下命令將 WSL 2 設置為 WSL 的默認版本。

wsl --set-default-version 2

步驟 4. 安裝 Ubuntu Linux 發行版。

有了 WSL 和必要的虛擬化技術,您所要做的就是從 Microsoft Store 中選擇一個 Linux 發行版並安裝它。 有幾種不同的發行版可用,包括 OpenSUSE、Pengwin、Fedora Remix 和 Alpine Linux。

要在 Windows 10 上安裝 Ubuntu,請打開 Microsoft Store 應用,搜索“Ubuntu 20.04”,然後[入手]單擊按鈕。

步驟 5. 在 Windows WSL 上安裝 Nginx。

要在 Ubuntu 服務器上安裝 Nginx HTTP,請運行以下命令:

sudo apt update
sudo apt install nginx

安裝成功後,運行以下命令停止和啟動 Nginx 服務。

sudo service nginx stop
sudo service nginx start

接下來,通過訪問服務器的 IP 地址來驗證 Web 服務器是否正在運行並且可以訪問。

https://localhost

在 Windows 10 WSL 上安裝 LEMP 堆棧

步驟 6. 在 Windows WSL 上安裝 MariaDB。

通過運行以下命令安裝 MariaDB:

sudo apt install mariadb-server mariadb-client

完成後,運行以下命令停止和啟動 MariaDB 服務,使其始終在服務器啟動時啟動。

sudo service mysql stop
sudo service mysql start

MariaDB 默認不加固。您可以使用以下命令保護 MariaDB mysql_secure_installation 腳本。 您應該仔細閱讀以下每個步驟來設置 root 密碼、刪除匿名用戶、禁止遠程 root 登錄、刪除測試數據庫以及訪問安全的 MariaDB。

mysql_secure_installation

配置如下:

- Set root password? [Y/n] y
- Remove anonymous users? [Y/n] y
- Disallow root login remotely? [Y/n] y
- Remove test database and access to it? [Y/n] y
- Reload privilege tables now? [Y/n] y

使用以下命令登錄數據庫控制台:

mysql -u root -p

步驟 7. 在 Windows 10 WSL 上安裝 PHP。

運行以下命令來安裝支持 WordPress 的 PHP 和模塊。

sudo apt install php-fpm php-common php-mysql php-gmp php-curl php-intl php-mbstring php-xmlrpc php-gd php-xml php-cli php-zip

然後運行以下命令來停止和啟動 PHP7.4 服務。

sudo service php7.4-fpm stop
sudo service php7.4-fpm start

安裝 PHP 和相關模塊後,通過運行以下命令驗證是否安裝了 PHP:

php -v

步驟 8. 測試 PHP

創建一個名為的測試 PHP 文件 phpinfo.php 使用以下命令訪問服務器的默認主目錄:

sudo nano /var/www/html/phpinfo.php

添加以下行:

<?php
phpinfo();
?>

接下來,打開 Nginx 默認配置文件並取消註釋突出顯示的行。

sudo nano /etc/nginx/sites-available/default

取消註釋突出顯示的行並保存文件。

# Default server configuration
#
server {
        listen 80 default_server;
        listen [::]:80 default_server;
        #
        # include snippets/snakeoil.conf;

        root /var/www/html;

        # Add index.php to the list if you are using PHP
        index index.php index.html index.htm index.nginx-debian.html;

        server_name _;

        location / {
                # First attempt to serve request as file, then
                # as directory, then fall back to displaying a 404.
                try_files $uri $uri/ =404;
        }

        # pass PHP scripts to FastCGI server
        #
        location ~ .php$ {
               include snippets/fastcgi-php.conf;
        #
        #       # With php-fpm (or other unix sockets):
                fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
        #       # With php-cgi (or other tcp sockets):
        #       fastcgi_pass 127.0.0.1:9000;
        }

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /.ht {
}

重新啟動 Nginx 服務以使更改生效。

sudo service nginx restart

此處顯示有關已安裝 PHP 的信息。

https://127.0.0.1/info.php or https://localhost/info.php

恭喜! 您已成功安裝 LEMP。感謝您使用本教程在 Ubuntu 20.04 LTS (Focal Fossa) 系統上的 Windows 子系統 Linux 2 (WSL 2) 上安裝最新穩定版本的 LEMP 堆棧。如需更多幫助或有用信息,我們建議您查看 Ubuntu 官方網站.