• Linux 下Discuz论坛的搭建


    Discuz论坛的搭建【基于LNMP环境搭建成功后】

    ##创建BBS数据库在本地/远程服务器

    mysql -uroot -proot
    create database bbs;
    show databases;
    grant all on bbs.*to bbs@'localhost' identified by 'root';
    grant all on bbs.*to bbs@'192.168.25.%' identified by 'root';     # 远程mysql服务器
    flush privileges;
    select user,host from mysql.user;
    ##远程连接数据库:
    mysql -ubbs -proot -h 192.168.25.138
    echo ' 192.168.25.144 www.bbs.com  bbs.com'>> /etc/hosts
    

    ##配置BBS和Nginx
    在Nginx服务器下面配置bbs的Vhosts

    vim /usr/local/nginx/conf/nginx.conf                  -->添加include
    vim /usr/local/nginx/conf/extra/bbs.conf                -->配置域名
    vim /etc/hosts                                        -->添加DNS解析
    /usr/local/nginx/sbin/nginx -t
    /usr/local/nginx/sbin/nginx -s reload              -->重启服务
    mkdir -p /usr/local/nginx/html/bbs              -->创建虚拟路径
    cd /usr/local/nginx/html
    chown -R root.root ./bbs
    find ./blog/ -type f|xargs chmod 644
    find ./blog/ -type d|xargs chmod 755              -->更改权限
    server {
            listen       80;
            server_name  www.bbs.com;
            root   html/discuz;
            location / {
    #            index  index.html index.htm;
                 index  index.php index.html index.htm;
                 rewrite ^([^.]*)/topic-(.+).html$ $1/portal.php?mod=topic&topic=$2 last;
    rewrite ^([^.]*)/article-([0-9]+)-([0-9]+).html$ $1/portal.php?mod=view&aid=$2&page=$3 last;
    rewrite ^([^.]*)/forum-(w+)-([0-9]+).html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3 last;
    rewrite ^([^.]*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D$4&page=$3 last;
    rewrite ^([^.]*)/group-([0-9]+)-([0-9]+).html$ $1/forum.php?mod=group&fid=$2&page=$3 last;
    rewrite ^([^.]*)/space-(username|uid)-(.+).html$ $1/home.php?mod=space&$2=$3 last;
    rewrite ^([^.]*)/blog-([0-9]+)-([0-9]+).html$ $1/home.php?mod=space&uid=$2&do=blog&id=$3 last;
    rewrite ^([^.]*)/(fid|tid)-([0-9]+).html$ $1/archiver/index.php?action=$2&value=$3 last;
    rewrite ^([^.]*)/([a-z]+[a-z0-9_]*)-([a-z0-9_-]+).html$ $1/plugin.php?id=$2:$3 last;
    if (!-e $request_filename) {
            return 404;
    }
            }
            location ~.*.(php|php5)?$ {
                 fastcgi_pass  127.0.0.1:9000;
                 fastcgi_index index.php;
                 include  fastcgi.conf;
            }
            access_log logs/access_discuz.log main;
        }
    bbs.conf

    ##下载&&安装BBS

    wget  http://ahdx.down.chinaz.com/201712/Discuz_X3.4_SC_UTF8_0101.zip   -->q不显示
    unzip Discuz_X3.4_SC_UTF8*.zip 
    rm Discuz_X3.4_SC_UTF8*.zip -rf
    cd /usr/local/nginx/html/bbs
    cp -rf upload/*  ./                       -->把文件直接放在bbs的根目录下,upload有安装脚本
    chmod 644 /usr/local/nginx/html/bbs/*
    chown -R nginx.nginx bbs/ -->涉及用户提交头像等操作,简单起见,先改为nginx,后进行修改

    页面显示:

    http://www.bbs.com/forum.php

    检查安装环境

     

    收回数据库权限:

    drop user bbs@'192.168.25.%';
    flush privileges;
    grant update,insert,delete,drop,select on bbs.*to bbs@'192.168.25.%' identified by 'root';

    删除安装程序,防止论坛再次安装

    rm -rf /usr/local/nginx/html/bbs/install

    image

    用户上传的数据:--》将来挂在到NFS上
    上传图片的路径:

    cd /usr/local/nginx/html/bbs/data/attachment/forum/201709/02
    

    查看头像文件上传路径

    cd /usr/local/nginx/html/bbs
    find ./ type f -name '*.jpg' -mmin -13 
    ./uc_server/data/avatar/000/00/00/01_avatar_small.jpg

    ---------------------------------------------------------------------------------------
    #伪静态化
    1.前台
        管理 ->全局 ->SOE设置 ->勾选URL静态化 ->提交
    2.添加如下内容到/extra/bbs.conf 默认的location / 里   [可以查看discuz的规则添加即可]

    rewrite ^([^.]*)/topic-(.+).html$ $1/portal.php?mod=topic&topic=$2 last;
    rewrite ^([^.]*)/article-([0-9]+)-([0-9]+).html$ $1/portal.php?mod=view&aid=$2&page=$3 last;
    rewrite ^([^.]*)/forum-(w+)-([0-9]+).html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3 last;
    rewrite ^([^.]*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D$4&page=$3 last;
    rewrite ^([^.]*)/group-([0-9]+)-([0-9]+).html$ $1/forum.php?mod=group&fid=$2&page=$3 last;
    rewrite ^([^.]*)/space-(username|uid)-(.+).html$ $1/home.php?mod=space&$2=$3 last;
    rewrite ^([^.]*)/blog-([0-9]+)-([0-9]+).html$ $1/home.php?mod=space&uid=$2&do=blog&id=$3 last;
    rewrite ^([^.]*)/(fid|tid)-([0-9]+).html$ $1/archiver/index.php?action=$2&value=$3 last;
    rewrite ^([^.]*)/([a-z]+[a-z0-9_]*)-([a-z0-9_-]+).html$ $1/plugin.php?id=$2:$3 last;
    if (!-e $request_filename) {
        return 404;
    }
    View Code

    image

    image
    3.测试并且重启服务
    image

  • 相关阅读:
    .Net 请求Web接口Post和Get方法
    搭建 Windows Server 2012 FTP 服务器
    使用C#开发HTTP服务器系列之访问主页
    使用C#开发HTTP服务器系列之Hello World
    使用C#开发HTTP服务器系列之实现Get和Post
    HTTP网络请求原理 (三) 简单模拟HTTP服务器
    HTTP请求报文和HTTP响应报文
    HTTP协议Keep-Alive模式详解和HTTP头字段总结
    今天修了一个bug,关于debug日志的问题
    HMM(隐马尔可夫),这篇讲的不错
  • 原文地址:https://www.cnblogs.com/ftl1012/p/discuz.html
Copyright © 2020-2023  润新知