什么是最好的想法,使一个系统显示演示模板是html, css和javascript


What is the best idea for making a system for showing demo of templates that are html css and javascript

我想做一个系统来展示我的主题演示。
所有主题文件都在一个文件夹中,它们是HTML, CSSJavascript文件,具有相对路径。
系统文件夹如下:

-index.php  
-themes  
--theme1
--theme2 

我想发送一个请求到索引文件,然后索引文件加载请求的文件。
我想要的第一件事是阻止直接访问主题文件夹(我想要阻止访问这个文件夹,所以只有PHP能够访问它)。
但如果我这样做,那么我需要通过获取PHP的内容来加载HTML文件,Ajax和PHP的问题是我无法加载其外部css和js文件,我也不知道如何加载从主题索引文件链接的另一个页面。
在上面的方法之后,我决定使用HTML iframe标签,但是这个标签需要直接URL到一个文件,这样隐藏主题文件夹是不可能的。
现在我想知道有没有更好的方法来做这件事?还是有什么事情我想错了?
请记住,我不希望用户能够直接访问主题,因为也许他们加载我的主题在他们的网站没有显示我的演示栏

我想到了一些想法:

而不是去所有的麻烦,因为演示栏;你可以禁用热链接,例如htaccess——如果有人复制你的主题;我想演示栏可以很容易地删除,所以没有理由。

但如果你真的想要它,这里有一个主意:

  1. 创建一个包含主题名称的php数组,这些主题将通过url调用,例如,为它们分配主题的文件夹名,例如:

     $themes['fancytheme'] = 'f4ncyth3me';
    
  2. 在会话中存储主题和/目录

  3. 确保js/和css/链接通过index.php传递,要么通过在主题中链接它们,要么通过在htaccess

    中创建重写规则。
  4. 如果你在你的索引中得到一个js或css请求,检查会话哪个目录应该被前缀,并返回文件的原始输出

    除了会话,你还可以在js/css/urls中包含主题名,这样你就知道索引中应该包含什么了。

不幸的是,如果你要将网页呈现给浏览器,无论你付出多少努力,总有人在某种程度上能够下载并使用任何请求的javascript, html和CSS。

你可以在你的主题文件夹中包含一个检查HTTP Referrer是什么(即if($_SERVER['HTTP_REFERER'] != "mydomain.com/demos") { die("Beat it punk!") }),但Referrer是从浏览器发送的,一个不道德的人可能会欺骗他们。另一种方法是将有效的会话ID存储在演示工具栏区域中。您实际上创建的是某种登录检查…

虽然我相信这将实现你正在寻找的(防止公司X伪装成你,勤奋的设计师的潜在客户(因为大多数客户可能不会掩盖他们的HTTP推荐默认)通过简单的热链接到你的主题,它没有解决潜在的问题,"我想保持我的代码私有"

如果它被呈现给浏览器,有人可以窃取它,我猜,为了避免检测,他们宁愿简单地把所有东西都放在他们的网站上,而不是通过在你的服务器日志中留下他们的热链接到你的内容来提示你。

我建议如果你想保持代码的私密性,也许只是让主题一个大的图像用于演示目的。

如果你想保护你的HTML,JS,CSS代码,那么就不要费心去保护你的代码。因为如果有人可以在浏览器上看到它,那么它就可以被复制。

你能做的就是让它变得不那么可读。我把这些文件加密。网上有很多工具
它可以帮助您加密html,js,css代码。这只会让别人更难窃取你的代码,而不是不可能。

否则,无论你做什么,只会伤害那些不想破解你代码的真正用户。无论你做什么,专业人士都会得到你的html,js,css代码。

查看此链接http://www.htmlgoodies.com/beyond/article.php/3875651/Web-Developer-Class-How-to-Hide-your-Source-Code.htm