一、安装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基本的配置可参考: