phpBB3.2.X 中文版安装说明

在这里讨论PHPBB3.2.X相关的使用、安装等话题
Forum rules
再次重申: 请不要用站内信件问问题, 有问题直接发到相应版面上, 今后任何此类信件恕不回复.
Post Reply
User avatar
IOsetting
论坛管理员
论坛管理员
Posts: 3644
Joined: 2006-10-17 1:48

phpBB3.2.X 中文版安装说明

Post by IOsetting » 2018-11-26 19:36

环境准备
下载最新发布的版本, 请前往新闻公告版面
基于MySQL运行phpBB3.2.X 要求的各软件版本如下
  • Nginx or Apache
    php-fpm: 如果使用Nginx, 需要使用php-fpm作为fastcgi服务
  • PHP: 最低5.4.7, 建议5.6以上, 支持7.X. 需要开启的模块:
    JSON, XML, MySQLi, GD 或 Imagemagick, Zlib
  • MySQL: 最低3.23, 建议5.6以上
Nginx 配置文件
在phpBB3.2中已经默认使用Restful URL, 例如升级时, 使用的地址是 forum/install/app.php/update, FAQ页面的地址就是 forum/app.php/help/faq , 在论坛安装完成之后, 虽然还可以沿用传统的URL传参形式, 但是要追求完美的话还是要把rewrite加上.
程序中自带的.httaccess能直接工作于Apache, 但是Nginx需要单独配置. 在编写nginx配置时还有一个考虑就是安全问题. 现在引入那么多第三方库, 出现漏洞的风险是非常大的, 要避免这些第三方库带来的安全问题, 首先就是禁止外界直接访问. 以下是Nginx配置文件例子, 可以根据自己的实际情况修改.

Code: Select all

server {
    listen       80;
    server_name  www.phpbbchina.com;
    access_log  logs/phpbbchina.access.log  main;
 
    location / {
        root   /var/wwwroot/phpbbchina;
        index  index.html index.htm index.php;
    }
 
    location /forum/app.php {
        root   /var/wwwroot/phpbbchina;
        index index.html index.php;
 
        location ~ \.php(/|$) {
            include fastcgi_params;
            fastcgi_split_path_info ^(.+\.php)(/.*)$;
            fastcgi_param PATH_INFO $fastcgi_path_info;
            fastcgi_param SCRIPT_FILENAME /var/wwwroot/phpbbchina$fastcgi_script_name;
            fastcgi_pass   127.0.0.1:9000;
        }
    }
    
    # --------------------------------------- for installer
    # Correctly pass scripts for installer
    location /forum/install/ {
        root   /var/wwwroot/phpbbchina;
        index index.html index.php;
        # phpBB uses index.htm
        try_files $uri $uri/ @rewrite_installapp;

        # Pass the php scripts to fastcgi server specified in upstream declaration.
        location ~ \.php(/|$) {
            # Unmodified fastcgi_params from nginx distribution.
            include fastcgi_params;
            # Necessary for php.
            fastcgi_split_path_info ^(.+\.php)(/.*)$;
            fastcgi_param PATH_INFO $fastcgi_path_info;
            fastcgi_param SCRIPT_FILENAME /var/wwwroot/phpbbchina$fastcgi_script_name;
            fastcgi_param DOCUMENT_ROOT /var/wwwroot/phpbbchina;
            try_files $uri $uri/ /forum/install/app.php$is_args$args;
            fastcgi_pass   127.0.0.1:9000;
        }
    }

    location @rewrite_installapp {
        rewrite ^/forum/(.*)$ /forum/install/app.php/$1 last;
    }
    # -------------------------------------- for installer
 
    # 禁止访问内部phpbb文件
    location ~ /forum/(bin|cache|config|ext|files|images/avatars/upload|includes|language|phpbb|
store|vendor|config\.php|common\.php).* {
        deny all;
        internal;
    }
 
    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    location ~ \.php$ {
        root           /var/wwwroot/phpbbchina;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /$document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
}
接下来的安装步骤与phpBB3.0.X无异, 可以直接参考 phpBB3.0.X 中文版安装说明

User avatar
IOsetting
论坛管理员
论坛管理员
Posts: 3644
Joined: 2006-10-17 1:48

Re: phpBB3.2.X 中文版安装说明

Post by IOsetting » 2018-11-28 0:28

关于Nginx 配置文件中 location匹配的优先级说明

规则是:
先精确匹配, 匹配上哪个就立即用哪个;
然后普通匹配, 不管是否匹配上, 继续进行正则匹配;
如果正则匹配不上, 则回退至上一个普通匹配.

各匹配类型内的顺序是:
其中普通匹配没有顺序之分, 哪个匹配最精确使用哪个location,
而正则匹配按照规则的书写顺序进行, 只要匹配上哪个就用哪个

Code: Select all

=           精确匹配, 匹配后停止后续匹配, 直接执行该匹配后的configuration
[空格]       前缀匹配. 匹配后继续更长前缀匹配和正则匹配
^~          非正则匹配,匹配该规则后,停止继续正则匹配
~           区分大小写的正则匹配, 按顺序匹配,一旦匹配上即停止后续匹配
~*          不区分大小写的匹配, 一旦匹配即停止后续匹配
所以nginx配置文件的书写顺序建议是:
先写 = 号(精确匹配)部分,
然后写[空格] 前缀匹配部分,
然后写^~这种匹配即停止的前缀匹配,
最后写正则匹配

gbeee
新手入门
新手入门
Posts: 26
Joined: 2018-11-27 1:34

phpBB3.2.X 中文版安装说明

Post by gbeee » 2018-11-30 19:27

ok

Post Reply