部署框架
更新时间:2019-06-14
概述
您可以自行设计和编写网站,也可以使用已有的网站框架。BCH兼容市面上主流的网站框架,可以满足大多数用户的需求:
框架 | 类型 | 版本 | php5.2 | php5.3 | php5.4 | php5.6 | php7 |
---|---|---|---|---|---|---|---|
dedecms | CMS | 5.7 | 支持 | 支持 | 支持 | 支持 | 支持 |
thinkphp | 网站 | 3.2.3 | 不支持 | 支持 | 支持 | 支持 | 支持 |
discuz | 论坛 | 3.2_SC_UTF | 支持 | 支持 | 支持 | 不支持 | 不支持 |
wordpress | Blog | 4.5.3 | 支持 | 支持 | 支持 | 支持 | 支持 |
帝国cms | CMS | 7.2_SC_UTF8 | 支持 | 支持 | 支持 | 支持 | 不支持 |
phpcms | CMS | V9.5.10 | 支持 | 支持 | 支持 | 支持 | 不支持 |
ecshop | 电商 | 2.7.3_UTF8 | 支持 | 支持 | 不支持 | 不支持 | 不支持 |
destoon | 电商 | 6.0 | 支持 | 支持 | 支持 | 支持 | 支持 |
zblog | Blog | 1.4 | 支持 | 支持 | 支持 | 支持 | 支持 |
shopex | 电商 | 4.8.5 | 支持 | 支持 | 支持 | - | - |
joomla | CMS | 3.4.5 | 不支持 | 支持 | 支持 | - | - |
phpok | 网站 | 4.4.071 | 支持 | 支持 | 支持 | - | - |
php168 | CMS | V7.0SP | 支持 | 支持 | 支持 | - | - |
微擎 | 微信 | 0.7 | 不支持 | 不支持 | 支持 | - | - |
Metinfo | CMS | 5.3 | 支持 | 支持 | 支持 | - | - |
corethink | 框架 | 1.3.0 | 支持 | 支持 | 支持 | - | - |
淘宝客 | 框架 | - | 支持 | 支持 | 支持 | - | - |
HDWiki | 框架 | - | 支持 | 支持 | 支持 | - | - |
feifeicms | 框架 | - | 支持 | 支持 | 支持 | - | - |
大商创 | 框架 | V1.9 | 不支持 | 支持 | 不支持 | - | - |
drupal | 框架 | - | 不支持 | 不支持 | 不支持 | 不支持 | 支持Drupal安装后无法访问问题 |
octobercms | 框架 | - | - | - | - | 支持 | 支持 |
Flarum | 框架 | beta4 | - | - | - | 支持 | 不支持 |
我们以Wordpress和Discuz为例,介绍框架的安装方法,具体操作请参看:使用WordPress快速建站、使用Discuz搭建论坛。
框架安装问题
Drupal安装后无法访问问题
drupal安装后需要上传对应的nginx配置bcloud_nginx_user.conf到 /webroot 目录下。drupal 的 nginx 配置如下(修改自drupal官方配置):
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
# Very rarely should these ever be accessed outside of your lan
location ~* \.(txt|log)$ {
allow 192.168.0.0/16;
deny all;
}
location ~ \..*/.*\.php$ {
return 403;
}
location ~ ^/sites/.*/private/ {
return 403;
}
# Allow "Well-Known URIs" as per RFC 5785
location ~* ^/.well-known/ {
allow all;
}
# Block access to "hidden" files and directories whose names begin with a
# period. This includes directories used by version control systems such
# as Subversion or Git to store control files.
location ~ (^|/)\. {
return 403;
}
location / {
# try_files $uri @rewrite; # For Drupal <= 6
try_files $uri /index.php?$query_string; # For Drupal >= 7
}
location @rewrite {
rewrite ^/(.*)$ /index.php?q=$1;
}
# Don't allow direct access to PHP files in the vendor directory.
location ~ /vendor/.*\.php$ {
deny all;
return 404;
}
# In Drupal 8, we must also match new paths where the '.php' appears in
# the middle, such as update.php/selection. The rule we use is strict,
# and only allows this pattern with the update.php front controller.
# This allows legacy path aliases in the form of
# blog/index.php/legacy-path to continue to route to Drupal nodes. If
# you do not have any paths like that, then you might prefer to use a
# laxer rule, such as:
# location ~ \.php(/|$) {
# The laxer rule will continue to work if Drupal uses this new URL
# pattern with front controllers other than update.php in a future
# release.
location ~ '\.php$|^/update.php' {
fastcgi_split_path_info ^(.+?\.php)(|/.*)$;
# Security note: If you're running a version of PHP older than the
# latest 5.3, you should have "cgi.fix_pathinfo = 0;" in php.ini.
# See http://serverfault.com/q/627903/94922 for details.
include fastcgi_params;
# Block httpoxy attacks. See https://httpoxy.org/.
fastcgi_param HTTP_PROXY "";
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param QUERY_STRING $query_string;
fastcgi_intercept_errors on;
# PHP 5 socket location.
#fastcgi_pass 127.0.0.1:9000;
# PHP 7 socket location.
fastcgi_pass 127.0.0.1:9000;
}
# Fighting with Styles? This little gem is amazing.
# location ~ ^/sites/.*/files/imagecache/ { # For Drupal <= 6
location ~ ^/sites/.*/files/styles/ { # For Drupal >= 7
try_files $uri @rewrite;
}
# Handle private files through Drupal. Private file's path can come
# with a language prefix.
location ~ ^(/[a-z\-]+)?/system/files/ { # For Drupal >= 7
try_files $uri /index.php?$query_string;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
expires max;
log_not_found off;
}
常见建站框架支持问题
框架 | 类型 | 版本 | php5.2 | php5.3 | php5.4 | php5.6 | php7 | 市场占有率 | 备注 |
---|---|---|---|---|---|---|---|---|---|
dedecms | CMS | 5.7 | 支持 | 支持 | 支持 | 支持 | 支持 | 37.3% | - |
thinkphp | 网站 | 3.2.3 | 不支持 | 支持 | 支持 | 支持 | 支持 | 8.7% | 该版要求php版本大于5.2 |
thinkphp | 网站 | 5.0 | 不支持 | 不支持 | 支持 | 支持 | 支持 | - | 要求php版本大于5.3 5.0版本文件结构进行更改,文件放于public下 进行根目录重置-原有配置也要添加 location / { root /home/bae/app/public; index index.php index.html index.htm; } |
discuz | 论坛 | 3.2_SC_UTF | 支持 | 支持 | 支持 | 不兼容 | 不支持 | 7% | - |
discuz | 论坛 | 3.3 | 支持 | 支持 | 支持 | 不支持 | 不支持 | - | mysql 版本 5.5 不兼容,建议用户使用RDS + PHP7 |
wordpress | Blog | 5.4.3 | 支持 | 支持 | 支持 | 支持 | 支持 | 6.3% | 官方说明要5.2.4版本以上,我们的5.2是5.2.17 不一定完全兼容 |
帝国cms | CMS | 7.2_SC_UTF8 | 支持 | 支持 | 支持 | 支持 | 不支持 | 4.7% | - |
phpcms | CMS | V9.5.10 | 支持 | 支持 | 支持 | 支持 | 不支持 | 3.6% | - |
ecshop | 电商 | 2.7.3_UTF8 | 支持 | 支持 | 不支持 | 不支持 | 不支持 | 3.3% | ecshop本身问题造成PHP5.4存在兼容性问题,建议用户使用5.3及以下版本 |
destoon | 电商 | 6.0 | 支持 | 支持 | 支持 | 支持 | 支持 | 1.2% | - |
zblog | Blog | 1.4 | 支持 | 支持 | 支持 | 支持 | 支持 | 1.1% | - |
shopex | 电商 | 4.8.5 | 支持 | 支持 | 支持 | - | - | 0.66% | php5.2的zend optimizer默认启用,用户如果希望关闭,可以通过在webroot下的php.ini中加入来关闭 zend_optimizer.optimization_level=0 zend_optimizer.enable_loader=0 php.5.3/5.4的zend guard loader默认关闭,用户可以通过在php.ini中加入zend_loader.enable=1的方式启用 shopex 和apache兼容性更好,可能需要用户自己设置下nginx |
joomla | CMS | 3.4.5 | 不支持 | 支持 | 支持 | - | - | 0.32% | 官方说明要php5.3.10以上版本 |
phpok | 网站 | 4.4.071 | 支持 | 支持 | 支持 | - | - | 0.07% | (沙盒)首页ui兼容性问题,后台页面验证码刷新不出。lighttpd也存在该问题(线上)正常 |
php168 | CMS | V7.0SP | 支持 | 支持 | 支持 | - | - | 0.3% | - |
微擎 | 微信 | 0.7 | 不支持 | 不支持 | 支持 | - | - | - | 该版要求php版本大于等于5.3,但5.3版本请求是空白,发生报错被微擎屏蔽了可能 |
Metinfo | CMS | 5.3 | 支持 | 支持 | 支持 | - | - | - | - |
YII | 框架 | 2.0 | 不支持 | 不支持 | 不支持 | - | - | - | 因为需要自行安装软件,所以传统的虚拟主机(包括阿里虚拟主机)都无法支持,建议用户使用BCC进行建站。 |
TPshop | 电商 | 1.2.7 | 不支持 | 不支持 | 不支持 | - | - | - | mysql需要5.5版本,代码中mysqli_get_server_info 获取版本显示的是5.0.51b |
PHPwind | 论坛 | - | - | - | - | - | - | - | - |
UCenter Home | 论坛 | - | - | - | - | - | - | - | - |
shopwwi | 综合 | S5 | 不支持 | 不支持 | 不支持 | - | - | - | 数据库用户名和密码限制了长度,无法正确输入用户名和密码,修改调整框架限制 |
xiaocms | 框架 | V6 | 不支持 | 不支持 | 不支持 | - | - | - | mysql命令兼容性限制,当前可以建议用户使用RDS |
corethink | 框架 | 1.3.0 | 支持 | 支持 | 支持 | - | - | - | 代码中/webroot/Application/Install/Controller/IndexController.class.php 的 152-162行,需要注释掉,SQL语句存在兼容性问题 //根据加密字符串更新admin密码的加密结果 // $new_admin_password = user_md5('admin', $auth); // $sql = <<<SQL // UPDATE `{$db_config["DB_PREFIX"]}admin_config` SET `value`='{$auth}' WHERE `name` = 'AUTH_KEY'; // UPDATE `{$db_config["DB_PREFIX"]}admin_user` SET `password`='{$new_admin_password}' WHERE `id` = 1; //SQL; // $result = $db_instance->execute($sql); // if (!$result) { // $this->error('写入系统加密KEY或管理员新密码出错!'); //} |
淘宝客 | 框架 | - | 支持 | 支持 | 支持 | - | - | - | - |
HDWiki | 框架 | - | 修改后支持 | 支持 | 支持 | - | - | - | 修改/install/install.php 409行和410行 maxlength 后面的值改成40 并且注释掉338~355行 |
feifeicms | 框架 | - | 支持 | 支持 | 支持 | - | - | - | hk环境需要./Lib/ThinkPHP/Lib/Think/Db/Driver/DbMysql.class.php 的58行增加,类似如下的db信息。 $config['hostname'] = 'sqld-hk.bcehost.com'; $config['hostport'] = 4050; $config['username'] = '-'; $config['password'] = '-'; $config['database'] 'msSFwnVPltetDmtaUZZG'; |
大商创 | 框架 | V1.9 | 不支持 | 支持 | 不支持 | - | - | - | 安装包比较大有500多MB,需要去除里面的中文文件,重新压缩zip并上传temp目录之后解压到webroot,需要注意的是一定要解压任务成功。 安装过程中需要注意的是使用PHP5.3 + 以及开启zend + 安装时选择使用已有数据库。 1. 需要到控制面板切换到PHP5.3 2. 在php.ini里面添加配置 zend_loader.enable=1 开启zend 重载之后生效 3. 安装的时候要直接点击选择已有数据库,否则会造成无法创建数据库。 |
phpMyadmin | 框架 | - | 不支持 | 不支持 | 不支持需要php5.5以上 | 支持 | - | - | phpMyAdmin太大了,直接用虚拟主机跑很重 , 而且有些命令我们的数据库也不支持,我们自己的phpmyadmin也是经过裁剪过的,所以建议用户帝国备份王这种或者phpminiadmin会好一些 |
drupal | 框架 | - | 不支持 | 不支持 | 不支持需要php5.5以上 | 不支持 | 支持,需要配置ngnix正常访问,配置文件见 Drupal安装后无法访问问题 | - | 安装mysql不兼容:\core\lib\Drupal\Core\Database\Driver\mysql\Install\Tasks.php 53行改成5.0.0 |
octobercms | 框架 | - | - | - | - | 支持 | 支持 | - | - |
Flarum | 框架 | beta4 | - | - | - | 支持 | 不支持 | - | PHP建议用户使用php5.6 如果mysql版本造成报错的话\vendor\flarum\core\src\Install\Console\InstallCommand.php 可以把211-213行注释掉 |
iwebshop | 网店 | 4.7 | - | - | 支持 | - | - | - | 安装的时候注意使用压缩包解压,防止出现文档破损(压缩包不能有中文) |
prestashop | 网店 | 1.5,1.6,1.7 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 | - | 安装过程各种报错,框架安装步骤较多,1.5可以安装成功,但是管理后台使用有问题 |
SDcms | CMS | 1.2 | 不支持 | 不支持 | 支持 | 支持 | 支持 | - | 该版要求php版本大于等于5.4 |