ホーム サイト構築の知識 標準記事

標準記事

国産フォーラムプログラムDiscuz! Q クローズドベータ版の申請とインストールチュートリアル

Discuzは、国内の古参の個人サイト運営者には非常になじみ深いフォーラムソースコードです。同時期にはphpwindもありました。数年前、政策がまだそれほど厳しくなかった頃、フォーラムは非常に盛り上がっていました。そして、NaibaはDiscuzが最も使いやすいフォーラムプログラムだと考えています。ただし、後期にTencentに買収され、政策の影響もあり、事実上放棄された状態です。先日、吴洪声(ナイチン)が…

2020年3月16日公開 約12分で読めます
国产论坛程序Discuz! Q内测版申请和安装教程

Discuzは、中国の古参の個人サイト運営者には非常によく知られたフォーラムソースコードです。同時期にはphpwindもありました。数年前、政策がまだそれほど厳しくなかった頃はフォーラムが非常に盛り上がっていましたが、DiscuzはNaibaが最も使いやすいフォーラムプログラムだと考えています。ただし、後にTencentに買収され、政策の影響もあり、事実上放棄されたような状態です。

先日、吴洪声(ナイゾウ)が公式フォーラムでDiscuzの復活を発表し、新しいバージョンのDiscuz!Qを開発するとのことです。主に、トラフィックの多い大V、インフルエンサー、知識決済、WeChatエコシステム、モバイルインターネットの起業家が、ユーザーの定着と課金への変換をより簡単に行えるように支援することを目的としています。

Discuz! Qは、より軽量で、収益化しやすく、モバイル向けで、よりオープンで、二次開発が容易なコミュニティ製品です。

現在、Discuz! Qクローズドベータ版は申請して体験できるようになっており、興味のあるサイト管理者は試してみることができます。

前提条件:

  1. DNSPodに実名認証済みのドメインがあること(他のドメインレジストラのものは現在申請をサポートしていません);
  2. クリーンなサーバー1台(実際には別途仮想ホストを追加するだけでも可能かもしれませんが、Naibaはテストしていません)
  3. Tencent CloudアカウントセンターのAPIキー管理で、SecretIdとSecretKeyを取得します。注意:これら2つを信頼できない人に絶対に漏らさないでください。Tencent Cloudアカウントが乗っ取られ、損害を受ける可能性があります。
  4. SSLセキュリティ証明書の有効化を推奨します;

クローズドベータ資格の申請:https://www.dnspod.cn/promo/discuzq

インストールプロセス

一、サーバー環境のインストール

公式が推奨するのはLNMP一键パッケージのインストールです(当時のサイト運営者はこれを使う人が多かったです。宝塔パネルはまだ登場していなかったため)。もちろん、宝塔パネルをインストールしても同様に使用できるはずです。

具体的なチュートリアルはここでは繰り返しません。以下のリンクを参照してください:

  1. #サイト構築#LNMPワンクリックインストールパッケージの図解チュートリアル
  2. 初心者に優しい宝塔パネルの図解インストールチュートリアル

インストールプロセス中に、以下の項目を選択してください:

  • MariaDB 10.3.15
  • PHP 7.3.6
  • Jemalloc
  • Memcached
  • Redis
  • imageMagick

LNMPワンクリックパッケージの場合、インストール完了後に無効化関数を削除します。コードは以下の通りです:

sed -i 's/^disable_functions.*/disable_functions = /' /usr/local/php/etc/php.ini

二、Discuz!Qインストールコードのクローン

Discuz!Qのコードはまだベータ版であり、完全なインストールパッケージが用意されていないため、コードディレクトリが特に標準的ではありません。そのため、手動でディレクトリを作成する必要があります。

まずサーバー上にフォルダを作成します。コード例は以下の通りです(宝塔パネルの場合は直接作成します)。

mkdir -p /var/hosts/com/naizhao
cd /var/hosts/com/naizhao

上記のコードは、naizhaoというフォルダを作成し、naizhaoフォルダに移動するものです。

次に、composerのソースをTencent Cloudに変更します(composerの公式ソースは海外にあり、非常に遅いです)。

composer config -g repos.packagist composer https://mirrors.cloud.tencent.com/composer/

フォルダ内にコードをクローンし始めます

composer create-project --prefer-dist qcloud/discuz --repository=https://cloud.discuz.chat q

コードのクローン中に、Tencent CloudのAPIキーの入力を求められます。

すべてが順調に進めば、コードは完全にqディレクトリにクローンされています。中を見てみましょう。

cd q
ls -lha

以下の内容が表示されるはずです

total 388K
drwxr-xr-x 11 root root 4.0K Mar 16 18:23 .
drwxr-xr-x  3 root root 4.0K Mar 16 18:21 ..
drwxr-xr-x 28 root root 4.0K Mar 16 18:21 app
-rw-rw-rw-  1 root root  917 Mar 15 19:57 composer.json
-rw-r--r--  1 root root 319K Mar 16 18:23 composer.lock
drwxr-xr-x  2 root root 4.0K Mar 16 18:21 config
drwxr-xr-x  4 root root 4.0K Mar 16 18:21 database
-rw-rw-rw-  1 root root  362 Mar 15 19:57 disco
-rw-rw-rw-  1 root root  213 Mar 15 19:57 .editorconfig
drwxr-xr-x  4 root root 4.0K Mar 16 18:21 .github
-rw-rw-rw-  1 root root  108 Mar 15 19:57 .gitignore
-rw-rw-rw-  1 root root 1.4K Mar 15 19:57 .php_cs
drwxr-xr-x  5 root root 4.0K Mar 16 18:21 public
-rw-rw-rw-  1 root root 2.3K Mar 15 19:57 readme.md
drwxr-xr-x  7 root root 4.0K Mar 16 18:21 resources
drwxr-xr-x  2 root root 4.0K Mar 16 18:21 routes
drwxr-xr-x 11 root root 4.0K Mar 16 18:21 storage
drwxr-xr-x 56 root root 4.0K Mar 16 18:23 vendor

最後に、storageとconfigディレクトリの権限を777に変更します

chmod -R 777 storage config

四、仮想ホストの追加

lnmpの場合、仮想ホストを追加するために使用するコードは以下の通りです。宝塔パネルの場合は、設定に従って各自で行ってください。

Please enter domain(example: www.lnmp.org): 让你输入要绑定的域名
 Your domain: 你绑定的域名
Enter more domain name(example: lnmp.org *.lnmp.org): 
Please enter the directory for the domain: 为你绑定的域名设置路径
Default directory: /home/wwwroot/q.naizhao.com: /var/hosts/com/naizhao/q/public #输入网站的根目录,记得后面要加上public
Virtual Host Directory: /var/hosts/com/naizhao/q/public
Allow Rewrite rule? (y/n) y
Please enter the rewrite of programme, 
wordpress,discuzx,typecho,thinkphp,laravel,codeigniter,yii2 rewrite was exist.
(Default rewrite: other): laravel #rewrite规则选择laravel
You choose rewrite: laravel
Enable PHP Pathinfo? (y/n) y
Enable pathinfo.
Allow access log? (y/n) y
Enter access log filename(Default:q.naizhao.com.log): 
You access log filename: q.naizhao.com.log
Create database and MySQL user with same name (y/n) y #创建MySQL数据库
Enter current root password of Database (Password will not shown): #输入MySQL的root密码
OK, MySQL root password correct.
Enter database name: dzq #输入要创建的数据库名字
Your will create a database and MySQL user with same name: dzq
Please enter password for mysql user dzq: dzq #输入数据库密码
Your password: dzq 
Add SSL Certificate (y/n) y #是否打开SSL支持
1: Use your own SSL Certificate and Key
2: Use Let's Encrypt to create SSL Certificate and Key
Enter 1 or 2: 2 #SSL证书安装方式,如果前面在腾讯云申请了,选1。或者选2用Let's Encrypt提供的免费3个月证书。但一定要提前把域名指向你的服务器,否则申请不成功!!!
It will be processed automatically.
その後、約30秒待つと、ウェブサイトとデータベースの両方が作成されます。
次に、open_basedirの制限を削除します。そうしないと500エラーが発生します。lnmp1.6/tools/remove_open_basedir_restriction.shを実行し、ウェブサイトのルートディレクトリ/var/hosts/com/naizhao/q/publicを入力し、Enterキーを押してください。
nginxの設定ファイルを編集します。ディレクトリ/usr/local/nginx/conf/vhost/内で、対応するファイル(例:q.naizhao.com.conf)を見つけ、ファイル全体を以下の内容に置き換えます(直接貼り付けず、対応するパラメータを変更してください)
server {
listen 80;
server_name 你前面绑定的域名; #网站域名
return 301 https://$host$request_uri; # 强制把HTTP跳转到HTTPS
}


server {
listen 443 ssl http2;
server_name 你绑定的域名; #网站域名
root /var/hosts/com/naizhao/q/public; #网站目录,切记指到public


ssl_certificate /usr/local/nginx/conf/ssl/你绑定的域名/fullchain.cer; #ssl证书的证书链
ssl_certificate_key /usr/local/nginx/conf/ssl/你绑定的域名/你绑定的域名.key; #ssl证书的key


ssl_session_cache shared:SSL:10m;
ssl_session_timeout 24h;


ssl_prefer_server_ciphers on;
ssl_ciphers EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ecdh_curve secp521r1:secp384r1;
ssl_session_tickets off;
ssl_stapling on;
ssl_stapling_verify on;
ssl_dhparam /usr/local/nginx/conf/ssl/dhparam.pem;
ssl_buffer_size 4k;


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


index index.html;


include enable-php-pathinfo.conf;


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


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


location / {
try_files $uri $uri/ /index.html;
}


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


error_page 404 /index.php;
}

完了したら、lnmpを再起動します

lnmp restart

五、Discuz! Qのインストール

ブラウザを開いて、以下のURLにアクセスします:

https://あなたのドメイン/install

上記の指示に従い、MySQLの情報と管理者情報を入力し、「インストール」をクリックします。

インストールが完了したら、以下のURLにアクセスします:

https://あなたのドメイン/admin でサイトを管理できます。

注意:インストール後、ローディングアイコンが表示され続ける場合は、ブラウザの開発者モードを開き、Application-Storage-Local Storageを選択し、右クリックしてClearを選択し、ブラウザをリフレッシュしてください。

2/5 - (12 票)
前の記事 Themeforestで購入したプレミアムテーマのキーをアクティベートするチュートリアル 同じタイムラインの近くのコンテンツを読み続ける。 次の記事 Namesiloで登録したドメインの返金申請チュートリアル 次の関連チュートリアルや経験を表示する。

AIサイト構築アシスタント

🤖
こんにちは!私はNaibaサイト構築ノートのAIアシスタントです。何かお手伝いできることはありますか?
クイックコンサルティング: