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

本文假設您至少具有 Linux 的基本知識,知道如何使用 shell,並且最重要的是,將您的網站託管在您的 VPS 上。安裝非常簡單,假設您在 root 帳戶下運行。如果沒有,您需要添加一個’。sudo‘獲取root權限的命令。 介紹在 Windows 上逐步安裝 LEMP 堆棧。 對於其他基於 Debian 的發行版,例如 Ubuntu 18.04、16.04 和 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. 為 Linux2 啟用 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. 將 WSL2 設置為默認版本。

將 WSL2 設置為默認值。然後以管理員身份打開 PowerShell 並運行以下命令將 WSL2 設置為 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 Subsystem for Linux 2 (WSL 2) 上安裝最新穩定版本的 LEMP 堆棧。我們鼓勵您查看更多幫助和有用信息。 Ubuntu官網..