{"id":14972204,"url":"https://github.com/sunkaifei/flycms","last_synced_at":"2025-10-26T10:03:10.310Z","repository":{"id":154412671,"uuid":"158529499","full_name":"sunkaifei/FlyCms","owner":"sunkaifei","description":"FlyCms 是一个类似知乎以问答为基础的完全开源的JAVA语言开发的社交网络建站程序，基于 Spring Boot+Bootstrap3+MyBatis+MySql+Solr +Ehcache应用架构，专注于社区内容的整理、归类和检索，它集合了问答，digg，wiki 等多个程序的优点，帮助用户轻松搭建专业的知识库和在线问答社区。业务模块包括：权限管理，会员管理，角色管理，定时任务管理（调度管理），问答管理，文章管理，分享管理，短信接口管理和邮件系统发送（注册、找回密码、邮件订阅），跨域登录，消息推送，全文检索、前端国际化等等众多模块，等您自己来体验！","archived":false,"fork":false,"pushed_at":"2019-12-21T04:44:30.000Z","size":27821,"stargazers_count":644,"open_issues_count":5,"forks_count":251,"subscribers_count":36,"default_branch":"master","last_synced_at":"2025-04-04T22:07:13.345Z","etag":null,"topics":["bootstrap3","ehcache","flycms","freemarker","i18n","lombok","mybatis","mysql","quartz","solr","spring-boot"],"latest_commit_sha":null,"homepage":"http://www.28844.com","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sunkaifei.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-11-21T10:16:43.000Z","updated_at":"2025-03-26T11:59:33.000Z","dependencies_parsed_at":null,"dependency_job_id":"bab5c893-1716-41e6-b205-c5012d117020","html_url":"https://github.com/sunkaifei/FlyCms","commit_stats":{"total_commits":26,"total_committers":1,"mean_commits":26.0,"dds":0.0,"last_synced_commit":"abbaa5a8daefb146ad4d61027035026b052cb414"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunkaifei%2FFlyCms","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunkaifei%2FFlyCms/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunkaifei%2FFlyCms/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunkaifei%2FFlyCms/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sunkaifei","download_url":"https://codeload.github.com/sunkaifei/FlyCms/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247256112,"owners_count":20909240,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bootstrap3","ehcache","flycms","freemarker","i18n","lombok","mybatis","mysql","quartz","solr","spring-boot"],"created_at":"2024-09-24T13:46:33.054Z","updated_at":"2025-10-26T10:03:05.270Z","avatar_url":"https://github.com/sunkaifei.png","language":"Java","readme":"## 项目说明\nFlyCms 是一个类似知乎以问答为基础的完全开源的JAVA语言开发的社交网络建站程序，基于 Spring Boot+Bootstrap3+MyBatis+MYSQL+Solr+Ehcache 应用架构，专注于社区内容的整理、归类和检索，它集合了问答，digg，wiki 等多个程序的优点，帮助用户轻松搭建专业的知识库和在线问答社区。 业务模块包括：权限管理，会员管理，角色管理，定时任务管理（调度管理），问答管理，文章管理，分享管理，短信接口管理和邮件系统发送（注册、找回密码、邮件订阅），跨域登录，消息推送，全文检索、前端国际化等等众多模块等您自己来体验！ \n  \n##### 开放源码，便捷开发  \n基于Spring Boot版本开发，利用成熟开发技术，开放系统源码和开发文档，让二次开发更容易。  \n\n##### 弹性设计，任性定制  \nUI设计简约又灵活， Bootstrap定制模板让用户自由发挥，让自己的社区更具独特个性。  \n\n##### 管理后台，轻松掌控\n管理后台功能实用简约，只需轻点功能开关，即可完成系统配置，属于你的知识社区一挥而就。\n\n##### 轻快智能，更懂社交  \nFlyCms比论坛更开放，比资讯网站更了解用户，以用户为中心，更懂社交，更注重内容的分析和分享。  \n\n##### 用戶互助，精准推送  \n用户之间相互解答，分享产品使用心得，只向用户推送自己关心的消息，扩大价值，压缩干扰。  \n\n \n\n\u003e 使用说明：请保留页面底部的 *powered by 97560. com* 感谢支持\n\n\n在线地址: [97560.com](http://www.97560.com)\n\n## 技术栈\n\n- JDK8\n- Spring-Boot\n- MyBatis\n- Freemarker\n- MySQL\n- Bootstrap3\n- Solr\n- Quartz\n- i18n\n- Ehcache\n\n## 特性\n\n- 社区兼容性（IE9+）\n- 页面自适应布局\n- 本地登录，手机注册, 邮件注册\n- 登录时有验证码，尝试登录次数的限制\n- 使用 `Spring-Boot` 开发\n- MyBatis操作数据库\n- 目前sql语句只支持MySQL，如果要切换数据库，需要手动修改代码 \n- Solr提供搜索和前台部分页面列表查询和分页\n\n\n## 网站功能\n##### 前台功能\n- 问答栏目，用户可发布奖励积分邀请回答问题\n- 答案发布管理统计等等；\n- 文章栏目，专家专栏，后台设置专家组可发布专业性文章资讯\n- 文章栏目可分类，文章栏目目前可无限极分类\n- 分享栏目，用户可分享发布如百度网盘资源地址，电影地址等等，赚取积分\n- 各个栏目话题聚合内容，话题可编辑删除，审核；\n- 用户个人首页，可查看自己关注的用户和自己发布的内容\n- 用户内容收藏\n- 用户积分管理充值\n- 用户绑定手机号码\n- 用户绑定邮箱地址\n- 用户密码找回\n- 用户手机号码注册，需后台绑定运营商API；\n- 用户邀请注册奖励\n\n##### 网站后台\n- 网站运营基本信息编辑\n- 用户注册相关信息管理\n- 用户手机运营商信息管理（目前只支持阿里大鱼）\n- 网站发送邮箱绑定，邮箱模板设置\n- 会员信息管理、审核\n- 问答管理\n- 答案管理\n- 文章管理、文章分类\n- 话题管理\n- 分享管理\n- 友情链接管理\n- 积分奖励规则管理\n- 违禁关键词、敏感词过滤设置\n- 增加定时任务管理，通过后台设置启动、关闭，执行任务日志\n\n#### 二次开发准备\n\n1. 开发环境要在IDE里装上lombok插件，否则编译器会报错\n2. 程序部署建议使用Maven的assembly插件实现自定义打包方式\n3. 项目已经接入了solr，程序安装需要先运行solr，solr已调试好，可直接启动，使用方法可访问官网查看；\n4. 项目用到了阿里大于jar包，Maven时无法使用，可以下载doc/dysmsapi.zip，然后放本地的Maven的.m2\\repository\\com\\alibaba\\aliyun\\目录下\n5. 搜索和首页列表后期大部分前台列表准备都使用solr，所以要先下载目录下的solr，然后运行后启动程序，不然报错！\n\n#### solr原来的目录里上传的时候jar文件无法上传，压缩后提示上传文件不能大于10MB\n\n## 如果需要的话进群空间下载，QQ群：`211378508`\n## Windows下solr启动  \n- 比如solr放E:/盘下面，首先打开CMD窗口\n- `e: `回车\n- `cd e:/solr/bin` 回车\n- `solr start -p 8983` 回车，等待启动成功\n- `solr stop -p 8983` 这个是停止solr命令\n\n## Linux下启动\n- `cd /root/webapp/solr`\n- `./bin/solr start -p 8983 -force` 回车，等待启动成功\n- `./bin/solr stop -p 8983 -force` 这个是停止solr命令\n\n\n- 创建数据库pybbs, 字符集utf8，如果想支持emoji，就要选择utf8mb4字符集（仅限使用MySQL数据库）  \n- `git clone https://gitee.com/could/FlyCms` \n- 将项目下的 `/doc/flycms.sql` 文件导入到数据库  \n- 前台页面访问 `http://localhost`  \n- 后台页面访问 `http://localhost/system/login` 用户名: flycms 密码: 123456  \n\n## 打包部署开发环境  \n- 创建数据库flycms, 字符集utf8，如果想支持emoji，就要选择utf8mb4字符集（仅限使用MySQL数据库）  \n- 将项目里的application.yml文件复制一份，重新命名application-prod.yml，并修改里面的配置项\n- 运行 `mvn clean compile package`  \n- 拷贝 `target/FlyCms.jar` 到你想存放的地方  \n- 运行 `java -jar FlyCms.jar --spring.profiles.active=prod \u003e FlyCms.log 2\u003e\u00261 \u0026` 项目就在后台运行了  \n- 将项目下的 `flycms.sql` 文件导入到数据库  \n- 关闭服务运行 `ps -ef | grep FlyCms.jar | grep -v grep | cut -c 9-15 | xargs kill -s 9`\n- 查看日志运行 `tail -200f FlyCms.log`\n\n### 建议用assembly打包方式  \n\n### 前端标签使用示范\n```\n\u003c@fly_userpower groupName=\"技术专家组\"\u003e  \n     \u003cnav class=\"list-group mt30\"\u003e  \n         \u003ca href=\"/ucenter/article/add\" class=\"list-group-item active\"\u003e发布文章\u003c/a\u003e  \n     \u003c/nav\u003e  \n\u003c/@fly_userpower\u003e  \n```\n  \n  \n- IDEA打包  \n![image](doc/db.png)  \n- 打包后的的文件目录结构，`resources`目录里只要`application.yml`一个文件就可以了  \n\n![image](doc/dbhh.png)  \n\n\n## 注意事项\n- 由于数据库内容被我清空了，有时候我上传的solr里的数据我可能没清空，导致首页及频道页面查询不到数据会报错，解决方法：运行solr前进入`E:\\solr\\server\\solr\\info\\data` 目录下删除里面的三个文件夹即可，后期会增加后台删除功能  \n\n## 关于主题\n\n本项目配置的结构目录非常方便主题开发，如果你想适配一套自己喜欢的主题，可以按照 `views/templates` 目录下的PC或者移动端的文件夹结构开发，然后进入后台设置新加的模板即可。\n\n## 反馈\n\n原来28844.com我转让了，新的演示网站抽个时间给架设上！（[http://www.97560.com](http://www.97560.com)）\n\nQQ群：`211378508`\n\n*提问题的时候请将问题重现步骤描述清楚*\n\n\n## 贡献\n\n欢迎大家提 issues 及 pr \n\n## 页面部分演示截图\n![image](doc/首页.png)\n![image](doc/1.png)\n![image](doc/1.png)\n![image](doc/2.jpg)\n![image](doc/3.png)\n![image](doc/4.png)\n\n## 捐赠\n\n![image](doc/支付宝收款码.jpg)\n![image](doc/微信支付码.jpg)\n\n**如果觉得这个项目对你有帮助，欢迎捐赠！**\n\n## License\n\nMIT","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsunkaifei%2Fflycms","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsunkaifei%2Fflycms","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsunkaifei%2Fflycms/lists"}