index.html 3.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1" />
  6. <link rel="canonical" href="https://jamesfengcao.gitlab.io/uweb/en/offlinecache/" />
  7. <link rel="stylesheet" href="../style.css#" type="text/css" />
  8. <title>Offline resources</title>
  9. <script>
  10. function findLang(){
  11. let href = location.href;
  12. for(let i=href.length-1;i>0;i--){
  13. if('/'==href.charAt(i) && '/'==href.charAt(i-3))
  14. return i;
  15. }
  16. return 0;
  17. }
  18. function nav2(page){
  19. let i = findLang();
  20. location.href = location.href.substring(0,i+1)+page;
  21. }
  22. function nav2Lang(lang){
  23. let i = findLang();
  24. let href = location.href;
  25. location.href = location.href.substring(0,i-2)+lang+location.href.substring(i);
  26. }
  27. </script>
  28. </head>
  29. <body>
  30. <header class='header'>
  31. <a class="logo" href="javascript:void(0)" onclick="return nav2('index.html#')">Home</a> <a class="logo" href="javascript:void(0)" onclick="return nav2('tags/index.html#')">Tags</a>
  32. <a class="logo" href="javascript:void(0)" onclick="return nav2Lang('zh')">简体中文</a>
  33. <nav>
  34. </nav>
  35. </header>
  36. <br />
  37. <div class="container">
  38. <h1 class="title">Offline resources
  39. <br>
  40. <span class="subtitle"></span>
  41. </h1>
  42. <ul class="tags">
  43. </ul>
  44. <p>Offline resources locate in the folder &quot;sitecache&quot;. With the option &quot;use offline resources&quot; enabled, the corresponding files in &quot;sitecache/[domain name]/[full path including filename, the url path part]&quot; are loaded first before reaching the network.</p>
  45. <h4 id="serverless-local-sites">Serverless local sites</h4>
  46. <p><a href="i:01Extract webapp:i:0bsitecache/local/:">Click to install url service that extracts web apps to the folder &quot;sitecache/local/&quot;</a>: support web extensions (.crx for chrome &amp; .xpi for firefox).</p>
  47. <p>Any folder under &quot;sitecache&quot; can be visited as a local site. Urls with search queries can be dynamically processed by the js/wasm code in the local file.</p>
  48. <p>PWAs (Progresssive Web Applications) and some web extensions (.crx for chrome &amp; .xpi for firefox) are just packaged websites. Ex. the &quot;kiwix&quot; extension can be extracted to the folder &quot;sitecache/local/kiwix&quot;<sup id="fnref:1"><a href="#fn:1" class="footnote-ref" role="doc-noteref">1</a></sup>, then the kiwix extension can be accessed via url &quot;https://local/kiwix/www/index.html#&quot; in the browser.</p>
  49. <div class="footnotes" role="doc-endnotes">
  50. <hr>
  51. <ol>
  52. <li id="fn:1">
  53. <p>the folder name &quot;local&quot; is used as the domain name in the url.&#160;<a href="#fnref:1" class="footnote-backref" role="doc-backlink">&#x21a9;&#xfe0e;</a></p>
  54. </li>
  55. </ol>
  56. </div>
  57. </div>
  58. <p>Last Modified: 8 April 2024<br>
  59. fix typos<br>
  60. <pre></pre>
  61. </p>
  62. <script id='jsgiscus'
  63. src='https://giscus.app/client.js'
  64. data-repo="torappinfo/uweb"
  65. data-repo-id="MDEwOlJlcG9zaXRvcnkzMDIyMDU3MjE="
  66. data-category="Announcements"
  67. data-category-id="DIC_kwDOEgNLGc4CQjsh"
  68. data-mapping="title"
  69. data-strict="0"
  70. data-reactions-enabled="1"
  71. data-emit-metadata="0"
  72. data-input-position="top"
  73. data-theme="light"
  74. data-lang="en"
  75. data-loading="lazy"
  76. crossorigin="anonymous" async>
  77. </script>
  78. <footer class="site-footer">
  79. <div class="container">
  80. &copy; 2018-2024 Richard H. Cao
  81. </div>
  82. </footer>
  83. <!-- This document is licensed under the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is available at <https://www.gnu.org/licenses/>. -->
  84. </body>
  85. </html>