安装
#服务器要求
Discuz! Q 对系统有一些要求,请确保你的服务器满足以下要求:
- MySQL >= 5.7
- PHP >= 7.2.0
- BCMath PHP 扩展
- Ctype PHP 扩展
- Curl PHP 扩展
- Dom PHP 扩展
- Fileinfo PHP 扩展
- GD PHP 扩展
- JSON PHP 扩展
- Mbstring PHP 扩展
- Exif PHP 扩展
- OpenSSL PHP 扩展
- PDO 与 PDO_mysql PHP 扩展
- Tokenizer PHP 扩展
- XML PHP 扩展
- Zip PHP 扩展 (使用Discuz! Q安装工具时需要)
#下载 Discuz! Q
#推荐方法: 使用腾讯云镜像安装
基于官方提供的腾讯云镜像,可快速安装,不再需要自己修改配置。请点击这里 打开官方镜像,点击『免费使用』,基于镜像创建CVM。注意以下事项:
- 操作系统的root密码在创建云主机的过程中设置
- 会自动下载并完成Discuz! Q的安装
- 宝塔面板使用了 8888 端口
- 请登录云主机,执行命令
dzqinfo
,查看Discuz! Q和宝塔的管理员用户名与密码 - 因为要下载Discuz! Q,服务器必须能访问公网,如果遇到 dl.php 找不到的情况,请确认自己的服务器能访问公网后,重启服务器
- 如果宝塔或安装工具无法访问,请检查自己的 安全组设置
- 如果要修改Discuz! Q的配置域名,请参考安装常见问题
#方法二:使用Discuz! Q安装工具
请在你的Web服务器上安装并配置好PHP,在要安装 Discuz! Q
的地方建一个 discuz
目录,下面再建一个 public
目录。将站点的根目录指向刚建立好的 public
目录。
然后请点击这里 下载安装工具,将下载后的文件放入 public
目录。最终的目录结构类似以下:
/wwwroot
└── discuz
└── public <-- 站点根目录
└──dl.php
访问 http://<站点域名>/dl.php
,并按提示操作。下载工具会检查所有相关的环境要求是否满足要求,请在每一步解决完所有的错误后,再进行下一步操作。按下载工具向导一步一步完成后,Discuz! Q
就会完成安装。
#方法三:使用composer在线下载
使用这种方法安装之前,请确保你的机器已经安装了Composer 。
请在你需要安装Discuz! Q的地方通过命令行运行以下命令,这个命令运行完之后,会在当前目录下创建一个名叫 discuz
的子目录。
composer create-project --prefer-dist qcloud/discuz --repository=https://cloud.discuz.chat
composer会自动下载Discuz! Q和依赖的所有第三方库。由于composer自身的原因,在下载第三方库时可能会比较慢,也有可能会在下载一些国外资源的时候出错,如果遇到这样的情况,请参考安装常见问题
源代码下载完成后,请按本文档完成接下来的Web服务器配置、进入安装界面、配置计划任务等工作。
#方法四:基于Docker容器运行Discuz! Q
首先确保你的服务器安装好了 docker-ce
运行环境,如果还没有下载,腾讯云提供了镜像。
直接启动Discuz! Q
docker run -d -p 80:80 -p 443:443 registry.discuz.chat/tencent/dzq:latest
docker会自动下载并运行最新版本的Discuz! Q。此容器基于 Ubuntu 18.04
,其中安装了 Nginx 1.14
, PHP 7.2
, MySQL 5.7
和所有的相关依赖,并且已经完成了Web服务器配置和计划任务配置,可直接进入安装界面进行初始化。数据库 root
用户的密码已被设置为 root
。
注意
以上命令用于快速启动并测试Discuz! Q,数据库和站点数据都将保存在容器内部,容器被删除将会造成数据丢失。
如果您想基于容器长期运行Discuz! Q,建议将数据库和站点数据保存于容器外部,请参考容器的更多配置说明进行配置
#Web服务器配置
Web服务器推荐启用SSL(https协议),如果没有SSL证书,可以到这里申请。
#Nginx
如果你使用 Nginx ,除了PHP的相关配置之外,还要在你的站点配置中加入以下配置,建议(非强制)开启 https
和 http2
,将root目录指向 discuz/public
目录,同时一定要配置 index
和 location /
,将所有的请求将引导至 index.php
。
具体配置时,请注意对照检查这样一些地方:
#root 配置
确认 root
指向了安装好的 public
目录,以下是示例,请按自己的实际配置设置
root /home/www/discuz/public;
#index 配置
确保 index 的第一项是 index.php
,也可以只保留 index.php
,以下为示例
index index.php;
#location 配置
确保 location /
按如下配置,如果原来有配置,请替换成如下配置:
location / {
try_files $uri $uri/ /index.php?$query_string;
}
#Apache
Apache要在配置中,将 DocumentRoot
指向 discuz/public
目录,同时通过重写规则,将所有请求转发给 index.php
处理。
在 discuz/public
下创建 .htaccess
文件(设置伪静态规则),内容如下(此配置依赖 mod_rewrite
,请先检查自己的Apache是否启用了 mod_rewrite
模块):
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
SetEnvIf Authorization .+ HTTP_AUTHORIZATION=$0
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php?%{QUERY_STRING} [L,QSA,PT]
RewriteRule ^$ index.php?%{QUERY_STRING} [L,QSA,PT]
</IfModule>
#通过站点启动安装
在进入安装界面之前,请确保 php-fpm
的运行用户,拥有 config
, storage
和 public
三个目录的写权限。
部署好服务器环境后,打开 https://{您的域名}/install
进入安装界面,按照页面提示进行安装。
注意
请一定要访问外部用户将要访问的协议( http://
或 https://
) 加 域名 加 /install
进行安装,否则会导致自动获取的站点URL配置不正确,站点工作不正常。
#进入后台
安装完成后,请访问 http://{您的域名}/admin
进入后台,输入在安装的时候设置的管理员账号和密码,进行管理与配置。
#计划任务
目前统计财务报表需要用到系统计划任务,Linux 服务器配置如下:
* * * * * php /home/wwwroot/discuss/disco schedule:run > /dev/null 2>&1
#配置说明
#公共路径
安装完 Discuz! Q 之后,你的 web 服务的文档目录指向 public
路径。该路径下的 index.php
文件作为所有接口控制器, index.html
作为所有前端 HTTP 请求控制器。
#配置文件
Discuz! Q 的所有配置文件存放在 config
目录下。每个选项都有文档标注,便于通过文件查看并熟悉对你有用的选项。
#目录权限
在安装 Discuz! Q 后,你可能需要配置一些权限。 storage
目录在你的 web 服务下应该是可写的权限,否则 Discuz! Q 将无法运行。
#应用密钥
在安装过程中,应用密钥已经通过 php disco key:generate
命令为你设置好了。
通常,这个字符串应该是 32 个字符长度。这个密钥将会设置在 config.php
文件中。如果应用密钥还没有设置,你的用户会话和其他的加密数据将会不安全
#其他配置
Discuz! Q 几乎不需要除上面所说的其他什么配置了。打开你的站点开始你建站之旅然而,你可能会想要再次查看 config/config.php
文件和它的注释说明。它包含一些你希望根据你应用来更改的选项,诸如: timezone
和 locale
。
原文 https://discuz.com/docs/install.html#