多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
### 下载源码 [https://git.oschina.net/lostincoding/easyQA](http://https://git.oschina.net/lostincoding/easyQA) ### 运行环境 最低PHP5.4,推荐PHP7,并启用PDO或者Mysqli模块,推荐使用PDO MySQL推荐5.6.5及以上版本 除此之外,您还需要一个七牛账号用于存储图片,注册地址 [https://portal.qiniu.com/signup?code=3ln7n97luobiq](http://https://portal.qiniu.com/signup?code=3ln7n97luobiq) ### 1.配置您的网站首页地址 打开文件/application/config/config.php ~~~ $config['base_url'] = 'http://your-domain.com/'; ~~~ ### 2.配置公司信息 打开文件/application/config/site_setting.php 其它的主要的网站配置都在这个文件里 ~~~ //公司信息 $config['company_info'] = array( 'short_name' => '香果科技', 'full_name' => '深圳市香果科技有限公司', 'domain' => '52xiangguo.com', 'home_url' => 'http://52xiangguo.com/', ); ~~~ ### 3.配置网站信息 打开文件/application/config/site_setting.php ~~~ //网站信息 $config['site_info'] = array( 'version' => '0.1.2.20170108_base', 'domain' => 'easyqa.com', 'home_url' => 'http://easyqa.com/', 'id' => 'easyqa', 'name' => 'easyQA', 'brief' => 'IT交流学习社区', 'meta' => array( 'description' => '这是一个供IT人交流学习的社区,可以问答,可以讨论,也有最新的IT行业资讯。', 'keywords' => 'IT问答网站 IT技术 IT资讯', ), 'icp' => array( 'num' => '备案号', 'link' => 'http://www.miitbeian.gov.cn/', ), 'tongji' => '<span style="display: none;">统计代码</span>', ); ~~~ ### 4.邮箱配置 用来发送注册邮件或者找回密码什么的,请确保您提供的邮箱已开通了SMTP服务。 ~~~ //邮箱设置 $config['email'] = array( 'CharSet' => 'utf-8', 'SMTPDebug' => 0, //如果是qq邮箱,只支持加密发送邮件,所以请填写'tls',其它不需加密发送邮件的请留空即可 'SMTPSecure' => '', 'Host' => 'SMTP地址,如smtp.qq.com', //端口,端口一般为25,SMTPSecure为tls时端口一般为587,具体是多少请咨询SMTP供应商 'Port' => 25, //注意!Username和From中的发件人来源地址要保持一致 'Username' => '邮箱账号,如123456@qq.com', 'Password' => '邮箱密码,如果是QQ邮箱,现在已使用了授权码,请到QQ邮箱账号设置里生成授权码', 'From' => array('发件人来源地址,如123456@qq.com', '发件人来源名称,如no-reply'), ); ~~~ #### 示例1,未加密的、普通SMTP邮箱配置: ~~~ //邮箱设置 $config['email'] = array( 'CharSet' => 'utf-8', 'SMTPDebug' => 0, //如果是qq邮箱,只支持加密发送邮件,所以请填写'tls',其它不需加密发送邮件的请留空即可 'SMTPSecure' => '', 'Host' => 'smtp.xxx.com', //端口,端口一般为25,SMTPSecure为tls时端口一般为587,具体是多少请咨询SMTP供应商 'Port' => 25, //注意!Username和From中的发件人来源地址要保持一致 'Username' => 'no-reply@xxx.com', 'Password' => 'xxxxxx', 'From' => array('no-reply@xxx.com', 'no-reply'), ); ~~~ #### 示例2,加密的SMTP邮箱配置,目前QQ邮箱强制使用加密发送,适用于此配置: ~~~ //邮箱设置 $config['email'] = array( 'CharSet' => 'utf-8', 'SMTPDebug' => 0, //如果是qq邮箱,只支持加密发送邮件,所以请填写'tls',其它不需加密发送邮件的请留空即可 'SMTPSecure' => 'tls', 'Host' => 'smtp.qq.com', //端口,端口一般为25,SMTPSecure为tls时端口一般为587,具体是多少请咨询SMTP供应商 'Port' => 587, //注意!Username和From中的发件人来源地址要保持一致 'Username' => '123456@qq.com', 'Password' => '邮箱密码,如果是QQ邮箱,现在已使用了授权码,请到QQ邮箱账号设置里生成授权码', 'From' => array('123456@qq.com', 'no-reply'), ); ~~~ ### 5.加密key配置 ~~~ //加密使用的key,一定要32位,不能多也不能少,主要用来生成邮件验证或者找回密码时的url加密参数 $config['encrypt_key'] = 'qweqweqweqweqweqweqweqweqweqweqw'; //md5加密使用的salt,最好是32位,主要用来存储加密的密码 $config['salt'] = 'asdasdasdasdasdasdasdasdasdasdas'; ~~~ ### 6.第三方账号登录key配置,如果没有,可以忽略 ~~~ //Github登录配置 $config['github'] = array( 'client_id' => '', 'client_secret' => '', 'redirect_uri' => 'http://' . $config['site_info']['domain'] . '/account/github_callback', ); //微信登录配置 $config['weixin'] = array( 'appid' => '', 'secret' => '', 'redirect_uri' => 'http://' . $config['site_info']['domain'] . '/account/weixin_callback', ); //QQ登录配置 $config['qc'] = array( 'appid' => '', 'appkey' => '', 'callback' => 'http://' . $config['site_info']['domain'] . '/account/qc_callback', ); //微博登录配置 $config['weibo'] = array( 'WB_AKEY' => '', 'WB_SKEY' => '', 'WB_CALLBACK_URL' => 'http://' . $config['site_info']['domain'] . '/account/weibo_callback', ); //oschina登录配置 $config['oschina'] = array( 'client_id' => '', 'client_secret' => '', 'redirect_uri' => 'http://' . $config['site_info']['domain'] . '/account/oschina_callback', ); ~~~ ### 7.极验验证码配置 暂未启用验证码功能,不久将会完善。 ~~~ //Geetest配置,账号申请地址 http://www.geetest.com/ $config['geetest'] = array( 'open' => false, 'CAPTCHA_ID' => '', 'PRIVATE_KEY' => '', 'MOBILE_CAPTCHA_ID' => '', 'MOBILE_PRIVATE_KEY' => '', ); ~~~ ### 8.七牛配置 关于七牛的将在下方详解。 ~~~ //七牛配置,账号申请地址 https://portal.qiniu.com/signup?code=3ln7n97luobiq $config['qiniu'] = array( 'accessKey' => '', 'secretKey' => '', //公有空间,bucket名称 'static_bucket_name' => '', //bucket对应的域名 'static_bucket_domain' => '', //文件分隔符,用来模拟文件目录(不需要改动) 'delimiter' => '/', ); ~~~ ### 9.话题导航配置 ~~~ //话题导航 $config['topic_navs'] = array( '技术', '创意', '好玩', '招聘', '交易', '创业', 'js', 'php', 'python', 'java', 'mysql', 'ios', 'android', 'node.js', 'html5', 'linux', 'c++', 'css3', 'git', 'golang', 'ruby', 'vim', 'docker', ); ~~~ ### 10.友情链接配置 ~~~ //友情链接 $config['friendslink_lists'] = array( array('LostInCoding', 'http://lostincoding.com/'), ); ~~~ ### 11.数据库配置 打开文件/application/config/database.php ~~~ $db['default'] = array( 'dsn' => 'mysql:host=127.0.0.1;port=3306;dbname=easyqa', 'hostname' => '127.0.0.1', 'username' => 'root', 'password' => 'xxxxxx', 'database' => 'easyqa', 'dbdriver' => 'pdo', 'dbprefix' => '', 'pconnect' => false, 'db_debug' => (ENVIRONMENT !== 'production'), 'cache_on' => false, 'cachedir' => '', 'char_set' => 'utf8', 'dbcollat' => 'utf8_general_ci', 'swap_pre' => '', 'encrypt' => false, 'compress' => false, 'stricton' => true, 'failover' => array(), 'save_queries' => true, ); ~~~ # 数据库表的文件都在/private/sql目录中。 ### 12.七牛详细配置 #### 账号注册地址 [https://portal.qiniu.com/signup?code=3ln7n97luobiq](http://https://portal.qiniu.com/signup?code=3ln7n97luobiq) #### (1)登录七牛后首先创建一个对象存储,注意要选公开空间,存储区域最好选华东的吧。 ![](https://box.kancloud.cn/7d465c2de2ea26386031fb3b0ea0f9f2_521x586.jpg) #### (2)点进创建的存储空间可以看到bucket和对应的域名,当然也可以绑定自己的域名。 ![](https://box.kancloud.cn/ca569ba54fe9f5d06917ec73e714bcee_943x577.jpg) #### (3)样式分隔符设置,选一个感叹号吧。 ![](https://box.kancloud.cn/542441394f7c82745f797d4e225201b4_863x550.jpg) #### (4)新建一个图片样式,命名为avatar,用来控制显示头像尺寸。 ![](https://box.kancloud.cn/cd273ccf6f20ea4c080566aa1130566d_664x649.jpg) #### (5)获取秘钥,在右上角个人面板里的秘钥管理中可得到秘钥。 ![](https://box.kancloud.cn/13cbb9cfc1d0183f03f42dd81f1bf30a_317x458.jpg) ![](https://box.kancloud.cn/ddbd0ae4485a14caa6426db87d268806_1009x436.jpg) #### (6)配置文件/application/config/site_setting.php中关于七牛配置的相关信息(从第5步得到了秘钥信息,从第2步得到了bucket名称和对应的域名) ~~~ //七牛配置,账号申请地址 https://portal.qiniu.com/signup?code=3ln7n97luobiq $config['qiniu'] = array( 'accessKey' => '', 'secretKey' => '', //公有空间,bucket名称 'static_bucket_name' => '', //bucket对应的域名 'static_bucket_domain' => '', //文件分隔符,用来模拟文件目录(不需要改动) 'delimiter' => '/', ); ~~~ #### (7)上传系统头像与皮肤图片到七牛 系统头像与皮肤图片下载地址:[https://git.oschina.net/lostincoding/easyQA/attach_files](https://git.oschina.net/lostincoding/easyQA/attach_files) ![](https://box.kancloud.cn/e1c5cb4288a7d55be4395415834d4bee_606x297.jpg) ### 1.上传系统头像,一定要设置路径前缀为avatar/s/ ![](https://box.kancloud.cn/c95f713dca38c703d0bd3adaf8db5cbf_989x648.jpg) ### 2.上传皮肤,上传original目录中的图片时一定要设置路径前缀为skins/original/ 上传little目录中的图片时一定要设置skins/little/ ### 3.上传完皮肤后,打开文件/private/sql/初始化数据.sql,请使用您在七牛中的bucket域名替换,然后运行sql,这将初始化皮肤表。 # 最后,绑定域名后请认真的设置一下七牛的防盗链,另外每邀请一位好友注册并认证会获取每个月多5G的流量,最多40G,这个增加是永久的,邀请一次,每个月都加。七牛登录后右上角“个人面板”里有“邀请好友”按钮。 #### Step1![](https://box.kancloud.cn/bb03bb23e21aa6aadba62bda67c2827e_894x580.jpg) #### Step2![](https://box.kancloud.cn/915703f90102b20e40aff83bc34bf34e_770x580.jpg)