开发中,如何配合后端,保存你的静态html页

 

添加备注2015.4.8

最终决定采用相对路径方法,

/img/img.jpg这种“绝对”路径写法必须在网站环境中才能识别,不利于静态页面的查看,故不予采用!

所以采用img/img.jpg或../img/img.jpg这种写法。

至于是同级还是向上一级,看页面代码文件的位置(即:网站运行后生成的页面文件的位置)

在进行前端开发之前,先搞清出项目平台(php、.net等),然后搞清楚页面代码文件(引用你的html文件的代码文件)所处的位置。

如果是最外层的,则将html文件也建在最外层,如果是某个文件夹(如:Browse或page),则html文件也放到一个目录中,这样保证后端开发时,不需要更改资源引用路径。

并且不影响本地查看(双击html文件看效果及通过网站地址(192.168.1.XXX))查看。

网站运行后生成的页面文件的位置:

目前遇到的项目:

php中,虽然模板文件一般在template文件夹中,但是页面代码文件(生成的页面文件)是最外层的文件。

.net中,虽然模板文件在page文件中,但是页面代码文件(生成的页面文件)在browse文件夹中。

看网址的区别:

http://www.xxxx.com/news_show.php?id=18604

http://www.xxxx.com/browse/Info.aspx?mid=17&subid=21

再次重新分析

其实一共只有两种区别。现在给自己的规定:模板文件必须为.html后缀。

一,把模板文件直接放到page等模板文件夹中

这是按开发结构建立的,经后端程序员夹杂了后端代码的.html文件也会出现在此文件夹。

优势,

①svn比对差异方便:选中两个文件,右击svn比较差异即可。可以保证后续开发的更改也能实时的同步。

②项目结构开起来比较整齐。

缺点:想要查看静态效果。需要修改外层动态文件(.php等)中的代码才可以。

二,直接将模板文件放在外层。

这是通用做法,适合页面制作。

优点:直接双击查看效果。

缺点:svn比对差异不方便,需要手动将html拖进或复制进page文件夹中比对。

重新分析

 

其实如果单考虑页面的制作的话,就两种情形。

 

1、【通用做法】如下图

 

然后后续开发时,直接将本文档发送给程序员,让他们去建立文件结构去。

 

或者通过svn提交,但是这样.php文件写了以后,会变的很麻烦。(.php等文件和.html同处在最外层文件夹中会显得很乱,svn比对也会很麻烦)

 

 

2、把html页面预先放到page目录中,如下图

 

分析:这样资源引用路径就变了,需要向外跳一层,要不然打开的页面都加载不到资源。

 

解决办法就是,自己先写好对应的index.php、page.php等文件,

 

然后通过下面代码跳转到page文件夹中,

 

<?php $ModeUrl="index";require_once('page/'.$ModeUrl.'.html'); ?>

 

这样后续开发时,因为文件结构已经建立,所以只需要将内层的html复制一份(为了保存初始文档),改后缀名为php即可直接提交svn。

 

(这里之所以按开发结构放html文件,还不把html后缀名改为php,而是选择在提交svn前复制一份在改,就是为了保存一份自己开发的最终版的html)

 

(但是一旦开发中,还是以.php为准。.html可以不管,要不然累死了。)

 

 

这样做查看自己的效果的时候,除了上面的代码中后缀名改为.html外,还有一个比较快的方法,就是将html文件复制出来,输入http://192.168.1.XX:XX查看效果,看完了如果修改了直接拖进page文件夹替换,没修改直接删除。

之前的:

 

方法一:将静态代码直接写到page/index_page.php中,通过index.php指向它

(放弃此种做法2015.1.22:静态文件中就是为了不出现动态代码的。这种方法会误导。而且也不利于直接查看。方法二和方法三都是可以直接查双击查看的(方法二需要先将html文件移到外层))

架构:

index.php

page/index.php + page/index_page.php

说明:index.php中写

<?php

$ModeUrl="index_page"

require_once('page/'.$ModeUrl.'.php');

?>

(一) 还没有php静态页时,

①以其中的一个为准,执行修改操作后,全选+复制(page/index.php)→全选+粘贴(page/index_page.php)

②或者只新建一个page/index.php,但是在首次进行带有PHP代码的svn更新前,

记得备份一下page/index.php,重命名成page/index_page.php。

以后开发中,每次更改page/index.php的时候,记得覆盖一下page/index_page.php中的内容。

(二)一旦index.php添加php代码后,就不能全选覆盖粘贴了。只能手动更改两处。

想要查看静态页效果时,需要修改:$ModeUrl="index_page";然后输入:192.168.1.1/index.php

 

方法二:将静态代码直接写到page/index.html中,通过index.php指向它。

架构:

index.php

page/index.php + page/index.html

index.php中写

<?php

$ModeUrl="index"

require_once('page/'.$ModeUrl.'.html');

?>

说明:同上

和方法一没啥区别,只不过提交svn后,能强制后端重新建一个对应的php文件。或者强制自己建一个对应的.php再提交。

方法一,你提交后可能后端直接就使用index_page.php了也说不定。

还有一个好处,就是保证了你的html模板文件中不会出现后台开发代码。(不知道php中出现了会怎样,目前接触的php网站项目,page(template)目录中都是.php后缀的。但是.net的模板文件夹中都是.html的并且可以夹杂后端开发代码。)

--(add on 2015.1.22)

在有php静态页后,想要查看静态页效果时,

需要修改:require_once('page/'.$ModeUrl.'.html');然后输入:192.168.1.1/index.php

 

方法三:将静态代码直接写到index.html中(通用做法)

架构:

index.php + index.html

page/index.php

直接在外层建index.html。无需index.php即可浏览。

说明:推荐,实践中,看是否顺手index.html和page/index.php没在一个文件夹中,后续开发中,手动同步比较麻烦。无法进行svn比较差异。

注:这种方法,在page/index.html→page/index.php时,不需要修改css、js等文件引用路径。

在有php静态页后,想要查看静态页效果时,直接输入192.168.1.1/index.html

点评:和方法二,没有区别,把html文件直接拖进page(template)文件夹。

点评二:这是通用模板页面的制作方法,程序开发直接把外层的html页面移动到一个page或者template文件夹中就能开发了。

 

方法四:将静态代码直接写到page/index.html中,不通过index.php指向

架构:

index.php

page/index.html + page/index.php

和方法二不同的是,和index.php无关,通过192.168.1.1/page/index.html浏览。

说明:极不推荐,因为page/index.html→page/index.php时,需要修改css、js等文件引用路径(向上一层)。比较麻烦。

在有php静态页后,想要查看静态页效果时,需要输入192.168.1.1/page/index.html

点评:这是按网站程序开发的架构去搞静态页面,实际运用中,page文件夹中的静态页面的资源引用路径都要向上一层。这是个很大的问题。

 

附录:开源框架使用方法:

将amui解压后的包,直接放到项目的和page同级的目录中,这样通过地址栏就可以访问了。

 

最后的ps,要先通过iis建立网站,分配端口号,并指向对应文件夹。这样你才能通过http://192.168.1.XX:XXXX访问。

原文地址:https://www.cnblogs.com/ferron/p/4143178.html