javascript - 动态服务 - apache - 仅限 html、javascript 和 .htaccess

标签 javascript html apache .htaccess mobile

我有桌面网站 (example.com) 和移动网站 (example.com/m/)。他们都有完全不同的 html 文件和样式表。我目前使用此脚本将桌面站点重定向到移动设备:

<!--
if ((navigator.userAgent.match(/iPhone/i)) ||                 
(navigator.userAgent.match(/iPod/i))) {
location.replace("/m/");
}
-->

但我希望它在移动设备上显示移动网站,同时仍显示桌面网站的 URL,而不是移动网站的 URL。我希望手机显示 (example.com) 而不是 (example.com/m/),而是显示来自 (example.com/m/) 的内容。我听说这可以通过动态服务实现,但我没有,也不想使用 CMS,我只使用 HTML、Javascript 和 .htaccess,不使用 PHP。

有什么想法吗?

我以前问过这个问题,但没有得到答案。有人可以帮忙吗?

谢谢。

最佳答案

是的。这很可能使用 .htaccess 文件。

下面是相同的工作代码。

  Options +FollowSymlinks
  RewriteEngine on

  # iPhone or iPad devices
  RewriteCond %{HTTP_USER_AGENT} iPhone|iPod
  RewriteCond %{REQUEST_URI} !\/rootfolder\/iphone
  RewriteRule ^(.*)$ /rootfolder/iphone/$1 [NC,L]

  # Android devices
  RewriteCond %{HTTP_USER_AGENT} Android
  RewriteCond %{REQUEST_URI} !\/rootfolder\/android
  RewriteRule ^(.*)$ /rootfolder/android/$1 [NC,L]

  # Every thing fallback to desktop/common site
  RewriteCond %{REQUEST_URI} !\/rootfolder\/desktop
  RewriteRule ^(.*)$ /rootfolder/desktop/$1 [NC,L]

上述规则与您正在使用的方法非常相似。我们正在检查用户代理。如果我们发现用户代理是 ipad 或 ipod,我们将提供 ipad 特定文件夹中的内容。如果是 android,则从 android 特定文件夹,如果没有匹配,它会回退到桌面。

关于javascript - 动态服务 - apache - 仅限 html、javascript 和 .htaccess,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51014825/

相关文章:

javascript - Chrome 扩展程序和 .click() 使用 localStorage 中的值循环

使用insde html onclick的javascript变量

apache - 在本地机器上托管 Web 应用程序的问题

javascript - 为每个用户分配一种颜色

javascript - 选择相同节点时,removeClass 之后的 AddClass 在 Kendo Treeview 中不起作用

javascript - 如何从 HTML DOM 中完全隐藏一个 div?

javascript - 使用 Javascript if else 在导航栏打开时触发 css 转换

mysql - Windows 版 XAMPP 存在安全漏洞?

ftp - 如何在 MAMP 服务器上安装 mod_ftp 模块

javascript - Ajax 请求成功但结果为空