移动网站和具有相同内容的网站/重定向到移动网站
本文关键字:网站 移动网 移动 重定向 | 更新日期: 2023-09-27 18:37:07
我的应用程序上有 2 个未解决的问题。我在 ASP.NET 上建立了一个网站(桌面)和一个移动网站。两个网站具有相同的功能,但移动视图不同。桌面版本有一个管理模块,作为管理员,我可以在其中更改不同的东西,其中包括......两个版本中显示的一些图像。
我的烦恼如下:
-
如何仅使用一个域打开站点,具体取决于所使用的设备
-
考虑到上述项目....如何为两个站点仅使用一个内容文件夹?(不同网站.css)
我将感谢域文件夹结构的帮助,以使其成为可能
如果您只想托管一个网站(这是完全可能的),我建议您在浏览器中使用用户代理。用户代理因浏览器/设备而异。因此,您可以轻松地为每个设备维护不同的视图。
打开 Global.asax 文件,并将以下代码添加到 Application_Start 方法。
DisplayModeProvider.Instance.Modes.Insert(0, new DefaultDisplayMode("iPhone")
{
ContextCondition = (context => context.GetOverriddenUserAgent().IndexOf
("iPhone", StringComparison.OrdinalIgnoreCase) >= 0)
});
然后,您可以轻松地在视图文件夹中创建不同的视图。只需确保为视图添加前缀:
index.cshtml
iphone.index.cshtml
您可以在本网站上找到更多信息:http://www.asp.net/mvc/tutorials/mvc-4/aspnet-mvc-4-mobile-features
我举了一个根据设备类型托管一个具有不同布局的网站的示例:http://kotatgent.azurewebsites.net/
您可以通过下载此扩展程序在 chrome 中手动更改用户代理来测试这一点:https://chrome.google.com/webstore/detail/user-agent-switcher-for-c/djflhoibgkdhkhhcedjiklpkjnoahfmg
你的问题相当广泛,但希望这些资源可以激励你朝着你想要的方向前进
。我会选择一个站点,并重构它以准备好移动。执行此操作的一个好方法是实现CSS媒体查询。看看这篇来自smashingmagazine的文章,了解该主题的介绍和一些入门的想法。使用媒体查询,您可以根据屏幕宽度、方向等因素定义断点,以使您的网站相应地呈现。
还可以考虑实现JavaScript库Modernizr,这也可以帮助您进行设备检测。此库可以帮助检测用户是否具有某些功能,这些功能可能会影响移动开发的某些方面,还可以提供基于设备检测的条件资源加载(如果对移动站点将加载的内容进行挑剔以节省带宽,则非常有用)。即我的桌面需要所有这些桌面JavaScript库,我的移动网站可能只需要这个。
如果你有能力从头开始,你可能会更好地从头开始,布置你希望移动的架构,以跨越多个平台。精心规划使用CSS媒体查询和现代化等资源可以产生一个网站,该网站有可能在任何设备上看起来都很棒,所有这些都包含在一个项目中。