Apache

操作场景

本文档将指导您如何在已安装 Apache 服务与 PHP 的 Windows Server 服务器上安装部署 Discuz! Q。

  • 若您已知晓如何安装部署 Discuz! Q,您可以直接单击此处 (opens new window)下载 Discuz! Q 进行安装部署。
  • 本文档以 Apache 2.4 、PHP 7.3.1 版本为例。系统为 Windows Server 2016 。

前提条件

  • 服务器已安装的 PHP 版本为 7.2 及以上(暂不推荐使用7.4),数据库使用 MySQL 5.7.9 版本以上或 MariaDB 10.2 以上。
  • 已成功登录 Windows Server 服务器。

操作步骤

步骤一:配置PHP

安装扩展

  • Discuz! Q 依赖于BCMath``Ctype``Curl``Dom``Fileinfo``GD``JSON``Mbstring``Exif``OpenSSL``PDO``PDO_mysql``Tokenizer``XML``Zip扩展插件,在 PHP 中需开启以上扩展。
  • 以下操作因为系统版本,软件版本的不同,操作上会有所差异,请根据您的具体情况进行开启对应函数,以下操作仅提供示例。

开启 exif 扩展:

  1. 您可以使用文本编辑器,打开php.ini文件。
  2. 编辑php.ini 文件,去掉以下字段前面的;分号,并保存php.ini 文件。如下:
  1. extension=exif
  2. exif.encode_unicode = ISO-8859-15
  3. exif.decode_unicode_motorola = UCS-2BE
  4. exif.decode_unicode_intel = UCS-2LE
  5. exif.encode_jis =
  6. exif.decode_jis_motorola = JIS
  7. exif.decode_jis_intel = JIS=
  1. 重启 Apache 与 PHP 服务。

重启后如果扩展不生效,请确保php 目录下ext 文件夹具备对应扩展文件,extension_dir指向ext文件夹并已去掉字段前; 分号。如:extension_dir = "C:\Program Files\php-7.3.1\ext"

启用 PHP 函数

TIP

  • Discuz!Q 依赖于symlinkreadlinkputenvrealpathshell_exec 函数,在PHP中需开启以上函数。
  • 以下操作因为系统版本,软件版本的不同,操作上和命令上会有所差异,请根据您的具体情况开启对应函数 ,以下操作仅提供示例。
  1. 打开并编辑php.ini文件。查找disable_functions字段,并删除禁用掉的symlinkreadlinkputenvrealpathshell_exec 函数。如下所示:
  1. disable_functions = passthru,exec,system,chroot,chgrp,chown,shell_exec,proc_open,proc_get_status,popen,ini_alter,ini_restore,dl,openlog,syslog,popepassthru,stream_socket_server

如果disable_functions字段中已删除对应函数,可忽略此操作。

  1. 保存php.ini文件。重启 Apache 与 PHP 服务。

步骤二:配置 Apache

TIP

  • Discuz!Q 依赖于mod_rewrit 模块。请确保已经启用mod_rewrite,以下操作将指导您启动mod_rewrite
  • 以下操作因为系统版本,软件版本的不同,操作上和命令上会有所差异,请根据您的具体情况开启mod_rewrite ,以下操作仅提供示例。

启用 mod_rewrite

  1. 可以在conf 目录的httpd.conf 文件中,查找以下字段,并去掉字段前# 符号。如下所示:
  1. LoadModule rewrite_module modules/mod_rewrite.so
  1. 定位到<directory /> 字段,并修改内容为如下内容:
  1. <directory />
  2. Options All
  3. AllowOverride All
  4. DirectoryIndex index.php index.html
  5. </directory>
  1. 保存php.ini文件并重启 Apache 服务。

步骤三:下载并解压 Discuz!Q 安装包

  1. 您可以通过服务器中的浏览器使用下载地址https://www.dismall.com/thread-19012-1-1.html 下载 Discuz!Q 安装包,并解压至于网站目录。如下图所示:

Windows 主机安装 - 图1

该网站目录仅提供示例,请根据自己的环境与实际需求将 Discuz!Q 安装包解压至对应文件夹,一般为www文件夹。该网站目录仅提供示例,请根据自己的环境与实际需求将 Discuz!Q 安装包解压至对应文件夹,一般为www文件夹。

步骤四:配置运行目录

  • 完成以上配置后,您还需将运行目录设置为 Discuz!Q 网站文件的子目录的public 文件夹。
  • 以下public 目录路径,仅提供示例,请根据自己的实际情况进行填写。

打开并编辑php.ini文件。查找DocumentRoot字段,将运行目录设置为 Discuz!Q 网站文件的子目录的public文件夹。如下所示:

  1. DocumentRoot "C:\Program Files\www\public"

步骤五:初始化安装 Discuz! Q

  1. 打开本地浏览器,访问http://<绑定网站的域名名称>/dl.php 。如下图所示:

Windows 主机安装 - 图2

  1. 单击【下一步】,Discuz! Q 将自行进行站点检查。如有报错等问题,可参考常见问题 进行排查处理。
  2. Discuz! Q 检查完成后,需配置网站相关信息。如下图所示:

Windows 主机安装 - 图3

  • 站点名称:请输入您的站点名称信息,可自定义。
  • MySQL 服务器地址:请输入您的 MySQL 服务器地址。
  • 数据库名称:请输入您的数据库名称。
  • MySQL 用户名:请输入您的数据库用户名。
  • MySQL 密码:请输入您的数据库密码。
  • 表前缀:可选,可自定义数据库表前缀名称。默认不填。
  • 设置管理员用户名:请输入您 Discuz! Q 站点的管理员用户名。
  • 设置管理员密码:请输入您 Discuz! Q 站点的管理员密码。
  • 管理员密码确认:请再次输入您 Discuz! Q 站点的管理员密码。
  1. 单击【下一步】。即可完成 DIscuz!Q 的安装部署。

步骤七:添加计划任务

为保证 DIscuz!Q 站点功能的正常使用。请添加一个每分钟运行一次的计划任务,脚本内容为以下命令。其中的PHP文件目录网站主目录 请按自己的实际情况做相应调整。

  1. c:\<PHP文件目录>\php.exe c:\<网站主目录>\disco schedule:run