5 Star 13 Fork 4

youyiio / BeyongCms

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
Apache-2.0

BeyongCms内容管理系统(简称BeyongCms)

BeyongCms系统基于ThinkPHP5.1框架的轻量级内容管理系统,适用于企业Cms, 个人站长等,针对移动App、小程序优化;提供完善简洁的项目文档,方便开发人员进行二次开发。 支持模块式开发,方便平台扩展及第三方进行二次开发。专注于个人站长、中小企业客户,提供基础平台功能及丰富的应用扩展, 支持PC和移动场景,满足企业建站系统、后台管理框架、App后台开发、微信小程序开发、小程序开发框架、小程序API、小程序开发等实际二次开发场景。 其主要特性包括:

  • 基于PHP最流行的ThinkPHP5.1框架,web端采用jquery+bootstrap框架
  • 用户系统,邮箱、手机注册|登录支持
  • 文章系统,文章栏目管理、评论审核管理
  • 灵活的角色权限控制,RBAC管理
  • crontab定时任务;window下使用计划任务;linux下使用crontab
  • 主题系统;支持主题自定义开发;主题切换等
  • 插件系统
  • 站长特性支持,友链管理,Sitemap地图,收录检测,相关推荐,热门推荐等
  • 默认Composer第三方库支持,PHPQuery,think-queue
  • Phpspreadsheet支持数据报表导出
  • Swoole和Swoole协程支持
  • 针对App及小程序的api优化
  • 阿里云和七牛云OSS支持
  • 支持文章全文检索(开发中,支持ElasticSearch)

支持官网: https://www.beyongcms.com 交流QQ群1: 60916041

ThinkPHP5.1的运行环境要求PHP7.0及以上。

##软件架构

系统支持Linux/Window/Mac OS三大平台; 软件架构采用nginx/apache + PHP + Mysql(MariaDB) [+redis] 的经典WEB架构,因为简单易于理解,且方便部署,门槛低; 理论上可支持SQL server, Oracle, Postgre SQL, MongoDB等,但未经充分测试。

安装教程

前期准备

准备好您的域名,并设置好指向; 安装apache/nginx, php及Mysql; 创建数据库,并分配数据库帐号密码(不建议用root),当前BeyongCms不支持帮助用户创建数据库;

nginx配置[推荐nginx]

      location / {
          if (!-e $request_filename) {
             rewrite ^(.*)$ /index.php?s=/$1 last;
             rewrite ^(.*)$ /index.php/$1 last;
          }
      }

      # 静态资源配置start: 
      # nginx发现文件不存时,尽早404,不向后匹配规则,停止搜索,否则会按最后匹配的规则;
      location ^~ /static/ {
          
      }
      location ^~ /upload/ {
          
      }
      ## 避免模板被查看, 目录下php文件被禁止执行
      location ~ ^/theme/.*\.(html|php)/?.*$ {
          deny all;
          #return 404;
      }
      ## 若此规则调前,优先匹配当前规则??!(window平台无此问题)
      location ~ ^/theme/ {
          
      }
      # 静态资源配置end
      
      location ~* /(.git|.svn) {
          deny all;
      }
      
      location ~ \.php/?.*$ {
          fastcgi_pass php70cgi;
          fastcgi_index  index.php;

          fastcgi_split_path_info ^(.+\.php)(/.*)$;
          fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
          fastcgi_param PATH_INFO $fastcgi_path_info;
          include        conf/fastcgi_params;
          
          include limit/limit_condition.conf;
          include limit/black_list.conf;
      }

composer安装依赖

根目录下执行

composer update

自动安装引导

删除data/install.lock文件,如果存在的话; 浏览器中输入: http://your_domain; image

管理后台

浏览器输入: http://your_domain/admin image image

站点SEO优化配置

后台进入 系统管理 -> 系统配置 -> SEO配置 image

启动定时及消息队列

修改config/queue.config文件 'default' => 'cms:queue', 改为 'default' => 'cms:queue:your_project', 避免如果你安装多份的BeyongCms导致的消息冲突;

Window下

start_queue.bat start_timer.bat

Linux下

sh start_queue.sh sh start_timer.bat

Swoole模式的启动方式

Window下

start_swoole.bat

Linux下

start_swoole.sh

系统的目录结构如下:

POROJECT_NAME  WEB部署目录(或者子目录)
|-─addons                附加插件
├─application           应用目录
│  ├─admin             管理后模块
│  ├─common            公共模块
│  ├─cms               CMS模块,站点及官网前端
│  └─install           自动安装向导
├─config                应用配置目录
├─data                  数据存储目录(资源数据,安装数据,临时数据,备份数据)
│  ├─assets            资源数据
│  ├─backup            备份数据
│  ├─install           安装数据及配置数据
│  └─runtime           临时数据(ThinkPHP的runtime目录移到这)
├─extend                扩展目录(一些常用的库--非composer库)
├─route                 路由定义目录
│  ├─cms.php           Cms模块的路由定义(优化搜索引擎收录)
│  └─route.php.        通用的路由定义
├─public                WEB目录(对外访问目录)
│  ├─static            全局静态文件(img,css,js,fonts)
│  ├─theme             主题模板目录
│    ├─classic          主题目录(主题名称:classic)
|       ├─static        静态文件夹(img,css,js,fonts)
|       ├─tpl           主题View前端模板
│       ├─Layui.php       Paginator分页类(名称自定义)
│       ├─paginate.php    paginate配置文件
│       └─theme.php       theme配置信息(包含自适应,文章图片,广告图配置)
|    ├─ .....           其他模板
│  ├─upload            上传目录(图片、文件、ueditor上传目录)
│  ├─index.php         入口文件
│  ├─router.php        快速测试文件
│  └─.htaccess         用于apache的重写
├─check_env.sh          Linux权限检测及调整脚本
├─start_queue.bat       Window消息队列启动脚本
├─start_queue.sh        Linux消息队列启动脚本
├─start_swoole.bat      Window Swoole启动脚本(使用了swoole官方的cygwin)
├─start_swoole.sh       Linux swoole启动脚本
├─start_timer.bat       Window定时启动脚本(增加执行计划)
├─start_timer.sh        Linux定时启动脚本(添加crontab)
Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright [yyyy] [name of copyright owner] Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

简介

BeyongCms系统基于ThinkPHP5.1框架的轻量级内容管理系统,适用于企业Cms, 个人站长等,针对移动App、小程序优化;提供完善简洁的项目文档,方便开发人员进行二次开发。 支持模块式开发,方便平台扩展及第三方进行二次开发。专注于个人站长、中小企业客户,提供基础平台功能及丰富的应用扩展,支持PC和移动场景,满足企业建站系统、后台管理框架、App后台开发、微信小程序开发、小程序开发框架、小程序API、小程序开发等实际二次开发场景。 展开 收起
PHP 等 5 种语言
Apache-2.0
取消

发行版 (2)

全部

贡献者

全部

近期动态

加载更多
不能加载更多了
PHP
1
https://gitee.com/youyiio/BeyongCms.git
git@gitee.com:youyiio/BeyongCms.git
youyiio
BeyongCms
BeyongCms
master

搜索帮助