phpcms单页面优化_不让单页面生成在html_root下

通过配置文件中的 html_root' => '/a' 选项可以设置生成静态文件路径html_root为/a,即根目录下的a目录(文件夹)。设置html_root可以达到将网站目录限制在html_root下,以达到方便管理和增强安全的作用。但有时为了减少网站目录层级更好的SEO需要让让栏目直接生成在根目录,想达到这样的目标可以不设置html_root的值,但是在多站点的情况下,根目录下站点目录太多又不易管理。易用性和安全性和SEO形成了矛盾,如果在这几种需求的情况下即可以满足相应的需求又不影响其他的需求呢?在这里青锋建站给大家提供一个相对比较折中的办法来达到多站点情况下即照顾到SEO和安全性,又可以方便网站的管理,当然主要是对phpcms单页面的结构优化。


常规栏目都方便的使用html_root来达到指定静态文件路径的目的,但是单页面生成时由于未能默认指定v9_category表中sethtml字段的值造成即使将常规栏目设置生成在站点根目录下时,单页面仍然生成在html_root指定的目录下。


下面我们结合三种情况来分析'当设置了配置文件中的html_root' => '/a',属性时生成静态文件的工作过程:

1、设置了html_root' => '/a',属性,所有栏目设置为生成到html_root目录

  

html_root


当所有栏目设置为生成到html_roo目录时,实际的工作过程是这样的:假如phpcms根目录下有一文件夹'a'时,所有的phpcms单页面和常规栏目将生成在a目录下,这种情况下是工作正常的。所有的静态文件生成在单一目录可以更方便的管理。但是有一个问题,这无形当中给网站所有的栏目增加了目录层级。下面看第二种情况。

2、设置了html_root' => '/a',属性,指定生成到根目录

此时常规栏目生成到站点根目录而单页面生成到html_root设定的目录。这时常规栏目的子目录也指定生成到根目录的情况下将破坏目录层级,改变这种情况的方法是将子栏目设置为“在选择是否生成到根目录时选择-否”;这时单页面仍然生成到html_root指定的目录。也就是说只要指定html_root,phpcms单页面就将生成到html_root目录下。

3、不设置html_root' 属性,多站点共存的情况

主站点:所有单页面直接生成在根目录下,常规目录不论父目录子目录直接生成在根目录(没有体现层级关系)。
子站点:子站点和主站点表现一致,在主目录下创建网站目录,在子站点目录下生成静态文件。如果子站点较多,在主目录下生成较多的目录不易集中管理,且不能体现常规栏目的层级管理。

4、设置了html_root' => '/a',属性,多站点灵活布署

这里将是青锋建站-专业网站建设公司要讲的重点,即仍然需要设置html_root' => '/a',属性,通过优化phpcms单页面来达到主站点所有目录生成到根目录下。而其他子站点则生成到html_root' 指定的目录下的站点目录下,并且子站点下所有的单页面和常规目录将生成到所在的子站点根目录,并保持良好的目录层级关系。方法如下:
  phpcms根目录下找到以下两个模板文件:phpcmsmodulesdmin emplatescategory_page_add.tpl.php和category_page_edit.tpl.php,在表单提交之处(</form>之前)添加以下表单项:<input type='hidden' name='setting[create_to_html_root]' value='1' >,保存即可实现即使指定html_root属性,单页面也会生成到根目录,从而实现phpcms多站点灵活布署。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值