项目整合Discuz UCenter,整合discuzucenter
虽然个人非常不喜欢discuz,但没办法,市场就是力量,特别是对于整合discuz论坛的朋友,你如果不想用两套系统的话,整合UCenter是必然的事,虽然无趣,但不得不这么做。
一、准备工作
1、uc api说明书,通读全文。参考http://faq.comsenz.com/library/UCenter/introduction/introduction_list.htm
2、uc 后台添加应用说明。参考http://faq.comsenz.com/viewnews-506(官方) http://wenku.baidu.com/view/3790fdd7195f312b3169a588.html(草根)
3、uc client客户端必要代码,这里下载
二、示例
虽然貌似有了以上的准备工作已经足够了,但经验告诉我们,no,还远远不够。discuz不是zend frame、dedecms、ci这些白开水的东西,没有一点钻研精神和爱折腾的气质是无法理解它深奥的内涵,更不用驾驭它。要达到成功,我们需要有详尽的说明文字,另外还需要配备必要的图片,虽然有了这些你也未必能够成功。
先看一下我的项目结构
tanahk 是真正的项目地址,x3.2是我的discuz论坛文件,打开它
可以看到这个discuz x3.2已经是整合ucenter的了,其中uc_server是服务器,uc_client是客户端,uc_client这个文件夹在discuz x、discuz home、discuz xspace等产品中都是已经捆绑好的。但在我的tanahk项目中还没有添加进来,按照前面的参照资料,它在每个项目都必须存在的,因此,我们把准备工作第3点下面的developguide.zip中的client复制到tanahk下面,并命名为api
因为UCenter的应用默认是要查找api/uc.php文件,因此client文件夹必须改名为api。回到developguide.zip压缩包,打开下面的api/uc.php,把它复制到tanahk/api下面。
tanahk的目录结构变为
好了,现在可以在UCenter后台添加我们的项目应用了。uc的后台一般为http://www.xxx.com/x3.2/uc_server/admin.php
选择“应用管理”--“添加新应用”
参考上面准备工作中2。
应用类型:其它
通信密钥:查找discuz root/config/confgi_ucenter.php里面的密钥,define('UC_KEY', '...124sdf45s4d5fsd4f5s4...');discuz root是你的uc目录。
应用的物理路径:可以为空,只要应用主url填写正确
应用接口文件名称:保留uc.php,不用填api/uc.php
是否开启同步登陆:是,这是关键,以后多个项目共用一个uc就行了,不用自己新建一套用户系统。
提交。
ecshop discuz ucenter整合
1.安装ucenter
2.安装discuz.安装过程中与ucenter集成,不需要我做任何事情
3.安装ecshop 将uc_client拷贝到根目录下(是ucenter安装文件中的uc_client).然后将配置拷贝到data /config.php
define('UC_CONNECT', 'mysql');
define('UC_DBHOST', 'localhost');
define('UC_DBUSER', 'root');
define('UC_DBPW', 'root');
define('UC_DBNAME', 'ucenter');
define('UC_DBCHARSET', 'utf8');
define('UC_DBTABLEPRE', '`ucenter`.uc_');
define('UC_DBCONNECT', '0');
define('UC_KEY', '1234567890');
define('UC_API', 'localhost/ucenter/upload');
define('UC_CHARSET', 'utf-8');
define('UC_IP', '127.0.0.1');
define('UC_APPID', '3');
define('UC_PPP', '20');
在ucenter后台中发现通讯成功。然后在ecshop中安装ucenter安装后察看设置和ucenter 中是否一致基本就应该可以了。现在我的discuz和ecshop可以同步登陆了。
安装好了168 在装ucenter 在去ucenter里添加应用
(1).进UC管理后台,点击'应用管理',再点击'添加新应用',再选择'自定义安装'
应用名称:输入 PHP168整站系统
应用的 URL:输入 http://网站域名/do (结尾不需要/号,并且注意是do结尾)
应用 IP:留空即可
通信密钥:随便写一个,比如123abcdkjhh
应用类型:选择'其它
应用的物理路径:留空即可
查看个人资料页面地址:留空即可
应用接口文件名称:uc.php
标签单条显示模板:留空即可
标签模板标记说明:留空即可
是否开启同步登录:选择'是'
是否接受通知:选择'是'
最后提交,提交之后,再返回到应用列表.然后再选择刚刚提交那个应用,点击编辑.
把'应用的 UCenter 配置信息:'里边的代码复制出来,放到整站/do/config.php的第二行即可.
然后在通过ucenter 整合discuz 和home 即可

PHP和Python各有优势,选择应基于项目需求。1.PHP适合web开发,语法简单,执行效率高。2.Python适用于数据科学和机器学习,语法简洁,库丰富。

PHP不是在消亡,而是在不断适应和进化。1)PHP从1994年起经历多次版本迭代,适应新技术趋势。2)目前广泛应用于电子商务、内容管理系统等领域。3)PHP8引入JIT编译器等功能,提升性能和现代化。4)使用OPcache和遵循PSR-12标准可优化性能和代码质量。

PHP的未来将通过适应新技术趋势和引入创新特性来实现:1)适应云计算、容器化和微服务架构,支持Docker和Kubernetes;2)引入JIT编译器和枚举类型,提升性能和数据处理效率;3)持续优化性能和推广最佳实践。

在PHP中,trait适用于需要方法复用但不适合使用继承的情况。1)trait允许在类中复用方法,避免多重继承复杂性。2)使用trait时需注意方法冲突,可通过insteadof和as关键字解决。3)应避免过度使用trait,保持其单一职责,以优化性能和提高代码可维护性。

依赖注入容器(DIC)是一种管理和提供对象依赖关系的工具,用于PHP项目中。DIC的主要好处包括:1.解耦,使组件独立,代码易维护和测试;2.灵活性,易替换或修改依赖关系;3.可测试性,方便注入mock对象进行单元测试。

SplFixedArray在PHP中是一种固定大小的数组,适用于需要高性能和低内存使用量的场景。1)它在创建时需指定大小,避免动态调整带来的开销。2)基于C语言数组,直接操作内存,访问速度快。3)适合大规模数据处理和内存敏感环境,但需谨慎使用,因其大小固定。

PHP通过$\_FILES变量处理文件上传,确保安全性的方法包括:1.检查上传错误,2.验证文件类型和大小,3.防止文件覆盖,4.移动文件到永久存储位置。

JavaScript中处理空值可以使用NullCoalescingOperator(??)和NullCoalescingAssignmentOperator(??=)。1.??返回第一个非null或非undefined的操作数。2.??=将变量赋值为右操作数的值,但前提是该变量为null或undefined。这些操作符简化了代码逻辑,提高了可读性和性能。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

Atom编辑器mac版下载
最流行的的开源编辑器

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

SublimeText3 Linux新版
SublimeText3 Linux最新版

SublimeText3汉化版
中文版,非常好用