Windows從零安裝WordPress
在Linux中,可以用Linux運維工具配合docker很便捷的安裝並配置MySQL、nginx、php、WordPress,但是Windows伺服器中,我還沒有發現類似的皮膚,就嘗試學習用最原始的方法進行安裝。
教程環境:Windows Server 2022
準備工作
-
Microsoft Visual C++ Redistributable Package
-
MySQL
-
nginx
-
php
-
WordPress or WordPress(CN) (如果需要中文版,直接從第二個網址進行下載。本教程以英文版為例,步驟一致,對應即可)
-
RunHiddenConsole
Microsoft Visual C++ Redistributable Package
Microsoft Visual C++ Redistributable Package為MySQL依賴的環境
直接同意並安裝即可。
MySQL
MySQL資料庫為WordPress必須的環境之一,提供資料存放服務
開啟安裝包,選擇Server only
,後續預設繼續即可
image
輸入的密碼為資料庫root
管理使用者的密碼,請牢記
nginx
nginx在我們建站的過程中起到作為Web 伺服器的用處,負責將網頁內容對應至網址埠
直接將下載的安裝包解壓即可,我解壓在C:\server\nginx
,雙擊目錄的nginx.exe
即執行程式。
瀏覽網址http://127.0.0.1,出現以下內容則執行正常
停止nginx
WIN + R
輸入cmd
進入命令列,定位至資料夾(C:\server\nginx
)並停止應用服務
cd C:\server\nginx
nginx.exe -s stop
php
php為WordPress必須的環境之一,php是為Web開發提供的一種簡單、高效、靈活的程式語言,類似於html,wordpress就是用php進行編寫的
直接解壓壓縮包至C:\server\php
,後續進行配置
WordPress
WordPress本身,提供了基礎的建立頁面,建立文章功能,可以安裝豐富外掛
直接解壓壓縮包至C:\server\wordpress
RunHiddenConsole
RunHiddenConsole使得命令得以在後臺執行,而不會因為終端關閉而停止
直接將壓縮包中x64
中的RunHiddenConsole.exe
解壓放至C:\server
資料夾
最終C:\server
資料夾有以下下內容(位置只是根據個人偏好選擇,任意位置都可以)
配置
注意:下面配置的地址均更改為實際安裝位置,如果安裝位置和我一樣,則直接複製貼上即可
1. MySQL新增資料庫
在開始
選單中找到MySQL 8.0 Command Line Client
輸入剛才的root
密碼並回車,進入MySQL命令列,輸入以下命令建立名為wordpress
的資料庫
CREATE DATABASE wordpress;
2. nginx配置
nginx的配置檔案是nginx\conf
裡的nginx.conf
,可以用記事本開啟。找到第35行開始的server
-
location /
(第43行)root
:wordpress
所在位置index
: 新增index.php
,因為wordpress使用php編寫location / { root C:/server/wordpress; # 設定為wordpress的位置 index index.html index.htm index.php; # 新增index.php }
-
location ~ \.php$
(第65行)首先需要將這幾行前的
#
刪掉以啟用phproot
:wordpress
所在位置fastcgi_param
: 直接修改為$document_root$fastcgi_script_name
location ~ \.php$ { root C:/server/wordpress; # 設定為wordpress的位置 fastcgi_pass http://127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
以下為修改好的配置,如果前面安裝位置和我相同,則可以直接複製替換server
部分。
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root C:/server/wordpress; # 設定為wordpress的位置
index index.html index.htm index.php; # 新增index.php
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
# proxy the PHP scripts to Apache listening on http://127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on http://127.0.0.1:9000
#
location ~ \.php$ {
root C:/server/wordpress; # 設定為wordpress的位置
fastcgi_pass http://127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; # 修改為$document_root$fastcgi_script_name;
include fastcgi_params;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
3. php配置
進入php資料夾,找到php.ini-development
配置檔案並複製為php.ini
。
-
搜尋
extension_dir
,找到第778行的內容;extension_dir = "ext"
刪去最開始的
;
,將ext
改為php中的真實路徑extension_dir = "C:\server\php\ext"
-
搜尋
cgi.fix_pathinfo
,找到第815行內容;cgi.fix_pathinfo=1
刪去
;
cgi.fix_pathinfo=1
-
新增擴充套件
php_mysqli.dll
因為配置檔案中沒有找到該項,於是我們自行新增至任意位置即可,為了方便管理,我放在
extension
項的末尾(第975行)。直接加入以下兩行並儲存;mysql extension extension=php_mysqli.dll
4. 啟動nginx和php
win + r
輸入cmd
開啟命令提示行,分別輸入以下兩行
start C:\server\nginx\nginx.exe
C:\server\php\php-cgi.exe -b http://127.0.0.1:9000 -c C:\server\php\php.ini
注意:執行第二行之後會卡住不動,不要關閉視窗,保持即可。
接下來在瀏覽器中訪問http://127.0.0.1
可以發現成功進入wordpress的setup-config
頁面,至此啟動成功。
設定批處理檔案
剛才的視窗是不能關的,一旦關閉,php-cgi就會關閉,就不能解析php檔案。我們可以用批處理來開啟/關閉nginx和php-cgi。這裡用到RunHiddenConsole(用來隱藏CMD命令窗),把RunHiddenConsole.exe和批處理檔案放在同一級目錄,便不需要新增全域性環境變數。
- start.bat
@echo off
set PHP_FCGI_MAX_REQUESTS = 1000
echo Starting PHP FastCGI...
rem 分別為php-cgi.exe和php.ini的路徑 ,-b,-c等引數必須保留且注意前後空格
RunHiddenConsole C:\server\php\php-cgi.exe -b http://127.0.0.1:9000 -c C:\server\php\php.ini
echo Starting nginx...
rem 填寫nginx.exe實際位置
RunHiddenConsole C:\server\nginx\nginx.exe
exit
- stop.bat
@echo off
echo Stopping nginx...
taskkill /F /IM nginx.exe > nul
echo Stopping PHP FastCGI...
taskkill /F /IM php-cgi.exe > nul
exit
雙擊執行start.bat
和stop.bat
便可以直接啟動/停止nginx和php服務。
3. 初始化WordPerss
-
瀏覽器訪問http://127.0.0.1,進入之前看到的介面,點選
Let's go
-
填寫選項:
Database name
: wordpress(第一步:MySQL新增資料庫中填寫的資料庫名稱)Username
: root(管理員帳號,預設)Password
: 資料庫使用者密碼(安裝資料庫時填寫的密碼)Database Host
: localhost(保持預設)Table Prefix
: wp_(保持預設) -
點選
submit
,如果成功,則會出現以下頁面,點選Run the installation
繼續安裝;如果出現Error,說明填寫有誤,請仔細檢查。 -
填寫資訊:
Site Title
: 網站標題Username
: 網站管理使用者名稱Password
: 密碼(牢記)Your Email
: 你的郵箱Search engine visibility
: 是否被搜尋引擎發現(取決於搜尋引擎是否遵守)點選
Install WordPress
進入下一步 -
出現下面頁面,說明網站設定成功。
-
訪問WordPress主頁:http://127.0.0.1
-
進入WordPress管理介面:http://127.0.0.1/wp-admin
先填寫賬號密碼進行登入
登入之後進入管理介面
Reference:
-
windows下搭建nginx+php開發環境(by 苦逼成長印記)-cnblog
-
如何更改Wordpress語言為中文(by 木魚在遊)-華為開發者聯盟