Windows Server上安装部署WordPress(4):在 IIS 上部署WordPress站点
在 Windows 操所系统上安装部署 WordPress ,本篇为 Windows Server 上安装部署 WordPress(4):在 IIS上部署 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 Server 2008 R2 IIS 7 为例,中文版以及更高版本的 Windows Server 2012、2016,IIS 8、IIS 10等,安装部署操作都是一样的。
下载 WordPress
- WordPress 英文官方网站:https://wordpress.org,下载页面:https://wordpress.org/download。
- WordPress China 简体中文网站:https://cn.wordpress.org,下载页面:https://cn.wordpress.org/txt-download。
无论你的网站是什么语言,你都可以任意下载英文版或者中文版 WordPress 压缩包,安装完成后,在 WordPress 管理后台可以进行语言切换。简体中文 WordPress 压缩包是基于英文 SVN 源自动构建的。不过简体中文压缩包比英文版程序切换成中文语言的翻译能稍微完整些。
部署 WordPress
1. 首先确保 Windows IIS 上已经开启了 PHP 支持
即已经完成了Windows Server 上安装部署 WordPress(3):在 IIS上安装配置 PHP 支持。
2. 解压 WordPress 压缩包、修改数据库配置
2.1 解压 WordPress 压缩包文件 wordpress-x.x.x.zip 到 D:\WebSites\demo.wordpress.com。
2.2 在 D:\WebSites\demo.wordpress.com 根目录,重命名 wp-config-sample.php 文件为 wp-config.php。
2.3 用文本编辑器打开 wp-config.php 文件,修改 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');
3. 在 MySQL 服务器上创建 WordPress 数据库
你可以用命令创建 MySQL 数据库,这里用 Workbench 客户端工具可视化操作。
3.1 打开 MySQL Workbench,连接登录 MySQL Server。
3.2 在 Workbench 左侧 Schemas 区域,右键 Create Schema…,创建名称为 wordpressdemo 的数据库,点击 Apply 按钮。
3.3 出现 Review the SQL Script to be Applied on the Database 对话框界面,不用编辑脚本,直接点击 Apply 按钮,然后点击 Finish。
3.4 创建数据库完成,在左侧可以看到新创建的数据库 wordpressdemo。见下图绿色标记。
3.5 击左侧 Management/Users and Privileges,可以添加一个用户,如demodbo。不建议直接用 Root 用户。
3.6 给这个用户赋予 wordpressdemo 数据库的操作访问权限。
4. 在 IIS 上添加部署 WordPress 网站
4.1 打开 IIS。
4.2 右键 Sites(站点),选择 Add Web Site…(添加网站)。
4.3 Add Web Site 添加网站。
- Site name 网站名称:给新站点起个名字。
- Physical Path 物理路径:D:\WebSites\demo.wordpress.com。
- Port 端口:根据自己情况输入。
- Host name 主机头:域名。
4.4 选中 demo.wordpress.com 站点,在 Features View 双击 Default Document。
4.5 在 Default Document 默认文档界面,把已经有的默认页面文件名全部删除(不删也是可以的,洁癖有强迫症的话就删掉),然后添加一个 index.php。你可以选中机器名,在整个 IIS 服务器级别的 Default Document 默认文档里添加一个 index.php,这样新建的站点都会继承,不用每建一个 WordPress 站点设置一次默认页面文档。
4.6 上面第 4.3 步创建了一个 demo.wordpress.com 的 Application Pool 应用程序池,可以双击打开,把 .NET Framework version 改为 No Managed Code 非托管代码,因为执行的是 PHP CGI。不过此步骤可以忽略,.php 不会执行到 .NET Framework 上去的。
5. 浏览访问 WordPress 站点,进行首次初始化安装配置
5.1 浏览器访问 http://demo.wordpress.com,或者 http://localhost:端口号。如果出现如下界面,恭喜你,已经成功了。选择站点语言,点击 Continue 进行 WordPress 初始化安装。
5.2 Welcome 欢迎:输入 Site Title 站点标题、用户名、密码、Email,点击 Install WordPress 按钮。
5.3 安装完成,点击 Log In。
5.4.输入用户名、密码登录 WordPress 管理后台。
5.5 登录成功,后台管理控制面板。
5.6 浏览器再次输入http://demo.wordpress.com,或者 http://localhost:端口号。
结束,Windows IIS 上部署 WordPress 完成。
你好,这一系列针对Windows Server的IIS搭建WordPress的文章,确实让我受益匪浅,辛苦博主了!但是在操作第5步时,问题出现了(在对照整个教程操作时遇到的第一个问题),出现了开头是“PHP Fatal error: Uncaught Error: Call to undefined function mysql_connetc() in X:\xxx\wp-incudes\wp-db.php:1564”的系列报错,直接导致卡在这里,无法使用WordPress。环境:Windows Server 2008 R2,PHP 7.2.12,MySQL Server 8.0。
你好,之前反映的“PHP Fatal error: Uncaught Error: Call to undefined function mysql_connetc() in X:\xxx\wp-incudes\wp-db.php:1564”的系列报错已解决,是因为我没有把PHP安装在默认目录,所以要去取消php.ini里“extension_dir=ext”的注释,这样就能用了。但是新的问题来了,现在是MySQL 8.0了,数据库账号的密码说是用sha2什么的方式加密了,我在wp-config.php里打的明文密码用不了,提示“建立数据库链接时出错”,实在是无奈了。
MySQL 8.0带来的caching_sha2_password问题已解决,按照Stack Overflow上的回答修改my.ini就差不多了。打扰博主了,一共留言3次。
解决了就好。
没有及时回复,实在抱歉!
如果重命名 wp-config-sample.php 文件为 wp-config.php并修改了的话,就无法打开安装界面,如果不修改,那么到输完数据库信息后,点下一步就会报500错误,请问这是什么情况呢,感谢感谢
修改的话,你看看是不是信息改的不对。不修改直接安装的话,你看看是不是没有权限,IUSR、IIS_user(这两个账户名字记不清了)。
;extension=bz2
extension=curl
;extension=fileinfo
;extension=gd2
;extension=gettext
;extension=gmp
;extension=intl
;extension=imap
;extension=interbase
;extension=ldap
;extension=mbstring
;extension=exif ; Must be after mbstring as it depends on it
extension=mysqli
修改的话是不是就是把这里的两个扩展开启?
我好像没开几个:
cgi.force_redirect = 0
fastcgi.impersonate = 1
;去掉前面分号”;”注释,开启扩展模块
extension=curl
extension=mysqli
我也遇到这个问题了,是network Service 账户
PS:超级感谢您的这些教程。您这个网站回复是什么字体,好漂亮。
就是修改php的扩展哪里,会不会影响呢
不会。
要先把mysql数据库创建好,然后再安装Wordpress。
数据库是创建好了的,昨天整了一下午没搞定,今天再试试……
都按照教程然后提示是冰冷的无法访问此页面。。。。死在第五步,甚至不知道出了什么问题
赋予文件夹完全控制权限,用户组 network service
完全不知道是哪里出了问题
受益匪浅,感谢博主,自己也建了一个小站记录记录生活。
我试了下可以 成功了 录了个视频 B站搜索
Windows Server 2012 iis mysql php 安装部署 WordPress