请选择 进入手机版 | 继续访问电脑版
【腾讯云】11.11 云上盛惠,云产品限时抢购,1核2G云服务器首年88元

小白如何从零开始安装Discuz! Q内测版

使用教程 使用教程 7106 人阅读 | 40 人回复

Riood 发表于 2020-3-17 12:14 | 显示全部楼层 |阅读模式

未标题-1.jpg
本文转载自: https://da.do/dzq

首先强调一点:当前Discuz! Q还是很早期的版本,主要是面向开发者,让开发者提前介入模板和插件的开发。或者有经验的站长,作为早期体验和选型。
但如果是不很懂技术的小白,也想体验的话,可以按照下面的方法来安装。并且保证是全新的服务器。如果这些条件都不具备,或者用了宝塔面板之类的第三方工具,不建议安装使用。
因为,当前官方开发人员的主要精力,集中在开发迭代新功能上,并没有太多精力来帮助没经验的用户安装使用。

安装Discuz! Q内测版,首先你要具备以下条件
  • 一个腾讯云实名认证过的账号,并且使用了DNSPod,在DNSPod至少有一个域名。(并不是为了强绑腾讯云,而是为了保证初期内测使用的用户都是强需求的)
  • 一台船新的腾讯云的CVM,操作系统可以是CentOS或者Ubuntu或者Debian,最新版本即可。当然阿里云或者华为云或者本地虚拟机也可以。但一定要干净,没装过任何东西。点击前往获取新手机器
  • 在腾讯云账号中心的API密钥管理,获取到SecretId和SecretKey。注意:请千万不要泄露这两个东西给到任何你不信赖的人,避免你的腾讯云账号被控制,受到损失。
  • 如果(建议,强烈建议)要使用HTTPS,可以到腾讯云申请免费的SSL证书。
  • 申请Discuz! Q内测资格:https://www.dnspod.cn/promo/discuzq
以上,准备好了以后,并且确认你有足够的耐心,就可以开始安装了。


安装服务器环境
作为小白使用,我的建议一向是用LNMP一键安装包,因为可以自动帮你配好服务器环境,减少不必要的麻烦,一路按回车就好。
注意:
游客,如果您要查看本帖隐藏内容请回复

安装选项如下:
  • MariaDB 10.3.15
  • PHP 7.3.6
  • Jemalloc
记录好安装过程中输入的MySQL密码,别忘了。
然后就是慢慢等,等装完。
装完后,可以选择性装一些插件,比如redis之类的
  1. ./addons.sh
复制代码
可以装上
  • 3: Memcached(选择后,二级选项要选php-memcached,千万别选错!不要选带有Discuz的那个)
  • 5: Redis
  • 7: imageMagick
最后,把php.ini里面的禁用函数干掉
  1. # sed -i 's/^disable_functions.*/disable_functions = /' /usr/local/php/etc/php.ini
复制代码
下载Discuz! Q内测版源代码
我们先创建个目录,用来存放代码。比如/var/hosts/com/naizhao。然后我们把Discuz! Q安装到/var/hosts/com/naizhao/q下。
  1. # mkdir -p /var/hosts/com/naizhao
  2. # cd /var/hosts/com/naizhao
复制代码
然后我们修改下composer的源为腾讯云(composer的官方源在国外,很慢)
  1. # composer config -g repos.packagist composer https://mirrors.cloud.tencent.com/composer/
复制代码
开始克隆代码到目录q中
  1. # composer create-project --prefer-dist qcloud/discuz --repository=https://cloud.discuz.chat q
复制代码
克隆代码过程中,会让你输入腾讯云的API密钥。获取方式参见上面。
如果一切顺利,代码已经完整的克隆到了q目录里面。我们可以进去看看
  1. # cd q
  2. # ls -lha
复制代码
你应该会看到下面的内容
  1. total 388K
  2. drwxr-xr-x 11 root root 4.0K Mar 16 18:23 .
  3. drwxr-xr-x  3 root root 4.0K Mar 16 18:21 ..
  4. drwxr-xr-x 28 root root 4.0K Mar 16 18:21 app
  5. -rw-rw-rw-  1 root root  917 Mar 15 19:57 composer.json
  6. -rw-r--r--  1 root root 319K Mar 16 18:23 composer.lock
  7. drwxr-xr-x  2 root root 4.0K Mar 16 18:21 config
  8. drwxr-xr-x  4 root root 4.0K Mar 16 18:21 database
  9. -rw-rw-rw-  1 root root  362 Mar 15 19:57 disco
  10. -rw-rw-rw-  1 root root  213 Mar 15 19:57 .editorconfig
  11. drwxr-xr-x  4 root root 4.0K Mar 16 18:21 .github
  12. -rw-rw-rw-  1 root root  108 Mar 15 19:57 .gitignore
  13. -rw-rw-rw-  1 root root 1.4K Mar 15 19:57 .php_cs
  14. drwxr-xr-x  5 root root 4.0K Mar 16 18:21 public
  15. -rw-rw-rw-  1 root root 2.3K Mar 15 19:57 readme.md
  16. drwxr-xr-x  7 root root 4.0K Mar 16 18:21 resources
  17. drwxr-xr-x  2 root root 4.0K Mar 16 18:21 routes
  18. drwxr-xr-x 11 root root 4.0K Mar 16 18:21 storage
  19. drwxr-xr-x 56 root root 4.0K Mar 16 18:23 vendor
复制代码
最后,我们还要改一下storage和config目录为可写
  1. # chmod -R 777 storage config
复制代码
至此,Discuz! Q的代码就算部署好了。

配置服务器
LNMP一键安装包配置服务器很简单,傻瓜化,输入命令就可以。
  1. # lnmp vhost add
复制代码
输入内容,可以参考下面
  1. Please enter domain(example: www.lnmp.org): q.naizhao.com
  2. Your domain: q.naizhao.com #输入网站的域名
  3. Enter more domain name(example: lnmp.org *.lnmp.org):
  4. Please enter the directory for the domain: q.naizhao.com
  5. Default directory: /home/wwwroot/q.naizhao.com: /var/hosts/com/naizhao/q/public #输入网站的根目录,记得后面要加上public
  6. Virtual Host Directory: /var/hosts/com/naizhao/q/public
  7. Allow Rewrite rule? (y/n) y
  8. Please enter the rewrite of programme,
  9. wordpress,discuzx,typecho,thinkphp,laravel,codeigniter,yii2 rewrite was exist.
  10. (Default rewrite: other): laravel #rewrite规则选择laravel
  11. You choose rewrite: laravel
  12. Enable PHP Pathinfo? (y/n) y
  13. Enable pathinfo.
  14. Allow access log? (y/n) y
  15. Enter access log filename(Default:q.naizhao.com.log):
  16. You access log filename: q.naizhao.com.log
  17. Create database and MySQL user with same name (y/n) y #创建MySQL数据库
  18. Enter current root password of Database (Password will not shown): #输入MySQL的root密码
  19. OK, MySQL root password correct.
  20. Enter database name: dzq #输入要创建的数据库名字
  21. Your will create a database and MySQL user with same name: dzq
  22. Please enter password for mysql user dzq: dzq #输入数据库密码
  23. Your password: dzq
  24. Add SSL Certificate (y/n) y #是否打开SSL支持
  25. 1: Use your own SSL Certificate and Key
  26. 2: Use Let's Encrypt to create SSL Certificate and Key
  27. Enter 1 or 2: 2 #SSL证书安装方式,如果前面在腾讯云申请了,选1。或者选2用Let's Encrypt提供的免费3个月证书。但一定要提前把域名指向你的服务器,否则申请不成功!!!
  28. It will be processed automatically.
复制代码
然后就是等待半分钟,网站和数据库都创建好了。

接着删掉open_basedir的限制,不然会导致500错误。运行lnmp1.6/tools/remove_open_basedir_restriction.sh,输入网站根目录/var/hosts/com/naizhao/q/public,按回车就行。

编辑下nginx的配置文件,在目录/usr/local/nginx/conf/vhost/下,找到对应的文件,比如q.naizhao.com.conf,整个文件替换成下面的内容(不要直接粘贴,注意修改对应的一些参数)
  1. server {
  2.     listen 80;
  3.     server_name q.naizhao.com; #网站域名
  4.     return 301 https://$host$request_uri; # 强制把HTTP跳转到HTTPS
  5. }

  6. server {
  7.     listen 443 ssl http2;
  8.     server_name q.naizhao.com; #网站域名
  9.     root /var/hosts/com/naizhao/q/public; #网站目录,切记指到public

  10.     ssl_certificate /usr/local/nginx/conf/ssl/q.naizhao.com/fullchain.cer; #ssl证书的证书链
  11.     ssl_certificate_key /usr/local/nginx/conf/ssl/q.naizhao.com/q.naizhao.com.key; #ssl证书的key

  12.     ssl_session_cache shared:SSL:10m;
  13.     ssl_session_timeout  24h;

  14.     ssl_prefer_server_ciphers   on;
  15.     ssl_ciphers EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH;
  16.     ssl_protocols TLSv1.2 TLSv1.3;
  17.     ssl_ecdh_curve secp521r1:secp384r1;
  18.     ssl_session_tickets off;
  19.     ssl_stapling  on;
  20.     ssl_stapling_verify on;
  21.     ssl_dhparam /usr/local/nginx/conf/ssl/dhparam.pem;
  22.     ssl_buffer_size 4k;

  23.     add_header X-Content-Type-Options nosniff;
  24.     add_header X-Frame-Options "SAMEORIGIN";
  25.     add_header X-XSS-Protection "1; mode=block";
  26.     add_header X-Robots-Tag none;
  27.     add_header X-Download-Options noopen;
  28.     add_header X-Permitted-Cross-Domain-Policies none;
  29.     add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;

  30.     index index.html;

  31.     include enable-php-pathinfo.conf;

  32.     location /install {
  33.         try_files $uri $uri/ /index.php?$query_string;
  34.     }

  35.     location /api {
  36.         try_files $uri $uri/ /index.php?$query_string;
  37.     }

  38.     location / {
  39.         try_files $uri $uri/ /index.html;
  40.     }

  41.     location = /favicon.ico { access_log off; log_not_found off; }
  42.     location = /robots.txt  { access_log off; log_not_found off; }

  43.     error_page 404 /index.php;
  44. }
复制代码
以上全部搞定后,重启lnmp
  1. # lnmp restart
复制代码

安装Discuz! Q
打开浏览器,访问https://你的站点/install,按照上面的提示,输入MySQL的信息、管理员信息,点击安装
安装完成后,进入https://你的站点/admin就可以管理站点了。
注意:如果安装完后,一直出现loading的图标,请打开浏览器的开发者模式-Application-Storage-Local Storage,右击Clear,然后刷新浏览器即可。


回复

使用道具 举报

回答|共 40 个

叶海松

叶海松 发表于 2020-3-17 15:52 | 显示全部楼层

【腾讯云】热卖云产品3折起,云服务器、云数据库特惠,服务更稳,速度更快,价格更优
试试
回复

使用道具 举报

adadcw

adadcw 发表于 2020-3-19 08:10 | 显示全部楼层

【腾讯云】热卖云产品3折起,云服务器、云数据库特惠,服务更稳,速度更快,价格更优
~~~~~~~~~~~~~~~~~~
回复

使用道具 举报

0713k

0713k 发表于 2020-3-20 11:39 移动端 安卓客户端 | 显示全部楼层

【腾讯云】热卖云产品3折起,云服务器、云数据库特惠,服务更稳,速度更快,价格更优
谢谢分享!安装成功http://0713k.com
回复 支持 反对

使用道具 举报

区头阿萨德g

区头阿萨德g 发表于 2020-3-20 13:06 | 显示全部楼层

【腾讯云】热卖云产品3折起,云服务器、云数据库特惠,服务更稳,速度更快,价格更优
煽风点火阿萨德爱读书发 发撒阿萨德发放大的三
回复 支持 反对

使用道具 举报

yupan521

yupan521 发表于 2020-3-21 23:16 | 显示全部楼层

【腾讯云】热卖云产品3折起,云服务器、云数据库特惠,服务更稳,速度更快,价格更优
好难呀啊啊啊啊啊啊啊啊啊啊
回复 支持 反对

使用道具 举报

BH2SIV

BH2SIV 发表于 2020-3-24 22:37 | 显示全部楼层

【腾讯云】热卖云产品3折起,云服务器、云数据库特惠,服务更稳,速度更快,价格更优
我是小白,谢谢站长的帖子,学习中
回复 支持 反对

使用道具 举报

dedeji

dedeji 发表于 2020-3-29 13:48 | 显示全部楼层

【腾讯云】热卖云产品3折起,云服务器、云数据库特惠,服务更稳,速度更快,价格更优
了解一下 不错
回复 支持 反对

使用道具 举报

okletsgo

okletsgo 发表于 2020-3-30 10:33 | 显示全部楼层

【腾讯云】热卖云产品3折起,云服务器、云数据库特惠,服务更稳,速度更快,价格更优
看起来对环境的要求很高啊。
回复 支持 反对

使用道具 举报

白垩纪

白垩纪 发表于 2020-4-1 00:48 | 显示全部楼层

【腾讯云】热卖云产品3折起,云服务器、云数据库特惠,服务更稳,速度更快,价格更优
FE6012-11A
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则