Windows IIS 上安裝部署 WordPress 網站快速簡要教程
關於在 Windows Server 上部署 WordPress 站點,前面按步驟寫了好幾篇文章,截了好多圖。自己感覺有點啰嗦,寫的太多了,好像在 Windows 上部署一個 WordPress 站點有多么復雜似的,所以本文干脆再整理一篇稍微簡化一點的。如果想看啰嗦詳細的,請訪問下面這些鏈接:
- Windows Server 上安裝部署 WordPress(1):概要
- Windows Server 上安裝部署 WordPress(2):安裝 MySQL
- Windows Server 上安裝部署 WordPress(3):在 IIS上安裝配置 PHP 支持
- Windows Server 上安裝部署 WordPress(4):在 IIS上部署 WordPress 站點
- Windows Server 上安裝部署 WordPress(5):IIS 下 WordPress 站點的固定 URL 鏈接格式設置
Windows 上可以完美運行 PHP WordPress 站點,Windows 上也可以安裝運行 MySQL,PHP、MySQL 本來就是跨平台的。微軟也對 IIS 運行 PHP 程序有很好的支持,可以看這個鏈接:https://php.iis.net。任何支持 PHP 和MySQL 的服務器都可以用來運行 WordPress。
WordPress.org 官方推薦服務器配置,WordPress 網站主機:
- PHP 5.2 或更高版本
- MySQL 5.0.15 或更高版本
環境
- 操作系統:安裝有 IIS 的任何 Windows 機器。請忽略老掉牙的 Windows XP、Windows Server 2003,雖然也可以跑 WordPress。
- PHP:WordPress 是 PHP 語言開發的網站程序。PHP 可以在 IIS 上以 FastCGI 方式運行 。
- MySQL:WordPress 數據存儲使用的是 MySQL 數據庫,所以需要一台 MySQL 數據庫服務器或者自行安裝。
MySQL 數據庫
如果已經有現成的 MySQL 數據庫服務器,請忽略安裝步驟。無論是 Linux 或者 Windows ,能連接上就行,直接創建一個空的數據庫。運行 WordPress 站點,個人建議使用 Oracle MySQL 官方版本,不要使用 MariaDB 等分支版本。我起初用的就是 MariaDB,運行 WordPress 主程序沒問題,但是有些主題、插件會報錯。
下載 MySQL for Windows 安裝文件
- Oracle MySQL 官方下載頁面: https://dev.mysql.com/downloads/installer。
- Windows 上安裝運行 MySQL,需要有 Microsoft Visual C++ 可再發行組件包(Visual C++ Redistributable Packages for Visual Studio XXXX)。目前最新版 MySQL 5.7.20,需要的是 Visual C++ Redistributable for Visual Studio 2013。Microsoft Visual C++ 可再發行組件各版本下載鏈接:
- Visual C++ Redistributable for Visual Studio 2012 Update 4 x86 or x64
- Visual C++ Redistributable for Visual Studio 2013 x86 or x64
- Visual C++ Redistributable for Visual Studio 2015 x86 or x64
- Visual C++ Redistributable for Visual Studio 2017: x64, x86
安裝 MySQL
服務器上只需要安裝 MySQL Server 就可以了, 如果要在服務器上操作 MySQL 數據庫,建議把 MySQL Workbench 客戶端工具也裝上。在運行 MySQL Installer 前,可以先確保機器上已經安裝有 Microsoft Visual C++ for Visual Studio 可再發行組件包;或者你也可以像我一樣,直接運行 MySQL Installer,讓它自己檢測,如果提示缺少 VC++ ,則退出 MySQL Installer,再手動安裝 VC++ 包。
安裝Microsoft Visual C++ for Visual Studio 可再發行組件包:
安裝 MySQL Server 和 MySQL Workbench:
創建一個 WordPress MySQL 數據庫
你可以用命令創建 MySQL 數據庫,這里用 Workbench 客戶端工具可視化操作。
IIS 配置 PHP 支持
下載 PHP for Windows 安裝文件
- PHP for Windows 官方下載頁面:http://windows.php.net/download。
- PHP 也需要 Microsoft Visual C++ Redistributable for Visual Studio 可再發行組件包,且上述 PHP for Windows 頁面有列 Visual C++ 可在發行組件包各版本下載地址。
- PHP 版本:根據操作系統和 Web 服務器(IIS 或者 Apache)的不同,要下載相應的 PHP 文件,如下圖下載頁面有詳細說明:
- IIS:下載 VC15 x86 Non Thread Safe 或者 VC15 x64 Non Thread Safe 版本。
- Apache:下載 VC15 x86 Thread Safe 或者 VC15 x64 Thread Safe 版本。
- PHP 5.x or 7.x:
安裝 PHP
1. 直接解壓下載下來的 PHP zip包件,比如 C 盤根目錄 C:\PHP。
2. 打開 C:\PHP 目錄,復制 php.ini-production 文件,去掉“-production”重命名為 php.ini。
3. 修改 php.ini 如下設置:
- cgi.force_redirect = 0
- fastcgi.impersonate = 1
- ;去掉前面分號";"注釋,開啟擴展模塊
- extension=curl
- extension=mysqli
確保 IIS 已開啟 CGI 模塊選項
在 IIS 上添加 PHP FastCGI 模塊支持
在 IIS FastCGI 設置(FastCGI Setting)界面,右鍵/編輯或者雙擊 C:\PHP\php-cgi.exe,設置監視 php.ini 文件改動:
測試 PHP 是否安裝成功
在 IIS 上已存在的站點(或者新建一個站點)目錄下新建一個 test.php文件,文件內容輸入:<?php phpinfo(); ?>。然后在瀏覽器里訪問這個文件地址。如果如下圖,則說明 PHP 安裝配置 OK。
安裝 IIS URL Rewrite 模塊
如果你想 WordPress 站點有漂亮的對用戶和搜索引擎友好的 URL 鏈接格式,需要確保 IIS 安裝了 URL Rewrite 模塊,否則 會報 404 錯誤。
下載 IIS URL Rewrite 模塊:
- IIS Url Rewrite 模塊微軟官方下載頁面地址: https://www.iis.net/downloads/microsoft/url-rewrite。
- 支持的 IIS 版本:IIS 7, IIS 7.5, IIS 8, IIS 8.5, IIS 10。–目前最新版本的 IIS 是 10。
安裝完成后,在 IIS 的 Features View(功能視圖),可以看到一個 URL Rewrite:
IIS 上添加部署 WordPress 網站
下載 WordPress
- WordPress 英文官方網站:https://wordpress.org,下載頁面:https://wordpress.org/download。
- WordPress China 簡體中文網站:https://cn.wordpress.org,下載頁面:https://cn.wordpress.org/txt-download。
添加 IIS 網站
1. 解壓下載好的 WordPress 壓縮包,如:D:\WebSites\demo.wordpress.com。
2. 在 WordPress 程序文件夾根目錄,找到 wp-config-sample.php文件,並重命名為 wp-config.php。
3. 用文本編輯器打開 wp-config.php 文件,修改 MySQL 數據庫連接信息(上述 MySQL 步驟創建好的空數據庫):
- // ** MySQL settings - You can get this info from your web host ** //
- /** The name of the database for WordPress */
- /*數據庫名稱*/
- define('DB_NAME', 'wordpressdemo');
- /** MySQL database username */
- /*登錄用戶名, 須有上述數據庫操作訪問權限*/
- define('DB_USER', 'demodbo');
- /** MySQL database password */
- /*數據庫用戶登錄密碼*/
- define('DB_PASSWORD', 'demoPassword');
- /** MySQL hostname */
- /** 數據庫服務器名或者IP,如果 MySQL 端口不是默認的3306,則格式為 hostname:端口號, 如: localhost:3307 */
- define('DB_HOST', 'localhost');
4. 和一般普通網站(ASP.NET/MVC或者其它類型)的添加方式一樣,在IIS 上添加一個站點,指向 WordPress 程序文件所在目錄。
5. 給這個這點添加一個默認文檔 index.php。可以把 Default.htm、default.aspx、等其它默認頁面文檔都刪除了,只保留 index.php。
6. 瀏覽器訪問這個網站,會自動進行第一次初始化安裝:
7. 安裝完成后,登錄進入 WordPress 管理后台:
設置漂亮友好的固定鏈接格式
一般網站采用的比較友好的鏈接格式,如:
- #1 包含分類目錄、Url 別名:
- https://blog.codeusing.com/category/post-name/
- #2 只包含 Url 別名
- https://blog.codeusing.com/post-name
- #3 包含年、月、日、Url 別名:
- http://example.com/year/month/day/post-name
如果你也想要這種格式:
1. 安裝了 IIS URL Rewrite 模塊。
2. 在 WordPress 網站根目錄 web.config(沒有的話創建一個) 文件里添加了 URL 路由重寫規則:
- <rewrite>
- <rules>
- <rule name="Main Rule" stopProcessing="true">
- <match url=".*" />
- <conditions logicalGrouping="MatchAll">
- <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
- <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
- </conditions>
- <action type="Rewrite" url="index.php/{R:0}" />
- </rule>
- <rule name="WordPress: demo.wordpress.com" patternSyntax="Wildcard">
- <match url="*" />
- <conditions>
- <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
- <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
- </conditions>
- <action type="Rewrite" url="index.php" />
- </rule>
- </rules>
- </rewrite>
3. 在 WordPress 固定鏈接設置界面進行配置:
4. 瀏覽測試前台頁面:
結束,搞定!基本安裝就是這個樣子的,后續使用過程中肯定還會有一大堆新的問題的。