一、安装Discuz!


1、新建目录来存放网页等

[root@tpp ~]# mkdir /data/www [root@tpp ~]# cd /data/www   [root@tpp www]# wget http://download.comsenz.com/DiscuzX/3.2/Discuz_X3.2_SC_GBK.zip                                                     //下载最新版本的Discuz! [root@tpp www]# unzip Discuz_X3.2_SC_GBK.zip     //解压 [root@tpp www]# ls Discuz_X3.2_SC_GBK.zip  readme  upload  utility  

2、程序文件会放于upload下,所以全部移到www目录下,并且删除多余的文件。

[root@tpp www]# mv upload/* ./       [root@tpp www]# ls admin.php  connect.php             favicon.ico  install     readme    template  utility api        cp.php                  forum.php    member.php  robots.txt  uc_client api.php    crossdomain.xml         group.php    misc.php    search.php  uc_server archiver   data                    home.php     plugin.php  source      upload config     Discuz_X3.2_SC_GBK.zip  index.php    portal.php  static      userapp.php [root@tpp www]# rm -rf readme/ utility/ upload/ Discuz_X3.2_SC_GBK.zip   

3、修nginx的主配置文件,虚拟主机单独放于一个文件中

[root@tpp www]# vim /usr/local/nginx/conf/nginx.conf

user nobody nobody; worker_processes 2; error_log /usr/local/nginx/logs/nginx_error.log crit; pid /usr/local/nginx/logs/nginx.pid; worker_rlimit_nofile 51200; events {
    use epoll;     worker_connections 6000; } http {
    include mime.types;     default_type application/octet-stream;     server_names_hash_bucket_size 3526;     server_names_hash_max_size 4096;     log_format combined_realip '$remote_addr $http_x_forwarded_for [$time_local]'     '$host "$request_uri" $status'     '"$http_referer" "$http_user_agent"';     sendfile on;     tcp_nopush on;     keepalive_timeout 30;     client_header_timeout 3m;     client_body_timeout 3m;     send_timeout 3m;     connection_pool_size 256;     client_header_buffer_size 1k;     large_client_header_buffers 8 4k;     request_pool_size 4k;     output_buffers 4 32k;     postpone_output 1460;     client_max_body_size 10m;     client_body_buffer_size 256k;     client_body_temp_path /usr/local/nginx/client_body_temp;     proxy_temp_path /usr/local/nginx/proxy_temp;     fastcgi_temp_path /usr/local/nginx/fastcgi_temp;     fastcgi_intercept_errors on;     tcp_nodelay on;     gzip on;     gzip_min_length 1k;     gzip_buffers 4 8k;     gzip_comp_level 5;     gzip_http_version 1.1;     gzip_types text/plain application/x-javascript text/css text/htm application/xml;    include vhosts/*.conf;    //添加该行,并剪切出虚拟主机配置 }

在主配置文件末尾加上include vhosts/*.conf;并且剪切出下面的内容作为虚拟主机的配置文件,单独放于 /usr/local/nginx/conf/vhosts目录下

[root@tpp www]# mkdir /usr/local/nginx/conf/vhosts[root@tpp www]# cd /usr/local/nginx/conf/vhosts[root@tpp vhosts]# vim default.conf   //写入下面的内容
server {
    listen 80 default;     server_name localhost;     index index.html index.htm index.php;     root /tmp/1233/;     deny all; }

[root@tpp vhosts]# mkdir /tmp/1233                   //创建空目录 [root@tpp vhosts]# /usr/local/nginx/sbin/nginx -t    //检查nginx是否配置错误 [root@tpp vhosts]# /etc/init.d/nginx reload          //重新加载nginx

因为vhosts目录下自带了默认的虚拟主机配置文件,访问时候会自动跳转到默认的虚拟主机,为了安全起见我们禁止所有的访问,使其访问我们自己设置的网页。添加default,表示默认主机;路径修改为空目录/tmp/1233/;deny all表示禁止所有访问,会报403错误。

测试下:

[root@tpp vhosts]# curl -x127.0.0.1:80 www.baidu.com

结果如下图所示:

4、新建虚拟主机

如果我们有一个新的网站,则需在/usr/local/nginx/conf/vhosts/目录下新建一个虚拟主机文件

[root@tpp vhosts]# vim test.conf server {
   listen 80;    server_name www.test.com;    index index.html index.htm index.php;    root /data/www;    location ~ \.php$ {
       include fastcgi_params;        fastcgi_pass unix:/tmp/www.sock;      # fastcgi_pass 127.0.0.1:9000;        fastcgi_index index.php;        fastcgi_param SCRIPT_FILENAME /data/www$fastcgi_script_name;    } }

重新加载nginx服务

[root@tpp vhosts]# /etc/init.d/nginx reload

5、配置/usr/local/php/etc/php-fpm.conf文件

我们需修改三处

vim /usr/local/php/etc/php-fpm.conf

[global] pid = /usr/local/php/var/run/php-fpm.pid error_log = /usr/local/php/var/log/php-fpm.log [www] listen = /tmp/www.sock         user = php-fpm group = php-fpm listen.owner = nobody listen.group = nobody pm = dynamic pm.max_children = 50 pm.start_servers = 20 pm.min_spare_servers = 5 pm.max_spare_servers = 35 pm.max_requests = 500 rlimit_files = 1024

此处的listen要和虚拟主机的fastcgi_pass定义的一样。owner和group 都修改为nobody。

重新加载php服务

service php-fpm restart

6、配置本地hosts文件

找到本机 C:\Windows\System32\drivers\etc下的hosts文件,添加下面内容后保存退出。

192.168.0.109  www.test.com

7、我们在浏览器上输入网址 www.test.com 这时就会跳转到Discuz!安装界面。

同意安装后我们看多好多都是不可写,这时我们就要给他们赋予php-fpm用户权限。

 

[root@tpp ~]# cd /data/www/ [root@tpp www]# chown -R php-fpm config data uc_client/data uc_server/data

刷新页面后,全都变成绿色的了。下一步就是全新安装。

8、安装数据库

在安装数据库之前,我们还需配置数据库

[root@tpp www]# /usr/local/mysql/bin/mysql mysql> create database discuz;             //创建一个数据库,数据库名为discuz mysql> grant all on discuz.* to 'test'@'localhost' identified by 'testpassword';                                            // all:所有的权限,用户:test,密码:testpassword

回原网页,填写数据库名:discuz,数据库用户名:test,数据库密码:testpassword,其他的都默认;管理员admin 密码123456,下一步;安装完成以后,点击最右下角的“您的论坛已完成安装,点此访问”。

如上图所示,论坛搭建成功。

nginx基本的配置可参考: