• 请不要在回答技术问题时复制粘贴 AI 生成的内容
xiyangyang
V2EX  ›  程序员

怎么隐藏页面的查看源代码功能,急!!!

  •  
  •   xiyangyang · Jan 9, 2018 · 36570 views
    This topic created in 3223 days ago, the information mentioned may be changed or developed.

    一个做设计的学生来问,怎么把网页的源代码给隐藏起来。 她的网页上有很多自制的 css,js 代码,以及一些艺术作品,不想别人轻易的拷贝或者下载了。

    大家有什么办法吗?

    171 replies  •  2022-02-27 02:54:15 +08:00
    1  2  
    ❮ ❯
    baicai0817
    baicai0817
    Jan 9, 2018
    1
    你自己开发一套系统。
    msg7086
    msg7086
    Jan 9, 2018❤️42
    2
    利用服务器渲染功能,把整个网页转换成图片,然后发给用户,这样他们就看不到源代码了。
    xooass
    xooass
    Jan 9, 2018❤️2
    3
    做不到,能打开你的页面,就一定能下载页面上的所有资源。

    所有什么加 JS 屏蔽右键,加嵌套等等的对于有经验的人来说都是掩耳盗铃
    zakokun
    zakokun
    Jan 9, 2018
    4
    简单来说就是禁止右键,这样可以防住很多小白了。

    真正想彻底禁止几乎不可能
    1609629379
    1609629379
    Jan 9, 2018 via Android
    5
    这个很容易,我之前看到过一个网页为了防盗源代码,只要点击鼠标右键,网页立马就会变成一行字,说什么不能右键。
    xwhxbg
    xwhxbg
    Jan 9, 2018❤️4
    6
    建议 js 用 jsfuck 编译一下,基本上就是[]()+这种造型了,或者用 web assembly,出来是 assembly language 没有 source map 想反编译比较难,不要写 css 了,用 js+canvas 自己实现样式,同样的 js 过一下 jsfuck,或者用 rust 写 assembly。
    meszyouh
    meszyouh
    Jan 9, 2018
    7
    直接给出一张图片
    f2f2f
    f2f2f
    Jan 9, 2018❤️1
    8
    @1609629379 你这个要破解更容易,一个 js 的事
    x86
    x86
    Jan 9, 2018
    9
    @1609629379 view-source:URL
    ORZRRR
    ORZRRR
    Jan 9, 2018❤️13
    10
    我笑出了声,你们呢?
    kidult
    kidult
    Jan 9, 2018❤️1
    11
    直播打开网页给客户看
    whypool
    whypool
    Jan 9, 2018
    12
    服务端渲染成图片;
    没其他办法
    initdrv
    initdrv
    Jan 9, 2018
    13
    @x86 #9 我也喜欢用这种方式……
    xiaodongus
    xiaodongus
    Jan 9, 2018
    14
    自己做个浏览器,不带查看源码功能。让网站只能通过自己做的浏览器打开。其他浏览器全部屏蔽,完美!
    zpf124
    zpf124
    Jan 9, 2018❤️4
    15
    最初级:禁用右键,初级菜鸟就能见到防一下。

    高级:uglify,把 css 和 js 都混淆了(其实就对 js 意义大点),让人看着和修改费劲。

    宁死不从: 用 flash 渲染数据 或者 后台渲染数据前台就收<img src="内容.jpg">, 再或者 assembly (这个要求浏览器版本得比较新)
    cnwtex
    cnwtex
    Jan 9, 2018
    16
    learnshare
    learnshare
    Jan 9, 2018
    17
    没必要,核心功能和数据在服务端做好防护就行了
    bzw875
    bzw875
    Jan 9, 2018
    18
    彻底隐藏做不了,可以混淆压缩 css 和 javascript 啊,增加一点难度
    dtysky
    dtysky
    Jan 9, 2018
    19
    @xwhxbg 这两个都是可以逆向的,只是相对安全点罢了
    xwhxbg
    xwhxbg
    Jan 9, 2018
    20
    @dtysky 没有 source map 逆向比较麻烦,前端嘛,做到这样也能防 90%的人了
    moxiaonai
    moxiaonai
    Jan 9, 2018
    21
    gulp 压缩一下
    moxiaonai
    moxiaonai
    Jan 9, 2018
    22
    还可以屏蔽页面右键,屏蔽 f12,可以让大部分人看不到,但是解决不了根本问题
    tabris17
    tabris17
    Jan 9, 2018
    23
    webassembly
    pkaq
    pkaq
    Jan 9, 2018❤️10
    24
    有时候你以为重要的东西 其实并没有那么重要
    这原本就不是一个技术问题
    作为老师何不去解开此生心结;)
    mokeyjay
    mokeyjay
    Jan 9, 2018❤️1
    25
    只能是服务端渲染为图片,不然抓包 GG
    dangyuluo
    dangyuluo
    Jan 9, 2018
    26
    Https,再加个壳?
    imn1
    imn1
    Jan 9, 2018
    27
    防不防 wget 呢?
    taojing10
    taojing10
    Jan 9, 2018 via Android
    28
    教你……拍成视频,然后放上去就行了…或者十年前大家 flash 写过网页,你可以复古一下
    misaka19000
    misaka19000
    Jan 9, 2018 via Android
    29
    @xiaodongus 没用的 抓个包就能看到了
    carlclone
    carlclone
    Jan 9, 2018
    30
    @ORZRRR 我笑了但是没有出声,因为在上班
    rocksolid
    rocksolid
    Jan 9, 2018❤️1
    31
    说句实话,设计重要的是创意,别人都能看到了,就算没代码,写一个很困难么?
    alex321
    alex321
    Jan 9, 2018
    32
    你的东西很重要么。。。这年头天外有天人外有人。花大力气做的东西,可能自己认为很重要;在别人眼里,很可能都不入眼。
    老师应该更清楚这种问题吧。
    Mutoo
    Mutoo
    Jan 9, 2018❤️3
    33
    正确的方法难道不是加水印加版权申明吗
    image72
    image72
    Jan 9, 2018
    34
    如果熟悉 react 相关开发, 可以直接使用 react-native 相关技术。
    mobile app 就直接 react-native,
    PC 使用 react-native-macos,react-native-windows
    轻松加愉快
    bumz
    bumz
    Jan 9, 2018 via iPhone
    35
    那就把网页替换成截图呗
    skyfore
    skyfore
    Jan 9, 2018
    36
    @xiaodongus electron ?
    f2f2f
    f2f2f
    Jan 9, 2018
    37
    @cnwtex
    <!DOCTYPE html>
    <html lang="zh-cmn-Hans">
    <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=0,viewport-fit=cover">
    <title>测试页面</title>
    </head>
    <body>
    <script src="https://cdn.bootcss.com/jquery/1.11.0/jquery.min.js"></script>
    <script>
    Function("‍‌‌‍‍‍‍‌‍‌‌‍‌‌‍‍‍‌‌‍‍‌‍‌‍‌‌‌‍‍‌‍‍‌‌‌‍‌‍‍‍‍‌‍‌‍‍‍‍‍‌‍‍‍‌‍‍‌‍‌‌‌‍‍‍‌‌‌‍‌‍‌‍‍‌‌‍‌‌‍‍‍‌‌‍‍‌‍‍‍‌‌‍‍‍‌‍‍‌‌‍‍‍‌‍‌‍‌‌‌‍‍‍‌‌‌‍‌‍‌‍‍‌‌‍‌‌‍‍‍‌‌‍‌‌‍‍‍‌‌‍‍‌‍‍‌‌‍‍‌‌‍‍‌‍‌‌‌‍‍‍‌‌‌‍‌‍‌‍‍‌‌‍‌‍‍‍‌‌‍‍‌‌‍‍‍‌‌‍‌‌‍‍‍‌‌‍‍‍‍‍‌‍‌‌‌‍‍‍‌‌‌‍‌‍‌‍‍‌‌‍‌‌‌‍‍‌‌‍‍‌‍‍‍‌‌‍‍‌‌‍‍‌‌‌‍‍‍‍‌‍‌‌‌‍‍‍‌‌‌‍‌‍‌‍‍‌‌‍‌‌‌‍‍‌‌‍‍‌‍‍‍‌‌‍‍‌‌‍‍‌‌‌‍‍‍‍‍‌‍‍‍‌‍‍‍‌‍‌‍‍‌‍‍‌‌‌‍‌‌".replace(/.{8}/g,function(u){return String.fromCharCode(parseInt(u.replace(/\u200c/g,1).replace(/\u200d/g,0),2))}))();
    </script>
    </body>
    </html>
    yulitian888
    yulitian888
    Jan 9, 2018
    38
    楼主想多了,这个防不住的
    稍微有点经验的前端开发人员看几眼,就能仿制出来一个大体差不多的东西,保护原始代码的价值何在?
    jisibencom
    jisibencom
    Jan 9, 2018
    39
    @f2f2f 这个看起来很高级的样子,怎么解?
    Tink
    Tink
    Jan 9, 2018 via iPhone
    40
    服务器渲染
    JohnChiu
    JohnChiu
    Jan 9, 2018
    41
    @1609629379 禁用 js 不久破解了嘛,前端根本防不住的。。。毕竟是由浏览器解释的超文本标记语言
    vjnjc
    vjnjc
    Jan 9, 2018
    42
    二楼方法不错,服务器调用 chrome api 生成网页截图发给客户端~
    gongcheng121
    gongcheng121
    Jan 9, 2018
    43
    只要能看到,就能复制
    SakuraKuma
    SakuraKuma
    Jan 9, 2018
    44
    大家只能让你死心.
    bzzhou
    bzzhou
    Jan 9, 2018
    45
    楼主想多了
    hjdtl
    hjdtl
    Jan 9, 2018
    46
    用 electron 吧
    xd314697475
    xd314697475
    Jan 9, 2018❤️1
    47
    普通级
    1.禁用右键

    专业级
    2.css ,js 代码压缩 混淆

    专家级
    3.直接截图展示或者远程桌面
    shiny
    shiny
    PRO
    Jan 9, 2018❤️1
    48
    不如给学生普及下知识产权保护相关的措施和办法。这不是一个技术问题。
    uuair
    uuair
    Jan 9, 2018
    49
    还有一个办法,这是我在 v2 上听说的,就是在写代码的时候,要写很多无意义的代码,函数名称也要用那些无意义的,看起来很正规,很有用的名字,能用 100 行写就不用 1 行,这样基本上看得懂的人,因为看不懂源码的意思,而放弃。。
    jason19659
    jason19659
    Jan 9, 2018
    50
    很简单啊,不要用自己的 css,不要放自己的作品别人就下载不到了
    shiroming
    shiroming
    Jan 9, 2018 via Android
    51
    大家都那么忙,哪有闲工夫看你的代码
    fulvaz
    fulvaz
    Jan 9, 2018
    52
    放弃吧.. 就算用图片或者视频, 菜鸡如我都能花一周抄了
    trn4
    trn4
    Jan 9, 2018 via iPhone❤️1
    53
    正解应该是版权声明+法律手段。话说知道看源代码的会不知道怎么绕过右键屏蔽。
    laoyur
    laoyur
    Jan 9, 2018
    54
    @1609629379 #5
    > 这个很容易,我之前看到过一个网页为了防盗源代码,只要点击鼠标右键,网页立马就会变成一行字,说什么不能右键。

    @zpf124 #15
    > 最初级:禁用右键


    @xd314697475 #47
    > 普通级
    > 1.禁用右键

    ----------
    噗,心疼 1609629379 一秒
    Light3
    Light3
    Jan 9, 2018
    55
    我觉得只有贴图片可以..
    禁止右键 防小白而已..
    你写乱七八糟的命名 也只是减缓看代码的时间 没啥实质性的用处..

    还有代码这种东西 真的有保护的必要吗..
    就如 24 楼所说的..
    lulinux
    lulinux
    Jan 9, 2018
    56
    首先我想说的是支持楼主的做法。真要防止侵权的话,建议找专业的公司,利用大数据,一逮一个准。到时候抄袭侵权者就像老鼠怕了猫一样乖溜溜的。
    panda1001
    panda1001
    Jan 9, 2018 via Android❤️1
    57
    做设计应该是的瞄上一眼就能复现,根本没必要在乎代码的实现方式

    参考知乎
    [做出这类 UI 插画需要掌握多少知识 /技能?]
    https://www.zhihu.com/question/263980848/answer/288745639
    pabupa
    pabupa
    Jan 9, 2018
    58
    @msg7086 厉害了~
    overflowHidden
    overflowHidden
    Jan 9, 2018
    59
    全用图片只适用于纯展示吧,万一有个 css3 动画咋办。js 混淆倒是行,css 防了也没用,有经验的都能仿出来。禁用右键也是白瞎,火狐上有一键下载网页源代码的工具。。。浏览器向来是防君子不防小人,不要想得太强大了
    rootsir
    rootsir
    Jan 9, 2018
    60
    @xiaodongus 不顶用,可以抓包,直接看内容
    liuminghao233
    liuminghao233
    Jan 9, 2018 via iPhone
    61
    自己做 app
    写个协议用 socket 传 顺便加密一下


    楼上那些说用 https 什么禁止右键的
    这种方法只对他们自己有效
    thrall
    thrall
    Jan 9, 2018❤️4
    62
    那么多开源的 design 不用,去看一个学生的设计?
    自以为有价值罢了
    A3m0n
    A3m0n
    Jan 9, 2018
    63
    我巴不得别人来看我的代码。
    silencefent
    silencefent
    Jan 9, 2018
    64
    想太多,不做 seo,robot.txt 禁止抓取,没人看得到你的网站
    实在不行,展示在 tor 网络,记不住地址+不被收录
    意义何在
    hxsf
    hxsf
    Jan 9, 2018
    65
    @cnwtex #16 最后一个() 改成 .toString() 试试
    Funian
    Funian
    Jan 9, 2018
    66
    防不胜防
    UnPace
    UnPace
    Jan 9, 2018
    67
    屏蔽 F12
    hxsf
    hxsf
    Jan 9, 2018
    68
    说转图片的,请问 js 交互呢 ? 不要交互,直接截图不就完了,还毛个服务器渲染。。。
    说禁用右键的。。。。。。不说啥了
    说用别的东西重新写的,考虑过成本么。。。

    建议:
    1. 开导下他,没有保证无法被逆向的技术。
    2. 创意是最有价值的,也是最没有价值的。

    > 她的网页上有很多自制的 css,js 代码
    加 License,做点加密和混淆工作,增加点逆向难度。(永远无法保证被逆向)

    > 以及一些艺术作品
    加水印, 加 License。
    kimqcn
    kimqcn
    Jan 9, 2018❤️1
    69
    可以用 flash 显示
    anasplrt34
    anasplrt34
    Jan 9, 2018
    70
    ww 有时候你的东西并没有那么重要 有谁会无聊到去抄一个才毕业的学生的网站的 css 吐槽完毕
    js 混淆呗 没谁会为了个 css 而反编译的 有那功夫干点啥不好
    ryderdu
    ryderdu
    Jan 9, 2018
    71
    我们做微信公众号 /小程序开发,见到竞品有啥我们都能弄过来....
    iyour
    iyour
    Jan 9, 2018
    72
    前端现在还有看源码才能仿得出来的东西么?
    msg7086
    msg7086
    Jan 9, 2018
    73
    @hxsf 服务器渲染就是截图的意思,你竟然不知道吗。
    66beta
    66beta
    Jan 9, 2018❤️2
    74
    那么回到起源,当初为什么要晒出来给别人看?
    likuku
    likuku
    Jan 9, 2018❤️1
    75
    作品转成视频吧。假若是页面效果,那就录屏,视频且必须付费观看。

    其它办法,要么自己开发一整套闭源展示系统。

    其实即便页面的,一定要保密,可以尝试用游戏引擎开发一个本地运行的 App,
    把自己想法创意来实现,只发布编译的 2 进制版。抄袭没法杜绝(律师团+付费获取)
    fy
    fy
    Jan 9, 2018
    76
    css 和 js 都能混淆,需要的话就配置一下呗
    huclengyue
    huclengyue
    Jan 9, 2018 via Android
    77
    @1609629379 不能右键就不能看代码了??
    hxsf
    hxsf
    Jan 9, 2018 via iPhone
    78
    @msg7086 对于前端来说服务端渲染指的是

    spa,在服务器渲染好 html 便于 seo 和 合成首屏的数据。

    如果单纯截图的话 js 交互就没了。也不需要“服务端”
    tjsdtc
    tjsdtc
    Jan 9, 2018
    79
    https://passport.ly.com/
    之前看到这个页面的实现挺有意思的,一打开开发者工具就进断点了,估计是判断开启开发者工具以后在一个死循环里面 eval 了一段包含 debugger 的代码,虽然感觉本质上并没有什么卵用…只能给人家拷代码带来一些阻碍
    miniwade514
    miniwade514
    Jan 9, 2018
    80
    A. JS uglify
    B. 主动把自己的作品提交到 Dribbble 或 Github
    deepkolos
    deepkolos
    Jan 9, 2018
    81
    远程桌面这招厉害, 见过实验楼用过, 还有腾讯云网页版的远程
    Jackeriss
    Jackeriss
    Jan 9, 2018
    82
    网址都不贴怎么帮你分析问题?
    nosay
    nosay
    Jan 9, 2018
    83
    1.禁右键
    2.禁 F12
    3.网页数据全部 ajax 取

    但是还是只能防小白,碰到稍懂的人全部歇菜
    反正如果怕就别传上网
    如果怕就弄成图片加上版权水印

    完了
    WytheHuang
    WytheHuang
    Jan 9, 2018
    84
    放 U 盘算了, 又要威, 又要戴头盔.
    konakona
    konakona
    Jan 9, 2018
    85
    你可以把 css 和 js 压缩,这样别人拿到后即便能复用,也不能修改。因为变量名和关系已经乱套了,23333
    4263Ad06Awk3b1Do
    4263Ad06Awk3b1Do
    Jan 9, 2018
    87
    小白就算看到你的代码也没用,真正搞前端的,不存在隐藏源代码这一种东西。
    Khlieb
    Khlieb
    Jan 9, 2018 via Android
    88
    dumbass
    dumbass
    Jan 9, 2018
    89
    @tjsdtc #79 然而 chrome 上 ctrl+u 还是能看到源码
    chztv
    chztv
    Jan 9, 2018
    90
    自制的 css 和 js ?如果只是一些函数,要让这个学生相信,肯定 Google 上能找到比他写的更好的 css 和 js,没有隐藏的必要。至于艺术作品,放个缩略图就行,没啥好怕,真正的设计是属于他的,别人偷不走。
    ii4Rookie
    ii4Rookie
    Jan 9, 2018
    91
    @ORZRRR 我只能滑稽的笑 上班不敢笑出声
    我到现在都没看到别人能写出自制的 css/js 我怀疑自己是只菜鸡 哈哈哈哈
    lbp0200
    lbp0200
    Jan 9, 2018
    92
    让她自己留着,不要给任何人看。
    killerv
    killerv
    Jan 9, 2018
    93
    根本防不住
    gclove
    gclove
    Jan 9, 2018
    94
    这肯定防不住的啊,顶 @lbp0200 ,不要放在网上不就行了嘛

    css 再怎么也不能防, 就是的话可以加密一下
    lulinux
    lulinux
    Jan 9, 2018 via Android
    95
    @kimqcn 正想说。flash 闭源,真正的好软件!
    F1024
    F1024
    Jan 9, 2018
    96
    自制的 CSS JS 代码有啥用 还能玩出花来? 图片视频的话 可以加水印
    wizardforcel
    wizardforcel
    Jan 9, 2018
    97
    @lulinux 现有技术完全可以把 swf 逆向为 ActionScript。
    TheGonG
    TheGonG
    Jan 9, 2018
    98
    好像上次有個 v 友也是問了這個问题....
    sunnyadam
    sunnyadam
    Jan 9, 2018
    99
    基本无解
    M003
    M003
    Jan 9, 2018
    100
    @xwhxbg 昨晚刚处理了一条,大同小异,你把正常的 js 编译之后 把一串看不懂的字符串的最好一个"()"换成 ".toString() ",然后在控制器中运行一下,你看到一个新世界.
    1  2  
    ❮ ❯
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4822 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 234ms · UTC 05:52 · PVG 13:52 · LAX 21:52 · JFK 00:52
    ♥ Do have faith in what you're doing.