CentOS 7 Installation Discuz 3.3 (Pit Filling)

Official Installation Method Released First
Official Installation Method

The following is the normal installation method:

1. Install CentOS 7 Server

This is a must, and then install the way to choose the basic web, do not choose the smallest mode, just choose this, if you want other additional features, you can point more options, and then you do not need to install httpd and openssh again.

After loading, we can't go online at this time. Let's configure it.

vim  /etc/sysconfig/network-scripts/ifcfg-enp0s3

Last line


Change to


Then restart the network service

service network restart

When you see the green OK, it's OK.


Then I set the network card as bridge mode, I used the VB virtual machine, and then restart some network services.

service network restart

Then look at the server's ip and prepare for the next ssh connection to the server



ip addr

Then we switched to another linux machine with Vb enhancements or other ssh client with windows to connect to the server.

2. Download

Needless to say, go to discuz's official website to download 3.3 or 3.2
And then the next UTF8 version of the ___________

wget http://download.comsenz.com/DiscuzX/3.3/Discuz_X3.3_SC_UTF8.zip

Then we decompress

unzip Discuz_X3.3_SC_UTF8.zip

At this point, we have several files in our catalogue.

[root@localhost ~]# ls
Discuz_X3.3_SC_UTF8.zip  readme  upload  utility

readme doesn't care. This is the document. utility doesn't care. We just copy upload to / var/www/html /.

cp -rf upload /var/www/html/

3. Configure the server (tap the blackboard, draw the key points)

Let's first make sure that the Apache server is started.

[root@localhost www]# systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2017-02-16 02:54:56 EST; 18min ago
     Docs: man:httpd(8)
 Main PID: 980 (httpd)
   Status: "Total requests: 4; Current requests/sec: 0; Current traffic:   0 B/sec"
   CGroup: /system.slice/httpd.service
           ├─ 980 /usr/sbin/httpd -DFOREGROUND
           ├─2135 /usr/sbin/httpd -DFOREGROUND
           ├─2357 /usr/sbin/httpd -DFOREGROUND
           ├─2358 /usr/sbin/httpd -DFOREGROUND
           ├─2359 /usr/sbin/httpd -DFOREGROUND
           ├─2360 /usr/sbin/httpd -DFOREGROUND
           ├─2361 /usr/sbin/httpd -DFOREGROUND
           ├─2444 /usr/sbin/httpd -DFOREGROUND
           ├─2445 /usr/sbin/httpd -DFOREGROUND
           └─2446 /usr/sbin/httpd -DFOREGROUND

Feb 16 02:54:51 localhost.localdomain systemd[1]: Starting The Apache HTTP Server...
Feb 16 02:54:54 localhost.localdomain httpd[980]: AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain. Set the 'S...his message
Feb 16 02:54:56 localhost.localdomain systemd[1]: Started The Apache HTTP Server.
Hint: Some lines were ellipsized, use -l to show in full.

If not, then:

systemctl start httpd

chkconfig mysqld on

systemctl enable httpd

Then we access the ip

Usually this time is not accessible, because the firewall does not open the port.

filewall-cmd --zone=public --add-service=http

Then you can visit the apache server interface.

Then we install php

yum -y install php php-mysql

Then we tested whether some php installations were successful or not.



Lower execution

vim index.php

Then edit the content in


Then we can refresh the website.

If you see something like this

Explain that your php installation was successful

Then we visit


I've tried to agree or disagree with you, but I didn't react to that. Ha-ha-ha-ha-ha-ha-ha-ha-ha-ha-ha-ha-ha-ha-ha-ha-ha-ha-ha-ha-ha-ha-

Then there's the environment.

At this time, students must be like this.

The old fashioned way is sure to count.

chmod 777 filename

But no, fork or fork
In fact, the biggest reason is that even if selinux is not relevant, it's also a problem that has been bothering me for a long time.

Let's start with selinux
Then chmod

vim /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled                             # Modify this to disabled
# SELINUXTYPE= can take one of three two values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected. 
#     mls - Multi Level Security protection.

Then save and restart the system

When the reboot is complete, we come to / var/www/html/

Then there's another problem: many files are useless, and we have to create them ourselves.

Then we wrote a sprinkled script to create these pit daddy files.


mkdir -p /var/www/html/config
touch /var/www/html/config/config_global.php
touch /var/www/html/config/config_ucenter.php
mkdir -p /var/www/html/data/cache
mkdir -p /var/www/html/data/avatar
mkdir -p /var/www/html/data/plugindata
mkdir -p /var/www/html/data/download
mkdir -p /var/www/html/data/addonmd5
mkdir -p /var/www/html/data/template
mkdir -p /var/www/html/data/threadcache
mkdir -p /var/www/html/data/attachment
mkdir -p /var/www/html/data/attachment/album
mkdir -p /var/www/html/data/attachment/forum
mkdir -p /var/www/html/data/attachment/group
mkdir -p /var/www/html/data/log
mkdir -p /var/www/html/uc_client/data/cache
mkdir -p /var/www/html/uc_server/data/
mkdir -p /var/www/html/uc_server/data/cache
mkdir -p /var/www/html/uc_server/data/avatar
mkdir -p /var/www/html/uc_server/data/backup
mkdir -p /var/www/html/uc_server/data/logs
mkdir -p /var/www/html/uc_server/data/tmp
mkdir -p /var/www/html/uc_server/data/view

Then copy the code there, add an executable privilege, and execute it with root.
Then we can easily add permissions to html.

chmod -R 777 /var/www/html/

Then we can check it again.

Then step by step, step by step, step by step, step by step, step by step, step by step, step by step, step by step, step by step, step by step, step by step, step by step, step by step, step by step, step by step,

Then fill in your database username and password and set up your own administrator password.

Then I looked at the plug-in fee for Weixin login.

Forget it

No money
Then this is the complete installation step.

If you have any questions, please contact me by email.



Tags: PHP SELinux network Apache

Posted on Fri, 29 Mar 2019 03:03:29 -0400 by MBrody