您现在的位置是:首页 > cms教程 > Discuz教程Discuz教程
Discuz项目新建子网站的方法
韦烽凌2025-07-07Discuz教程已有人查阅
导读在.net版的Discuz项目中,后台管理模块Discuze.Web.Admin是一个单独的模块,但是,打开解决方案的文件夹却找不到单独模块的文件夹存放,而是在Discuz.Web项目里的admin文件夹里。
在.net版的Discuz项目中,后台管理模块Discuze.Web.Admin是一个单独的模块,但是,打开解决方案的文件夹却找不到单独模块的文件夹存放,而是在Discuz.Web项目里的admin文件夹里。
经过分析,原来管理员模块是一个子网站,只是把网站建立在了Discuz.Web文件夹中,之后,在Discuz.Web项目包含在内就行了。子网站到底有什么好处了,很简单,就是方便管理,独立开发,当这个模块有问题时,单独编译这个模块,然后重新上传页面文件和DLL到主网站的Bin文件夹即可,完全不受其它影响。
官方的说法:管理模块是独立的模块,方便管理等...(具体还待验证--囧)
Discuz.Web.Admin是一个类库,不是一个web应用程序,那就神了,类库在添加aspx页面,是没有全自动,只能是自己手工输入和关联页面设计文件(到现在还没研究出官方是如何添加的)。且在Discuz.Web项目的admin文件夹中,只是包含aspx文件,没有包含cs文件,这样的做法是,当发布网站时,自动发布Discuz.Web.Admin的项目(之后还是没搞明白是如何只包含aspx文件不包含cs文件的)。
子网站的优点是方便管理,模块独立,互补干扰。缺点:不能使用和包含子网站的Web.config和Global.asax这些全局文件,只能是共用主网站的,但是你可以在别的文件夹新建,单独调用就可以。
因为项目基于VS08开发的,所以有一些开发工具的特性无法考证。(原因是我机器没装08-囧)
以上是对Discuz.net项目的子网站新建技术的一点分析。
下面,我们来使用VS2010新建一个子网站来实战一下,在10我改变了做法,子网站不用类库去实现,而是用web应用程序去实现,好处是方便新建aspx页面,无需手动创建,且类库全部引用了。
首先,新建一个名为SiteCollection的Web应用程序
然后在新建一个名为Site的子网站Web应用程序,注意保存项目的路径,必须保存在SiteCollection的根目录里。
在SiteCollection项目里添加Site的引用
之后在SiteCollection项目点击显示所有文件,这里我就不用Discuz的做法,我不包含文件进去,因为包含进去,每次新建页面时都要包含在主项目里,非常不方便,我何必不包含了,直接在发布子网站的时候拷贝到主网站的目录里,方便,省事。
应为我这边是新建的VS10自带的示例,所以会包含Web.config和Global.asax文件,我把它干掉了。不然会报错。
运行测试一下:
注意URL的路径:
成功了。
下面我们来试下,调用主网站的Web.config的内容:
在Site的子网站的Default.aspx.cs文件中写也成功了:
切记,网页查看时一定要在主站点里进行调试查看。
之后,如果Site的子网站项目有改动的地方,直接选择Site项目编译发布,得到dll和页面文件,上传到主网站相应的目录即可。非常的方便。
经过分析,原来管理员模块是一个子网站,只是把网站建立在了Discuz.Web文件夹中,之后,在Discuz.Web项目包含在内就行了。子网站到底有什么好处了,很简单,就是方便管理,独立开发,当这个模块有问题时,单独编译这个模块,然后重新上传页面文件和DLL到主网站的Bin文件夹即可,完全不受其它影响。
官方的说法:管理模块是独立的模块,方便管理等...(具体还待验证--囧)
Discuz.Web.Admin是一个类库,不是一个web应用程序,那就神了,类库在添加aspx页面,是没有全自动,只能是自己手工输入和关联页面设计文件(到现在还没研究出官方是如何添加的)。且在Discuz.Web项目的admin文件夹中,只是包含aspx文件,没有包含cs文件,这样的做法是,当发布网站时,自动发布Discuz.Web.Admin的项目(之后还是没搞明白是如何只包含aspx文件不包含cs文件的)。
子网站的优点是方便管理,模块独立,互补干扰。缺点:不能使用和包含子网站的Web.config和Global.asax这些全局文件,只能是共用主网站的,但是你可以在别的文件夹新建,单独调用就可以。
因为项目基于VS08开发的,所以有一些开发工具的特性无法考证。(原因是我机器没装08-囧)
以上是对Discuz.net项目的子网站新建技术的一点分析。
下面,我们来使用VS2010新建一个子网站来实战一下,在10我改变了做法,子网站不用类库去实现,而是用web应用程序去实现,好处是方便新建aspx页面,无需手动创建,且类库全部引用了。
首先,新建一个名为SiteCollection的Web应用程序
然后在新建一个名为Site的子网站Web应用程序,注意保存项目的路径,必须保存在SiteCollection的根目录里。
在SiteCollection项目里添加Site的引用
之后在SiteCollection项目点击显示所有文件,这里我就不用Discuz的做法,我不包含文件进去,因为包含进去,每次新建页面时都要包含在主项目里,非常不方便,我何必不包含了,直接在发布子网站的时候拷贝到主网站的目录里,方便,省事。
应为我这边是新建的VS10自带的示例,所以会包含Web.config和Global.asax文件,我把它干掉了。不然会报错。
运行测试一下:
注意URL的路径:
成功了。
下面我们来试下,调用主网站的Web.config的内容:
在Site的子网站的Default.aspx.cs文件中写也成功了:
切记,网页查看时一定要在主站点里进行调试查看。
之后,如果Site的子网站项目有改动的地方,直接选择Site项目编译发布,得到dll和页面文件,上传到主网站相应的目录即可。非常的方便。
本文标签:
很赞哦! ()
相关教程
图文教程
discuz x1二次开发文件目录介绍
|--admin.php管理员入口|--api.php接口文件|--category.php分类入口|--cp.php个人资料设置入口|--crossdomain.xmlFLASH跨域传输文件|--favicon.ico系统icon图标
discuz x3.1论坛搬家换域名的方法
请关闭论坛,尤其是数据备份和还原时请不要操作论坛。进入后台→站长→数据库→备份,备份成功以后,数据保存在 data/backup_**。
Discuz论坛数据同步到微信小程序的实现方法
你想知道如何将Discuz!论坛的数据同步到微信小程序?这其实是个有趣且具有挑战性的任务。我们需要理解Discuz!和微信小程序的特性,然后设计一个有效的同步方案。
discuz模板使用步骤教程
Discuz模板的使用步骤如下:获取并上传模板。 模板。编辑模板代码。在“自定义模板”选项卡下进行布局、模块及样式的自定义设置。预览效果,满意后发布生效。
相关源码
-
(自适应)科技产品设备技术作品pbootcms网站模板带下载和招聘基于PbootCMS内核开发的高端科技企业模板,采用响应式布局技术,适配各类移动终端设备。模板设计聚焦科技行业特性,通过模块化结构实现企业形象展示、技术成果发布与人才招募等核心需求查看源码 -
帝国cms7.5个人博客资讯文章模板下载本模板简洁个人博客网站设计开发,采用帝国CMS内核构建,只需替换文字图片即可快速搭建专业网站。自适应手机端设计,数据实时同步,操作简单便捷。PHP程序确保安全稳定运行,帮助您以较低成本获取持续业务。查看源码 -
帝国cms7.5大型游戏资讯门户网站源码免费下载本模板基于帝国CMS7.5内核开发,为大型游戏资讯门户网站设计。模板自带响应式手机版,适配多种终端设备。内容架构针对游戏行业特点优化,支持游戏资讯、评测、攻略等内容类型的发布与管理。查看源码 -
(自适应响应式)法律咨询律师事务所法务pbootcms源码下载为律师事务所、法律咨询机构设计,特别适合展示法律服务、律师团队和成功案例。采用响应式技术,确保在不同设备上都能提供专业的法律信息展示和咨询服务。查看源码 -
(响应式)企业管理人力资源服务类pbootcms模板源码下载为人力资源服务及企业管理设计的响应式网站模板,基于PbootCMS内核开发。通过宽屏布局优化岗位展示效果,简洁界面聚焦人才服务核心业务,自适应技术确保在PC端与手机端查看源码 -
(自适应)行业协会工会机构单位pbootcms网站源码本模板基于PbootCMS内核开发,为行业协会、工会组织及机构单位量身打造。采用响应式布局设计,可自动适配手机、平板等移动设备,数据实时同步更新。模板包含行业资讯查看源码
| 分享笔记 (共有 篇笔记) |