高端企业网站制作-一站式解决方案-河北乐客网站建设公司

网站定制

页面设计

网站设计制作一条龙

域名 + 空间 + 设计 + PC + 移动 + H5

网站模板下载

500+网站模板供您选择
价值千元模板不收取任何费用,免费下载.

我们的服务

公司以诚信服务对待每一位客户的售前售中售后.一言九鼎的态度。以科技创新的方法,认真务实的精神制造出每一个网站.

最新模板

  • square多功能商业公司wordpress主题
    287 免费模板
    Square是一个灵活的响应式多功能主题,兼容所有浏览器和设备,完全移动友好,具有许多功能。这是一个基于WordPress定制器的最小主题,允许您使用实时预览进行自定义。该主题可用于商业,企业,数字代理,个人,投资组合,摄影,视差,博客和杂志。Square是电子商务(WooCommerce)兼容,Polylang兼容,WPML,RTL,Retina Ready,SEO友好和支持bbPress和BuddyPress。更重要的是它是一个完整的主题。
    发布时间:2019-09-17 09:53:50
  • ENVO免费多用途WordPress主题
    262 免费模板
    Envo Multipurpose 是一个快速,干净,现代外观响应多用途,与有 WooCommerce 支持的 WordPress 主题。主题完全被加宽,因此用户可以通过使用易于使用的小工具来管理内容。主题与任何拖拽页面生成器,如 Elementor,KingComposer,Beaver Builder,SiteOrigin,Divi,Brizy,Visual Composer 等,并兼容所有的主要插件,如 WooCommerce,Yoast,Contact Form 7 等。
    发布时间:2019-09-17 09:17:50
  • Orfeo多用途响应式wordpress主题
    236 免费模板
    Orfeo 是一个具有多用途设计的响应 WordPress 主题。它很适合小型企业和公司业务,因为它可以通过现场定制器进行高度定制。您可以使用 Orfeo 创造餐馆、初创公司、自由职业者简历、创意机构、作品集、WooCommerce 或利基像体育、医疗、博客、时尚、律师等站点。它有一页 设计,Sendinblue 通讯整合,小工具化页脚和干净的外观。主题是兼容 Elementor Page Builder,Photo Gallery,Flat Parallax Slider,Travel Map;该主题是移动友好与之有良好的搜索引擎优化。
    发布时间:2019-09-16 17:34:13
  • Futurio免费多用途wordpress响应式主题
    330 免费模板
    Futurio 是一款轻量级,快速且可定制的免费多用途和 WooCommerce WordPress 主题,适用于商业,作品集,创意和摄影站点,电子商务商店,登陆页面,博客或 WooCommerce 店面。 Futurio 与所有页面构建器完美配合,如 Elementor,Beaver Builder,King Composer,Brizy,Visual Composer,SiteOrigin,Divi 或 Gutenberg,并支持大多数免费和优质 WordPress 插件,如WooCommerce,Jetpack,Contact Form 7,Yoast SEO 和更多。
    发布时间:2019-09-12 16:13:19
  • Zakra多用途wordpress响应式主题
    248 免费模板
    Zakra适用于个人博客,作品集,WooCommerce商店,商业站点和其他站点(如咖啡厅,水疗中心,慈善机构,瑜伽,婚礼,牙医,教育等)。与Elementor以及其他主要页面构建器一起使用,以便您可以创建所需的任何布局。主题是响应,Gutenberg兼容,SEO友好和主要的WordPress插件兼容。
    发布时间:2019-09-12 15:44:26
  • Hestia现代化企业创意wordpress主题
    227 免费模板
    Hestia是一个现代化 WordPress 主题。 该主题适合创意业务,小型企业(餐馆,婚礼策划人员,运动/医疗店),创业公司,企业业务,在线代理与公司,电子商务(WooCommerce)和自由职业者。 该主题具有多用途单页设计,页脚里使用小工具功能,博客/新闻页面和干净的外观,和各种插件兼容:Flat Parallax Slider, Photo Gallery, Travel Map and Elementor Page Builder。 主题拥有了响应式设计,兼容 WPML 与 Retina,SEO优化,并使用 Material Kit 进行设计。
    发布时间:2019-09-12 15:05:03

客户案例

专业的网站设计制作团队,坚持原创,尊重设计.

您不是第一个找我们做全网营销的客户,我们已经得到了很多客户的认可!

乐客网站制作案例-深圳智圆行方
乐客网站制作案例-深圳智圆行方

乐客网站制作案例-深圳智圆行方

河北乐客互联
  •  2

乐客网站制作案例-深圳智圆行方

乐客网站制作案例:智圆行方机构是由三位历经深圳顶尖公司的资深总监合力创办,主要为众多客户提供品牌策划、品牌定位、品牌设计、标志设计、VI设计、包装设计、食品包装设计、礼盒包装设计、保健品包装设计等业务,智圆行方吸收先进品牌理念,不断践行、更新、完善品牌推广的各个环节,坚持以踏踏实实的心态,完成每一个项目坚持只服务于拥有品牌雄心的客户。

  • 客户名称:深圳市智圆行方广告有限公司
  • 更新日期:2021-02-03 17:29:16

项目介绍

智圆行方机构是由三位历经深圳顶尖公司的资深总监合力创办,主要为众多客户提供品牌策划、品牌定位、品牌设计、标志设计、VI设计、包装设计、食品包装设计、礼盒包装设计、保健品包装设计等业务,智圆行方吸收先进品牌理念,不断践行、更新、完善品牌推广的各个环节,坚持以踏踏实实的心态,完成每一个项目坚持只服务于拥有品牌雄心的客户。

颜色选择

 

#fe1600

 

#333

案例预览

乐客网站制作案例:深圳智圆行方 乐客网站制作案例:深圳智圆行方 乐客网站制作案例:深圳智圆行方

乐客网站制作案例-上海国柔电缆
乐客网站制作案例-上海国柔电缆

乐客网站制作案例-上海国柔电缆

河北乐客互联
  •  16

乐客网站制作案例-上海国柔电缆

乐客网站制作案例:国柔电缆集产品研发、生产、销售于一体、拥有优良的生产设备和完善的检测手段,健全的管理体系、严格的作业流程、严谨的品质态度与优良的服务管理,确保优质高效的服务于客户。得到了国内外客户广泛认可与厚爱,确保了产品的优良品质。

  • 客户名称:上海国柔电缆
  • 更新日期:2020-09-16 11:08:01

项目介绍

国柔电缆集产品研发、生产、销售于一体、拥有优良的生产设备和完善的检测手段,健全的管理体系、严格的作业流程、严谨的品质态度与优良的服务管理,确保优质高效的服务于客户。得到了国内外客户广泛认可与厚爱,确保了产品的优良品质。

颜色选择

#28a745

#00c9a7

#377dff

#677788

项目预览

乐客网站制作案例:上海国柔电缆

乐客网站制作案例:上海国柔电缆

乐客网站建设案例-名雕装饰品牌网站
乐客网站建设案例-名雕装饰品牌网站

乐客网站建设案例-名雕装饰品牌网站

河北乐客互联
  •  16

乐客网站建设案例-名雕装饰品牌网站

乐客网站制作案例:名雕装饰股份有限公司始建于1999年,经过十余年的稳健发展,名雕已成为集家居设计服务、工程施工服务、公共装饰设计服务、材料物流配送、家私生产、售后服务、专业教育培训于一体的全国知名家居装饰企业。

  • 客户名称:名雕装饰
  • 更新日期:2020-09-16 10:03:28

项目介绍

名雕装饰股份有限公司始建于1999年,经过十余年的稳健发展,名雕已成为集家居设计服务、工程施工服务、公共装饰设计服务、材料物流配送、家私生产、售后服务、专业教育培训于一体的全国知名家居装饰企业。公司主营业务是为中大户型住宅客户提供专业、高品质的一体化装饰服务,是国内知名的以设计为特色的“一体化家居解决方案”服务商。旗下共拥有名雕装饰、名雕丹迪、名雕盛邦、名启生态家居产业园、美家世邦建材体验馆、名雕职业技能培训六大品牌服务机构。

总部设在深圳,并在深圳、东莞、中山、江门、佛山、广州、重庆、长沙、惠州等地设有40多家直营装饰设计服务机构。多年来名雕坚持“规范化、专业化、集团化”的发展道路,信守“忠诚、务实、沟通、稳健”的经营之道,恪守“原创设计为先”和“客户利益至上”原则,深受广大客户、政府主管部门、行业协会、媒体等社会各界的高度认可与信赖,先后荣获国家工程设计与施工壹级资质、全国装饰优秀标兵企业、中国建筑装饰行业质量与服务诚信企业、广东省著名商标企业等众多殊荣。在装饰设计行业领先全国的深圳特区,更被誉为装饰行业知名品牌。

项目预览

乐客网站建设案例-美莱全屋顶
乐客网站建设案例-美莱全屋顶

乐客网站建设案例-美莱全屋顶

河北乐客互联
  •  5

乐客网站建设案例-美莱全屋顶

乐客网站建设案例-美莱全屋顶项目介绍:从1986年建厂至今,MIDAS美莱一直致力于“让更多人实现美好家居生活梦想”的使命而不懈努力。现已成为集研发、设计、制造、营销、服务于一体的全屋定制领导品牌。MIDAS美莱专于精研,坚持原创,以用户的生活梦想为中心,以人为本的设计理念,为每一个家庭提供个性、高雅、多元化的家居定制解决方案。

  • 客户名称:美莱全屋顶
  • 更新日期:2020-07-21 09:54:44

项目介绍

从1986年建厂至今,MIDAS美莱一直致力于“让更多人实现美好家居生活梦想”的使命而不懈努力。现已成为集研发、设计、制造、营销、服务于一体的全屋定制领导品牌。MIDAS美莱专于精研,坚持原创,以用户的生活梦想为中心,以人为本的设计理念,为每一个家庭提供个性、高雅、多元化的家居定制解决方案。

整体风格

整体版面的风格主要以简约大气为主,网站的整体色调主要以灰色为主,版面的排版主要采用简洁的分块化形式展示,通过简约的深灰色灰和白色背景色块相互间隔区分内容模块,增强页面的层次感。

整体布局

在页面设计中使用新鲜的区域划分功能展示设计可以方便呈现不同的信息,方便用户进行快速选择和视觉聚焦,丰富的交互设计,层次分明、逻辑清晰,增加企业和用户之间的交流,有效提升用户体验,并凸出企业实力。

项目预览

乐客网站建设案例-美莱全屋顶

乐客网站建设案例-美莱全屋顶

乐客网站建设案例-名杰装饰
乐客网站建设案例-名杰装饰

乐客网站建设案例-名杰装饰

河北乐客互联
  •  4

乐客网站建设案例-名杰装饰

乐客网站建设案例-名杰装饰:作为家居的行业的领航人,名杰装饰一直给人诚恳舒适给人眼前一亮的感觉,所以这次网站保持原有的品牌的调性进行设计,让整个画面充满温馨的感觉让人更加亲切的体验。

  • 客户名称:名杰装饰
  • 更新日期:2020-06-23 17:22:47

项目介绍

作为家居的行业的领航人,名杰装饰一直给人诚恳舒适给人眼前一亮的感觉,所以这次网站保持原有的品牌的调性进行设计,让整个画面充满温馨的感觉让人更加亲切的体验。

每个模块均放代表名杰文化的宣传语,丰富的案例展示凸显公司实力,贴近用户体验的点缀与宣传语结合突出了名杰注重细节的发展理念,另外整个页面全方位展示了公司的各方面优势,进一步彰显企业的真正实力。网站整体风格结合VI设计,以专业、大气为主,红色为主色调,融入logo元素作为点缀,带给用户不一样的视觉体验,能很好的带领用户了解企业,并体现出企业的专业形象。

网站内容上主要以案例展示、工地展示、获取报价、设计团队为主要的展示内容,让浏览者能够全面的了解名杰品牌风格和公司实力。

项目预览

乐客网站建设案例-名杰装饰

乐客网站建设案例-名杰装饰


乐客网站建设案例-自然优品网站建设
乐客网站建设案例-自然优品网站建设

乐客网站建设案例-自然优品网站建设

河北乐客互联
  •  5

乐客网站建设案例-自然优品网站建设

乐客网站建设案例:自然优品NATURE HOME是大自然家居集团(香港股票代码2083)旗下公司,主要经营:家居软装、地板辅助产品、木质产品油漆和修复工具等业务。

  • 客户名称:名杰装饰
  • 更新日期:2020-05-28 15:09:18

项目介绍

自然优品NATURE HOME是大自然家居集团(香港股票代码2083)旗下公司,主要经营:家居软装、地板辅助产品、木质产品油漆和修复工具等业务。聚焦北欧风格家居,致力于为消费者打造自然、简约、精致的生活方式。旗下品牌门店有nordic gallery,nestnordic,fynd,经营品类涵盖了北欧原创设计家具、灯具灯饰、家居配饰、窗帘布艺、沙发布艺、收纳整理用品、软装搭配设计、智能家居产品等海量产品资源,自然优品NATURE HOME旨在成为国内北欧风格家居第一品牌。优网科技再一次与大自然集团达成愉快的合作,双方在沟通和协调合作上都十分顺利。

网页设计整体运用灰棕等莫兰迪色系,以及产品配图的衬托,营造出浓浓的北欧式温馨感。版面布局整齐,有序,整体浏览舒畅。广州网站建设中将页面动态效果与设计完美结合,产品模块可指向切换产品图展示,交互效果流畅。

项目预览

乐客网站建设案例-自然优品网站建设

乐客网站建设案例-自然优品网站建设

乐客网站建设案例-蟹行天下
乐客网站建设案例-蟹行天下

乐客网站建设案例-蟹行天下

河北乐客互联
  •  5

乐客网站建设案例-蟹行天下

乐客网站建设案例:蟹行天下作为中央电视台的合作伙伴,实力和口碑在业内也是非常不错,网站整站设计使用黑色及辅助色金色使网站更大气高端,随着手机和平板的增多,人们跟喜好在手机和平板上访问网站,技术上使用HTML5+css3,响应式网站设计的架构让网站能在平板、手机,和电脑上访问。​

  • 客户名称:蟹行天下
  • 更新日期:2020-05-21 15:29:44

项目介绍

蟹行天下大闸蟹企业官网制作是红旗网络打造的又一大型知名的企业官网,蟹行天下作为中央电视台的合作伙伴,实力和口碑在业内也是非常不错,网站整站设计使用黑色及辅助色金色使网站更大气高端,随着手机和平板的增多,人们跟喜好在手机和平板上访问网站,技术上使用HTML5+css3,响应式网站设计的架构让网站能在平板、手机,和电脑上访问。

项目预览

乐客网站建设案例-蟹行天下

乐客网站建设案例-蟹行天下

乐客网站建设案例-广州骏企驿站
乐客网站建设案例-广州骏企驿站

乐客网站建设案例-广州骏企驿站

河北乐客互联
  •  9

乐客网站建设案例-广州骏企驿站

乐客网站建设案例:广州骏企驿站简介-骏企驿站强调服务的专业性,在财税服务上,聘请注册会计师、注册税务师、高级会计师、中级会计师作为服务人员,以此解决创业者对于中介代理服务公司的信任问题。 骏企驿站凭借着不断开拓创新、与时俱进的精神,努力服务好每一个客户的宗旨,迅速地发展壮大,目前、已成立六家子公司。

  • 客户名称:广州骏企驿站
  • 更新日期:2020-05-19 14:59:01

项目介绍

骏企驿站强调服务的专业性,在财税服务上,聘请注册会计师、注册税务师、高级会计师、中级会计师作为服务人员,以此解决创业者对于中介代理服务公司的信任问题。 骏企驿站凭借着不断开拓创新、与时俱进的精神,努力服务好每一个客户的宗旨,迅速地发展壮大,目前、已成立六家子公司。

项目预览

乐客网站建设案例-广州骏企驿站

乐客网站建设案例-广州骏企驿站

乐客网站建设案例-上海室内设计网站建设
乐客网站建设案例-上海室内设计网站建设

乐客网站建设案例-上海室内设计网站建设

河北乐客互联
  •  10

乐客网站建设案例-上海室内设计网站建设

乐客网站建设案例:建司至今在酒店、餐饮、商业地产、休闲娱乐、博物馆、 展览中心等业态空间与公共空间设计经典案例屡现,在旧建筑改造、样板房设计、街区业态规划、文化主题空间和城市综合体概念策划等诸多领域佳绩斐然,卓越的设计创新能力与专业的商业空间整合解决能力令公司品牌效应享誉业界。

  • 客户名称:上海室内设计网站建设
  • 更新日期:2020-05-15 15:39:08

项目介绍

建司至今在酒店、餐饮、商业地产、休闲娱乐、博物馆、 展览中心等业态空间与公共空间设计经典案例屡现,在旧建筑改造、样板房设计、街区业态规划、文化主题空间和城市综合体概念策划等诸多领域佳绩斐然,卓越的设计创新能力与专业的商业空间整合解决能力令公司品牌效应享誉业界。

项目预览

乐客网站建设案例-上海室内设计网站建设

乐客网站建设案例-上海室内设计网站建设

years in business
59
team members
Clients Stats Icon
650+

关键词数量
Project Stats Icon
24 hour

工作时间
User Stories Stats Icon
220+

操作数量
Commits Stats Icon
1000+

用户咨询
我们的愿景【让客户的客户觉得满意】
河北乐客互联网络科技有限公司创立于2019年3月,是一家专注SEO、网站优化、网站建设、网站制作的互联网公司,虽然是才成立半年的新公司,但是每一位成员实际入行都已经4-5年的时间

乐客互联
by 乐客互联

我们的愿景【让客户的客户觉得满意】

河北乐客互联
  •  272

我们的愿景【让客户的客户觉得满意】

发布时间:2019-07-18 17:04:10



河北乐客互联网络科技有限公司创立于2019年3月,是一家专注SEO、网站优化、网站建设、网站制作的互联网公司,虽然是才成立半年的新公司,但是每一位成员实际入行都已经4-5年的时间;

我们是希望在这互联网的大潮当中做那个忠于自己和用户的企业,并非只为盈利而去服务,而是用户需要我们,我们帮用户解决了他们真正的问题;

处在行业内其实看到过很多很多利益驱使前行的公司,而我们更想以客户的满意度作为驱使我们前行的动力,乐客互联网络成员都深信一个道理,让用户满意,赚钱只是水到渠成的一件事,所以我们把中心都放在了用户服务上;

那么本网站的服务主体是围绕着网站建设、网站制作、高端网站设计,我们的优势在于本身精通SEO优化,了解什么样子的网站可以更好的满足搜索引擎优化的需求,企业只做一个网站意义是不大的,能在搜索引擎上有一定的排名才会让网站有更大的价值,才可以提升企业品牌的知名度,定位不同,所以价格各不相同,就像有的建站公司可以500元建站一样,您时不时需要面对网站挂马,被镜像等原因,并且问题多了,建站公司是不想在为用户服务的,因为利润太低。

乐客互联所用的服务器都是阿里云的服务器,即便是不能备案的网站同样是用的阿里云香港的服务器,十分的安全,如果您想建站,但是不知道选择哪家建站公司的话不如和我们合作,相信我们的服务会让您满意!

河北乐客互联LOGO


如何选择 SEO 友好的 WordPress 主题?
推出博客后的第一步是建立一个主题,看起来真棒和满意。虽然WordPress有一个大型的主题库,但我经常看到人们做出错误的主题选择,可能会损害他们在网上的整体业务。

乐客互联
by 乐客互联

如何选择 SEO 友好的 WordPress 主题?

河北乐客互联
  •  6

如何选择 SEO 友好的 WordPress 主题?

发布时间:2021-04-16 10:11:35


推出博客后的第一步是建立一个主题,看起来真棒和满意。虽然WordPress有一个大型的主题库,但我经常看到人们做出错误的主题选择,可能会损害他们在网上的整体业务。

大多数初学者最终选择了一个主题, 只是看起来惊人, 甚至不知道 Wordpress 的主题与 Seo 有关。我有很多朋友谁永远不会回头看一个主题的技术方面,而不仅仅是一个演示布局。

为什么你的主题是 SEO 的重要组成部分

在与 SEO 合作多年之后,我相信 WordPress 主题在决定网站的 SEO 成功性方面起着一定的作用,但不是直接的。这不是像安装一个主题,可以给你更高的排名或一个特定的主题,可能会伤害你的 SEO 的东西。

如果你正在密切监视决定 SEO 排名的信号的变化,则可以看到 UX 信号在整个 SEO 信号中的权重越来越高。但是主题与网站的用户体验有什么关系呢?

WordPress 主题在网站上贡献了UX的大部分内容。从加载过渡到内容结构,主题影响 UX 信号,如响应能力、快速加载、优化界面,以及更多即将成为 Google 核心 Web Vitals更新一部分的因素。

如你所知,SEO 正在随着页面体验信号而日复一日地变化。在这里,我们已经找出了一些事情,你应该专注于选择一个主题为你的 SEO 优化的网站。

1. 编码良好

如你所知,看起来真棒主题是真正的代码字符串在后端。可能有成千上万行的代码,使一个主题进入你所看到的现实。作为一个网站所有者谁也被告知了 WP 主题的 SEO 优势,你真的应该确保它是真的很好的编码。

只有编码良好的主题才能使 SEO 友好、安全、快速。但是,作为一个可能根本不了解任何编码语言的初学者,很难查看代码并深入了解其质量。

一个很好的经验法则是看看主题是否受欢迎,提供频繁的更新,只是看看开发人员公司,看看他们是否经验丰富。花些时间阅读主题评论。很多时候,你将能够找到其他开发人员的意见,你可以考虑这些意见。

2. 快速加载

你等待网站加载的时间有多长?也许 4 或 5 秒,但一项研究表明,40% 的读者放弃一个网站,如果它需要超过 3 秒加载。3 秒后的每一刻都会伤害你的 UX,用户弹跳的几率很高。

主题是加载时间慢的最常见原因之一。加载时,慢主题可能看起来很酷,但大多数时候,访问者已经反弹回来,离开你的网站,没有看到完全加载的页面。

你可以使用 GTMetrix 或 PageSpeed 洞察来检查当前主题的性能,并查看导致加载时间缓慢的问题。看看它是否加载在不到 3 秒,否则你可能需要考虑一个开关!

3. 响应式

响应式主题是根据屏幕大小和分辨率调整其布局。它们在较小的屏幕和移动设备上更方便用户,这是 SEO 方面的一个评分点。

响应主题往往能改善整体用户体验,并在 SEO 中发挥作用,因为在 Google 上,移动友好型页面排名更高。此外,根据谷歌搜索中心的一篇博文,他们表示 " 谷歌推荐响应式网页设计,因为它是最简单的设计模式来实现和维护。

2021 年,移动友好是必须的,因为移动用户占互联网用户总数的 80% 以上。你应该只考虑选择一个主题与响应式设计,适合不同的屏幕大小,而不使布局看起来丑陋!

4. 定期更新

大多数流行的 WordPress 主题有频繁的更新,也许每个月,以改善他们的功能和修补任何错误。如果你希望提供安全可靠的网站,则必须查找提供定期更新的主题。

你知道吗, 在 2018 年的所有 Cms 黑客中, 90% 是 Wordpress 的。据 Sucuri 称,39% 的被黑客攻击的网站使用了过时的软件。不仅用户,而且主题开发人员也应该打开定期更新,以提高其安全性。

因此,这些结果向我们展示的是,你应该选择一个主题,提供定期更新和安全改进,确保你的网站安全和健康!

5. SEO 插件兼容性

在阅读与 SEO 相关的文章时,我相信你将在博客 / 网站上安装 SEO 插件。你是否知道并非所有插件都与每个 WP 主题兼容?有些主题甚至可能有一个内置的 SEO 工具?

虽然这似乎很诱人,但内置的 SEO 选项通常会与你选择的其他 SEO 插件产生冲突。WP 探索者经验丰富的团队建议使用 SEO 插件,而不是带有主题的内置 SEO 工具。例如,主题开发人员通常擅长构建或设计主题,但这并不意味着他们理解 SEO。然而,Yoast(例如)的团队专门从事 SEO,并不断跟上最新的指南。因此,通过使用他们的插件,你可以确保你有最好的设置为你的网站 SEO。

检查插件是否允许 SEO 插件,以便你在选择正确的 WordPress 主题时做出明智的决定,这真的非常明智。获得顶部的 SEO 插件可以给我们一个削减领先于其他人谁错过了,这是一个简单的举动!

6. 交叉浏览器测试

获得跨浏览器测试主题非常重要,因为它可以确保你的网站将以预期的方式加载到不同操作系统、设备和屏幕大小的所有浏览器上。

作为网站所有者,你有责任检查你的主题是否经过交叉浏览器测试,这样,如果受众来自任何其他 Web 浏览器,你就不会错过任何受众。大多数主题将是现在交叉浏览器测试, 但它总是更好地照顾这些愚蠢的事情。

选择主题时,只需查看详细信息,看看开发人员是否列出了兼容或经过测试的浏览器。一个好的主题应该在现代浏览器(包括火狐,Safari,Opera,Chrome 和 Edge)工作,这样你就可以让你的观众到你的网站,而无需要求他们打开一个特定的浏览器或设备!

如何解决"内容比屏幕宽"错误 ?
谷歌搜索控制台可能会警告你各种移动可用性错误。除了 "可点击元素太接近" 之外,你的总结报告还可以包括 "内容大于屏幕" 问题。此问题将与 "可点击元素" 错误显示在 Google 搜索控制台中的同一位置。同样,它也有各种潜在原因。

乐客互联
by 乐客互联

如何解决"内容比屏幕宽"错误 ?

河北乐客互联
  •  13

如何解决"内容比屏幕宽"错误 ?

发布时间:2021-04-12 15:54:58


谷歌搜索控制台可能会警告你各种移动可用性错误。除了 "可点击元素太接近" 之外,你的总结报告还可以包括 "内容大于屏幕" 问题。此问题将与 "可点击元素" 错误显示在 Google 搜索控制台中的同一位置。同样,它也有各种潜在原因。

为什么 "内容比屏幕宽" 错误可能会出现

当你的网站设计水平扩展时,就会出现此错误,迫使移动用户侧身轻扫以查看 "屏幕外" 内容。自提供良好的用户体验,应尽可能避免水平滚动。

如果你在 CSS 声明中使用绝对值,则更有可能遇到 "内容大于屏幕" 的问题。由于不灵活的布局可能导致 "可点击元素" 错误,因此在同一移动可用性报告中遇到这两个错误并不罕见。

如何修复 "内容比屏幕宽" 错误(5 种方法)

如果你的报告包含 "内容大于屏幕" 错误,你可以使用一些简单的方法来解决它。让我们来看看五个最常见的选项。

1. 避免在 CSS 声明中使用绝对变量

修复 "内容大于屏幕" 错误的最佳方法之一是避免在 CSS 声明中使用绝对变量。你的内容不应要求特定视场正确显示和运行。

因此,你不应使用绝对值,而应选择相对宽度和位置值为你的 CSS 元素。尽可能使用相对值,你可以创建灵活的布局,以适应一系列屏幕尺寸。

2. 分配图像的最大宽度

具有固定尺寸的图像可能显示大于视场,进而触发 "内容大于屏幕" 错误。为了确保你的图像基于屏幕的尺寸进行缩放,最好将所有图像的最大宽度分配为 100%.

它将迫使图像收缩以适应可用空间。即使你使用 max-width,你仍然应该在<img>标签中使用宽度和高度属性,因为现代的 web 浏览器使用这些信息来为加载图像预留空间。使用<img>标签,当你的图像最终出现在屏幕上时,你可以避免布局移位。

3. 使用元视图标签

默认情况下,移动浏览器将页面呈现在桌面屏幕宽度(通常约为 980px)。然后,浏览器将尝试通过增加字体大小和缩放内容以适应当前屏幕尺寸来优化页面。

不幸的是,这种默认行为可能导致不一致。有些用户可能需要放大才能阅读和与你的内容交互,这就是为什么你可能会看到此错误的原因。

你不应依赖此默认行为,而应向浏览器提供有关如何控制页面尺寸和刻度的说明。你可以做到这一点插入元视图端口标签到你的文件的头部。

4. 使用现代 CSS 布局技术

你还可以通过切换网站布局来修复 "内容大于屏幕" 的错误。帮助你创建更灵活的布局,你可能需要考虑实施技术,如弹性盒、CSS 网格布局或多列布局。

5. 酌情使用 CSS 媒体查询

媒体查询可以更容易地根据用户设备(包括触摸屏)更改样式。因此,如果你此时仍在处理 "内容大于屏幕" 错误,我们建议在适当的时候使用 CSS 媒体查询。

进行这些更改后,需要进行测试,看看你是否成功解决了 "内容大于屏幕" 的错误。你可以通过重新运行移动可用性报告和使用我们在下一节中讨论的步骤验证修复程序来做到这一点。

如何验证和验证你的错误解决方法

无论你正在处理哪些上述错误,也无论你使用哪些方法来修复这些错误,确定你的更改是否解决了问题至关重要。你可以通过重新运行 Google 的移动可用性测试来做到这一点。

要做到这一点,导航回你的移动可用性报告并定位 "可点击元素太接近在一起" 错误。接下来,选择 验证修复选项。

请注意,如果你尝试验证和验证错误分辨率为 "内容大于屏幕",则可以重复这些相同的步骤。然后,Google 将抓取你的网站,你将收到一条消息,让你知道它正在验证更改。

如果你已经解决了错误,那么谷歌搜索控制台将显示一条 "已通过" 的消息和一个附带的绿色复选标记。另一方面,如果你使用的修复程序未得到验证,则必须重新检查错误以实现替代解决方案。

如何在 WordPress 中更改或重置密码
与大多数软件一样,你的 WordPress 登录凭据应位于事物列表的顶部,以确保安全。有时,即使采取最佳措施保护自己,也可能会丢失密码。或某些恶意软件破坏了它们。无论哪种方式,你都需要在 WordPress 中进行更改或重置。你甚至可能注意到,你以外的用户已受到威胁,需要更改或重设密码。

乐客互联
by 乐客互联

如何在 WordPress 中更改或重置密码

河北乐客互联
  •  7

如何在 WordPress 中更改或重置密码

发布时间:2021-04-09 15:07:53


与大多数软件一样,你的 WordPress 登录凭据应位于事物列表的顶部,以确保安全。有时,即使采取最佳措施保护自己,也可能会丢失密码。或某些恶意软件破坏了它们。无论哪种方式,你都需要在 WordPress 中进行更改或重置。你甚至可能注意到,你以外的用户已受到威胁,需要更改或重设密码。

本文将介绍如何在登录和注销的情况下更改和重置 WordPress 密码。

更改和重置密码的区别

在开始之前我们需要澄清的一点是,我们将在本文中涉及更改密码和重置密码。虽然它们是同义词,但它们不是同一回事。

当我们提到重置密码时,这将指示正在执行诸如使用忘记密码功能或类似操作的过程。WordPress 将处理一系列脚本或功能的重置。

当我们谈论更改 WordPress 密码时,是指手动将一个密码替换为另一个密码。你将输入一个密码并将其替换为另一个密码,例如在用户配置文件下或数据库查找和替换中以可填写的形式。

1. 如何通过仪表板更改你的 WordPress 密码

更改 WP 密码的最简单方法是照常登录 WordPress 仪表板。然后,在左侧管理面板中导航至 “用户–个人资料 ”。

在 WordPress 后台修改用户密码

向下滚动,直到在 “帐户管理” 下找到 “ 新密码” 选项, 然后设置所需的新密码。WordPress 将指示你的新密码是弱,中还是强(默认情况下会提供 “强” 密码)。如果你选择输入自己的密码,而 WordPress 认为它 “弱”,那么你将需要验证是否要使用弱密码。然后只需按更新配置文件。而且你将更改密码。

2. 如何通过电子邮件重置 WordPress 密码

如果你无权访问当前密码,但有权访问已注册的电子邮件,则可以点击 “忘记密码?”。WordPress 登录页面上的链接。新的 WordPress 网站使用 /wp-login 作为默认页面,但是出于安全原因,你的页面可能已更改。

使用电子邮件来重置 WordPress 密码

此时,站点将重定向你输入要重设的用户名或电子邮件。两者都会起作用。但是,如果系统中都不存在,则会告诉你很多信息。

输入电子邮件地址后,点击“重置密码”按钮,过一会你将收到一封重置 WordPress 密码的邮件。你只需要单击电子邮件中的链接,该链接的内容类似于单击此处重设密码。

访问该链接,将新密码输入到文本框中即可。

3. 如何在 phpMyAdmin 中更改 WordPress 密码

许多 WordPress 用户永远不会深入研究其站点的 PHP 文件,更不用说其核心 WP 数据库了。但是,如果你由于某种原因(可能是你需要新密码的原因)而无法访问网站,或者遇到电子邮件问题或服务器已关闭…… 则可能需要挖掘数据库以重置该 WordPress 密码。

最简单的方法是使用 phpMyAdmin。无论使用 cPanel 还是使用自己的专用面板,都应该能够通过主机的仪表板访问此工具。

进入 phpMyAdmin 后,你可以查看屏幕的左侧,找到你的数据库,在其中单击以加载内容并查看所有表。找到一个名为 wp_users 的数据表。

在此表内,你将找到在你的站点上注册的每个用户的列表。该 USER_LOGIN 通常是你将使用找到你要更改密码的用户之一。但是几乎所有的列都有标识信息,因此你完全不会迷路。你正在最左侧的列中找到 “ 编辑” 按钮,并且还将看到 user_pass 列。

打开 WordPress 用户数据表

找到需要找回密码的用户,点击“编辑”。你将要找到 user_pass 行,选择 MD5 作为加密方法,然后在右侧的字段中键入新密码(以纯文本!)。然后点击“执行”,新密码将生效。

为什么我们使用像 MD5 这样的旧加密方法来设置密码,这是因为虽然 WordPress 已经超越了 MD5 进行加密,但仍受其支持。WP 软件将使用其必须加密的最新方法,但是使用 MD5 是一种安全措施,可确保即使是较旧的过时版本也不会受到纯文本密码的攻击。

4. 如何使用 functions.php 更改 WordPress 管理员密码

如果所有其他方法都失败了,但是你仍然可以访问站点的文件系统,则可以通过 FTP 或通过主机的仪表板进行连接以更改密码。这不是最好的方法,但是有可能。你想要导航到 /public_html/wp-content/themes/current-theme-folder/ 并找到 functions.php 文件。

编辑 WordPress 中的 functions.php 文件

然后,你将需要下载 functions.php 的副本 。每当你触摸所需的 PHP 文件时,都希望对其进行备份。之后,在你喜欢的编辑器中将其打开。或浏览器中的一个(如果你的主机支持的话)。

此时,你需要将以下行添加到你的 functions.php 文件中。

wp_set_password( 'you_new_password', 1 ); 

变量 your_new_password 被你的新密码替换的地方。字符串中的 1 表示主站点管理员作为用户。使用此方法是重新获得对你站点的访问权的最安全方法。如果你碰巧知道另一个用户 ID 号,那也是可能的。但是 1 永远是站点管理员。因此 1 将始终授予你访问权限。

请记住,此方法将以纯文本(未加密)重置 WordPress 密码。因此,这是一个快速修复程序,你将尽快禁用它。登录后,返回文件并立即删除该行 。因为它是主题的 functions.php 文件的一部分 ,所以它将在每次调用该行时重置该密码,这在任何页面加载中都如此。

失去对 WordPress 网站的访问权限可能是发生在你身上的最可怕的事情之一。作为用户和管理员。幸运的是,无论你从哪个级别访问网站,你都可以选择。只需单击丢失的密码链接,即可重新获得登录权限。

7 个常见的 WordPress 登录问题(及其解决方案)
尽管 WordPress 是一个非常强大的平台,但它确实带有偶尔出现的错误和错误。WordPress 用户之间潜在的不满情绪之一是无法登录 WordPress 管理区域。造成 WordPress 登录问题的原因有很多,其中一些原因比其他原因更为常见。

乐客互联
by 乐客互联

7 个常见的 WordPress 登录问题(及其解决方案)

河北乐客互联
  •  7

7 个常见的 WordPress 登录问题(及其解决方案)

发布时间:2021-04-09 11:12:12


尽管 WordPress 是一个非常强大的平台,但它确实带有偶尔出现的错误和错误。WordPress 用户之间潜在的不满情绪之一是无法登录 WordPress 管理区域。造成 WordPress 登录问题的原因有很多,其中一些原因比其他原因更为常见。

本文将重点介绍一些最常遇到的登录问题,解释为什么会发生这些问题,并提供适当的解决方案。

7 个常见的 WordPress 登录问题

WordPress 登录问题可能有多种形式。但是,它们的共同点是它们通常相对容易修复。在本节中,我们将从最简单到最难解决的每个潜在的 WordPress 登录问题进行讨论。

1. 丢失或忘记密码

当然,这是一个显而易见的问题,但仍然是一个普遍的问题。如果你定期更改密码以帮助站点安全,则很容易忘记或丢失当前密码。尽管 WordPress 具有内置功能可以帮助你重置密码,但是有许多因素可能会使该过程脱轨。因此,实际上可能有许多不同的潜在解决方案,你可能需要运行。

如何找回丢失或忘记的密码

如果你丢失或忘记了密码,可以先尝试使用内置的恢复功能。点击忘记密码了?在登录屏幕上,将提示你输入电子邮件地址。WordPress 将通过电子邮件向你发送一个链接,你可以使用该链接来创建新密码:

找回 WordPress 登录密码

如果由于某种原因你不能使用此方法,则可以尝试另外两种方法。

首先,如果你曾经使用多个浏览器或设备登录 WordPress,请检查这些浏览器或设备是否仍在登录。然后访问管理面板并更改密码。

如果这不起作用,你的下一个最佳选择是直接在 WordPress 数据库中更新密码。大多数 Web 主机将为你提供对数据库管理软件(例如 phpMyAdmin)的访问权限。你可以使用该软件直接编辑数据库中的值,包括密码。

但是,在编辑 WordPress 数据库之前,请创建网站的完整备份。然后继续执行以下步骤:

  • 启动 phpMyAdmin,找到你站点的数据库,然后打开 wp_users 表格。
  • 在用户列表中,在user_login 列中找到你的用户名, 然后选择 该行旁边的 “编辑”。
  • 找到该 user_pass 字段,然后在 “” 字段中输入新的纯文本密码 ,替换现有的符号和字符。
  • 从下拉菜单中,选择 MD5。
  • 滚动到页面底部,然后单击 Go

此时,你应该能够使用刚刚分配给 WordPress 用户名的新密码 phpMyAdmin 登录:

从数据库中修改 WordPress 登录密码

2. 缓存和 Cookie

Cookies 是位于浏览器目录中的小文件,用于存储有关用户与特定网站的交互的信息。WordPress 要求在登录过程中使用 cookie。如果未启用 Cookie,则无法进行 WordPress 登录。

浏览器缓存是指访问网页时存储在 Web 浏览器中的临时文件。如果你的缓存未正确更新,则你可能正在查看某些支持 WordPress 的文件的旧版本。

如何清除浏览器的缓存和 Cookie

幸运的是,与缓存和 Cookie 相关的 WordPress 登录问题通常很容易解决。首先,检查以确保启用了 cookie,然后 清除缓存和 cookie。

3. 插件干扰

插件可能会干扰登录过程。插件可能未正确更新,或者你的两个或多个插件之间可能存在 冲突。

如何解决 WordPress 登录中的插件干扰

你需要做的第一件事就是确认问题是由插件引起的。你可以通过停用所有插件或临时重命名 plugins 文件夹来执行此操作。

如果你有权访问管理面板,只需转到 “插件” 菜单并停用所有插件。确保首先 备份你的站点。选择所有插件,转到 批量操作,然后选择停用

如果你无权访问管理面板,则可以在 WordPress 目录中重命名 plugins 文件夹。使用文件传输协议(FTP)客户端,找到 wp-content / plugins 文件夹,并将其临时重命名:

修改 WordPress 插件目录名称

重命名该文件夹后,WordPress 将无法识别或访问它。这意味着它将自动禁用你网站上的所有插件。尽管这可能会造成一些破坏,但这是确认插件是否在你的登录问题背后的最快方法。

停用所有插件后,请尝试登录。如果现在可以登录,则表明已确认是引起该问题的插件。如果是这样,则需要进行故障排除以发现哪个插件引起了该问题。

4. 主题干扰

主题问题可能会导致 WordPress 登录问题,尤其是如果你的主题包括自定义登录页面时。当安装有问题的主题更新或更新 WordPress 核心时,此问题很可能引起人们的注意,从而导致主题不兼容。

如何解决 WordPress 登录的主题干扰

确定你的主题是否在登录困境中的工作原理与使用插件相同。你可以通过 FTP 更改活动主题的文件夹名称,而 WordPress 将恢复为其默认模板。

为此,请临时重命名活动主题的目录,以使 WordPress 无法识别它。使用 FTP 客户端访问 wp-content / themes 文件夹,找到活动主题的文件夹,并修改一个新名称。

现在尝试登录以确认主题是问题。如果你的活动主题是登录问题的根源,则可能需要临时切换模板或禁用自定义登录页面(如果使用的是登录页面)。

5. 损坏的登录文件

默认情况下,你的 WordPress 登录页面位于 wp-login.php,这也是其相应文件的名称。如果 WordPress 无法找到该文件,则你将无法登录你的网站,并且可能会遇到 404 错误。

如何还原 WordPress 登录文件

要确定是否是问题所在(并同时解决),你将需要用全新的 wp-login.php 文件替换它。为此:

  • 在删除你的登录文件之前,请备份 WordPress。
  • 在 WordPress 目录中找到你的 wp-login.php 文件 。
  • 接下来,下载 最新版本的 WordPress, 并 在新下载的文件中找到 wp-login.php 文件。
  • 复制此文件代替你删除的文件。
  • 打开新的登录文件,然后搜索 “重新定义 user_login”。
  • 在以该短语开头的 PHP 注释的下面,找到并替换代码,如下面的代码片段所示。
// Delete this line
$user_login = $user_data["user_login"];
 
// Replace it with this line
$user_login = $user_data-&amp;amp;amp;amp;amp;gt;user_login; 

如果损坏的 wp-login.php 文件是造成你的登录问题的原因,则应立即修复!

6. 重定向 WordPress 或站点 URL

在 WordPress 的地址 URL 标识安装 WordPress 的位置,而网站地址 URL 标识了你的网站应该解决的问题。如果其中任何一个错误,则可能导致 WordPress 登录问题和其他错误,使你无法访问 admin 部分。

如果你最近迁移了网站或更改了 WordPress 核心文件的位置,则可能会发生这种情况。这也可能仅仅是由于在使用 WordPress 数据库时出现了错误的击键(碰巧发生在我们当中!)。

如何修复你的 WordPress 地址 URL 错误

修复 WordPress 地址和站点地址 URL 时,有很多 潜在的解决方案。但是,有一个简单的(虽然是临时的)技巧可以使你确认实际上确实有 URL 问题。

备份站点后,访问目录中的 wp-config.php 文件 并添加以下代码:

define('WP_HOME','http://example.com');
define('WP_SITEURL','http://example.com'); 

确保使用的 WordPress 地址 URLWP_HOME 和的站点地址 URL WP_SITEURL。默认情况下,两个地址将相同。但是,如果你为 WordPress 提供了自己的目录,则 WordPress 地址 URL 将包括你安装 WordPress 的目录。

接下来,保存更新的 wp-config.php 文件并将其上传到你的服务器。它应该覆盖 WordPress 目录中现有的 wp-config.php 文件。立即尝试登录,如果可以的话,那么你知道造成问题的原因是什么。

请记住,这只是暂时的解决方法。如果使用此方法,它将把这些值硬编码到你的网站中,并阻止你通过 “ WordPress 设置” 页面更改它们。

取而代之的是,WordPress Codex 建议你采用以下方法之一来更新站点的 URL:

  1. 编辑你的 functions.php 文件。
  2. 通过数据库更改 URL。
  3. 使用 WordPress 的 “重新定位” 功能。

你可以在 Codex 中找到有关如何执行所有三种方法的说明。但是,在开始工作之前,请删除你添加到文件中的两行,从而将 wp-config.php 文件返回到其先前的状态。

7. 损坏的.htaccess 文件

.htaccess 文件包括服务器配置说明以及多个或单个目录的配置。WordPress 带有.htaccess 文件,你可以对其进行修改以实现重定向,将 IP 地址列入白名单等。但是,修改.htaccess 文件的一个问题是,该文件可能会损坏并导致 WordPress 登录问题。

如何修复损坏的 .htaccess 文件

修复损坏的.htaccess 文件的最简单方法 是用干净副本替换服务器上的版本。这是 WordPress .htaccess 文件通常包含的默认代码 :

# BEGIN WordPress
 
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
 
# END WordPress 

你需要做的是访问 WordPress 目录并在其中找到 .htaccess 文件。以防万一,将其下载到你的计算机上,然后在服务器上编辑该文件。将其代码替换为上面看到的代码片段,然后将更改保存到其中。

重要的是要了解,如果你对.htaccess 文件进行了任何修改,则这样做可能会影响网站功能的一部分 。一些 Web 主机还为你开箱即用地进行修改,以实现更好的性能。

有了“干净的” .htaccess 文件后,请尝试再次登录到你的网站,并且该问题已解决。

如何修复 WordPress 中的 “缺少临时文件夹” 错误
毫无疑问,WordPress 是构建你的网站的最著名的内容管理系统。它不仅给企业主留下了深刻的印象,不仅是免费的费用,而且还具有易于使用的功能。

乐客互联
by 乐客互联

如何修复 WordPress 中的 “缺少临时文件夹” 错误

河北乐客互联
  •  7

如何修复 WordPress 中的 “缺少临时文件夹” 错误

发布时间:2021-04-08 15:49:50


毫无疑问,WordPress 是构建你的网站的最著名的内容管理系统。它不仅给企业主留下了深刻的印象,不仅是免费的费用,而且还具有易于使用的功能。

尽管很受欢迎,但 WordPress 有时还是会由于常见错误而使你发疯。尝试加载网站时,看到白屏死机而没有任何消息或其他帮助,你可能会感到惊讶。当 WordPress 也无法连接到你的 MySQL 数据库服务器时,你可能会遇到 “建立数据库连接时出错” 的信息。

它不仅止于此。你还应注意的另一个重要错误是 “缺少临时文件夹”。发生此错误时,你将无法上传文件,更新插件和主题,甚至无法获取更新的 WordPress 核心版本。

听起来很认真,对不对?但是不要轻易生气!总有解决所有问题的方法。在本文中,我们将快速说明 “缺少临时文件夹” 错误是什么以及它如何影响你的网站性能。然后,继续阅读以探索如何处理该问题。

是什么导致缺少临时文件夹错误?

临时文件夹是指 WordPress 将你上传的文件保存或在其移动到所需位置之前更新插件和主题数据的位置。没有此文件夹,WordPress 将无法进行这些操作。

如果你在托管环境中错误地配置了 PHP 设置,则不会显示临时文件夹供 WordPress 放置新的更新。当你不小心将其删除时,也会发生该错误。

因此,你无法上传图像,添加新插件,更新主题,甚至无法更新 WordPress 核心。

如何处理 “缺少临时文件夹” 错误

通过修改站点的 wp-config.php 文件,很容易解决 “缺少临时文件夹” 问题。你需要登录服务器才能在其中进行更改。在进行调整和修复之前,必须备份 wp-config.php,否则,你将丢失重要的数据。

请按照以下 3 个步骤在 WordPress 中设置自动备份:

步骤 1:登录 WordPress 服务器

你可以通过托管服务(例如 FTP 客户端或 CPanel)登录到服务器。登录 URL 的末尾应包含 slug/cpanel,例如,www.mywebsite.com/cpanel 。之后,用你的电子邮件和密码填写登录表单。

步骤 2:找到并编辑 wp-config.php 文件

登录后,在 “文件” 部分下打开文件管理器应用程序。

然后,你将看到一个包含 wp-config.php 核心文件的 public.html 文件夹。右键单击并选择 “编辑” 以开始编辑文件。

在该文件中添加以下代码:

define(‘WP_TEMP_DIR’,dirname(_FILE_). ‘/wp-content/temp/’); 

保存这些更改,以便 WordPress 可以开始定义和查找临时文件夹的位置。

步骤 3:在 /wp-content/ 中创建一个新文件夹

现在,你需要回到 public.html 文件夹,移至 /wp-content/ 文件夹。你需要在该 /wp-content/ 文件夹中添加一个名为 “temp” 的新文件夹。

新的临时文件夹现在应该可以使用了。你可以通过尝试将图像上传到 WordPress 媒体库来进行检查。

没有临时文件夹,WordPress 无法在将数据移动到所需位置之前存储数据。要解决此问题,你需要登录到托管服务器并编辑 /wp-config.php 文件。在此进行任何更改之前,请记住备份你的文件夹。

如何在 WordPress 中添加 HTTP 标头
HTTP 安全标头不仅可以为你的 WordPress 网站添加额外的安全保障,还可以帮助阻止常见的恶意入侵影响你的网站性能。在本文中,我们将向你展示如何在 WordPress 中轻松添加 HTTP 安全标头。

乐客互联
by 乐客互联

如何在 WordPress 中添加 HTTP 标头

河北乐客互联
  •  6

如何在 WordPress 中添加 HTTP 标头

发布时间:2021-04-07 15:29:10


HTTP 安全标头不仅可以为你的 WordPress 网站添加额外的安全保障,还可以帮助阻止常见的恶意入侵影响你的网站性能。

在本文中,我们将向你展示如何在 WordPress 中轻松添加 HTTP 安全标头。

什么是 HTTP 安全标头?

HTTP 安全标头是一种安全措施,可让你的网站服务器在影响你的网站之前阻止一些常见的安全威胁。

基本上,当用户访问你的网站时,你的 Web 服务器会将 HTTP 标头响应发送回他们的浏览器。该响应告诉浏览器有关错误代码,缓存控制和其他状态的信息。

正常的标头响应会发出状态为 HTTP 200 的消息。此后,你的网站就会加载到用户的浏览器中。但是,如果你的网站出现问题,则你的网络服务器可能会发送其他 HTTP 标头。

例如,它可能会发送 500 内部服务器错误或未找到的 404 错误代码。

HTTP 安全标头是这些标头的子集,用于防止网站遭受常见的威胁,例如单击劫持,跨站点脚本,暴力攻击等。

让我们快速浏览一下 HTTP 安全标头的外观以及它们如何保护你的网站。

HTTP 严格传输安全性(HSTS)

HTTP 严格传输安全(HSTS)标头告诉 Web 浏览器你的网站使用 HTTP,并且不应使用 HTTP 这样的不安全协议进行加载。

如果你已将 WordPress 网站从 HTTP 移至 HTTPs,则此安全标头可让你停止浏览器通过 HTTP 加载网站。

X-XSS Protection

X-XSS Protection 标头允许你阻止跨站点脚本加载到 WordPress 网站上。

X-Frame-Options

X-Frame-Options 安全标头可防止跨域 iframe 或点击劫持。

X-Content-Type-Options

X-Content-Type-Options 阻止内容 mime 类型的嗅探。

让我们看一下如何轻松地在 WordPress 中添加 HTTP 安全标头。

在 WordPress 中添加 HTTP 安全标头

在网络服务器级别设置 HTTP 安全头(即 WordPress 托管帐户)时,它们的工作效果最佳。这使它们可以在典型的 HTTP 请求中尽早触发,并提供最大的收益。

如果你使用的是 DNS 级别的网站应用程序防火墙(如 Sucuri 或 Cloudflare),它们甚至可以更好地工作。我们将向你展示每种方法,你可以选择最适合自己的一种。

1. 使用 Sucuri 在 WordPress 中添加 HTTP 安全标头

Sucuri 是市场上最好的 WordPress 安全插件。如果你也使用他们的网站防火墙服务,则可以设置 HTTP 安全标头,而无需编写任何代码。

首先,你需要注册一个 Sucuri 帐户。它是一项付费服务,带有服务器级网站防火墙,安全插件,CDN 和恶意软件清除保证。

在注册过程中,你将回答简单的问题,Sucuri 文档将帮助你在网站上设置网站应用程序防火墙。

注册后,你需要安装并激活免费的 Sucuri 插件。激活后,转到 Sucuri 安全性 » 防火墙(WAF)页面,然后输入防火墙 API 密钥。你可以在 Sucuri 网站上的帐户下找到此信息。单击保存按钮以存储你的更改。

接下来,你需要切换到 Sucuri 帐户仪表板。在此处,单击顶部的 “设置” 菜单,然后切换到 “安全性” 选项卡。

从这里你可以选择三套规则。默认保护为 HSTS 和 HSTS Full。你将看到哪些 HTTP 安全标头将应用于每组规则。

单击 “在其他标题中保存更改” 按钮以应用更改。

就是这样,Sucuri 现在将在 WordPress 中添加你选择的 HTTP 安全标头。由于它是 DNS 级别的 WAF,因此即使在黑客到达你的网站之前,也可以保护你的网站流量免受黑客的攻击。

2. 使用 Cloudflare 在 WordPress 中添加 HTTP 安全标头

Cloudflare 提供了基本的免费网站防火墙和 CDN 服务。它的免费计划中缺少高级安全功能,因此你需要升级到价格更高的专业计划。

一旦 Cloudflare 在你的网站上处于活动状态,请转到 Cloudflare 帐户信息中心下的 SSL / TLS 页面,然后切换到 “边缘证书” 选项卡。

现在,向下滚动到 “HTTP 严格传输安全性(HSTS)” 部分,然后单击 “启用 HSTS” 按钮。

这将弹出一个弹出窗口,其中包含说明,告诉你在使用此功能之前必须在 WordPress 上启用 HTTPS 。单击下一步按钮继续,你将看到添加 HTTP 安全标头的选项。

在这里,你可以启用 HSTS,no-sniff 标头,将 HSTS 应用于子域(如果它们使用的是 HTTPS)并预加载 HSTS。

此方法使用 HTTP 安全标头提供基本保护。但是,它不允许你添加 X-Frame-Options,并且 Cloudflare 没有用户界面可以执行此操作。

你仍然可以通过使用 Workers 功能创建脚本来做到这一点。但是,创建 HTTPS 安全标头脚本可能会给初学者带来意外的问题,这就是我们不推荐这样做的原因。

3. 使用 .htaccess 在 WordPress 中添加 HTTP 安全标头

此方法允许你在服务器级别在 WordPress 中设置 HTTP 安全标头。

它要求你编辑网站上的.htaccess 文件。它是最常用的 Apache Web 服务器软件使用的服务器配置文件。

只需使用 FTP 客户端或托管控制面板中的文件管理器应用程序连接到你的网站。在你网站的根文件夹中,你需要找到.htaccess 文件并进行编辑。

这将在纯文本编辑器中打开文件。在文件底部,你可以添加代码以将 HTTPS 安全标头添加到 WordPress 网站。

你可以使用以下示例代码作为起点,它使用最佳设置设置最常用的 HTTPs 安全标头:

<ifModule mod_headers.c>
Header set Strict-Transport-Security "max-age=31536000" env=HTTPS
Header set X-XSS-Protection "1; mode=block"
Header set X-Content-Type-Options nosniff
Header set X-Frame-Options DENY
Header set Referrer-Policy: no-referrer-when-downgrade
</ifModule> 

不要忘记保存你的更改并访问你的网站,以确保一切正常。

注意:错误的标题或.htaccess 文件中的冲突可能会在大多数 Web 主机上触发 500 Internal server error。

4. 使用插件在 WordPress 中添加 HTTP 安全标头

这种方法效果不佳,因为它依赖 WordPress 插件来修改标头。但是,这也是向你的 WordPress 网站添加 HTTP 安全标头的最简单方法。

首先,你需要安装并激活重定向插件。

激活后,插件将显示一个设置向导,你可以按照该向导进行设置。之后,转到 “工具”»“重定向” 页面,然后切换到 “站点” 选项卡。

接下来,你需要向下滚动到页面底部的 “HTTP 标头” 部分,然后单击 “添加标头” 按钮。从下拉菜单中,你需要选择 “添加安全性预设” 选项。

在 WordPress 中添加 HTTP 安全标头

之后,你将需要再次单击以添加这些选项。现在,你将看到一个 HTTP 安全标头的预设列表出现在表中。

这些标题针对安全性进行了优化,你可以对其进行查看并在需要时进行更改。完成后,请不要忘记单击 “更新” 按钮以保存你的更改。

现在,你可以访问你的网站,以确保一切正常。

如何检查网站的 HTTP 安全标头

现在,你已将 HTTP 安全标头添加到你的网站。你可以使用免费的 “安全标题” 工具测试你的配置。只需输入你的网站 URL,然后单击 “扫描” 按钮。

然后它将检查你网站的 HTTP 安全标头,并向你显示报告。该工具将生成一个所谓的成绩标签,你可以忽略该标签,因为大多数网站最多会获得 B 或 C 评分,而不会影响用户体验。

它将显示你的网站发送了哪些 HTTP 安全标头,并且不包含哪些安全标头。如果你要设置的安全标头在此处列出,则说明你已完成。

仅此而已,我们希望本文能帮助你学习如何在 WordPress 中添加 HTTP 安全标头。

在浏览器中取消阻止剪贴板访问
在过去的几年中,浏览器已用于 document.execCommand() 剪贴板交互。尽管得到了广泛的支持,但这种剪切和粘贴方法还是要付出代价的:剪贴板访问是同步的,并且只能读写 DOM。

乐客互联
by 乐客互联

在浏览器中取消阻止剪贴板访问

河北乐客互联
  •  52

在浏览器中取消阻止剪贴板访问

发布时间:2021-01-18 13:46:21


在过去的几年中,浏览器已用于 document.execCommand() 剪贴板交互。尽管得到了广泛的支持,但这种剪切和粘贴方法还是要付出代价的:剪贴板访问是同步的,并且只能读写 DOM。

这对于一小段文字来说很好,但是在很多情况下,阻止页面进行剪贴板传输是一种糟糕的体验。在内容可以安全粘贴之前,可能需要耗时的清理或图像解码。浏览器可能需要从粘贴的文档中加载或内联链接资源。在磁盘或网络上等待时会阻塞页面。想象一下,将权限添加到混合中,要求浏览器在请求剪贴板访问时阻止页面。同时,document.execCommand()用于剪贴板交互的权限 被松散定义,并且在浏览器之间有所不同。

在 异步剪贴板 API 解决了这些问题,提供了一个良好定义的权限模型不阻止页面。Safari 最近宣布 在 13.1 版中支持它。这样,主要的浏览器就具有基本的支持水平。在撰写本文时,Firefox 仅支持文本。在某些浏览器中,图像支持仅限于 PNG。如果你对使用 API感兴趣, 请 在继续之前查阅浏览器支持表。

异步剪贴板 API 仅限于处理文本和图像。Chrome 84 引入了一项实验性功能,该功能使剪贴板可以处理任意数据类型。

复制:将数据写入到剪贴板

writeText()

要将文本复制到剪贴板,请调用writeText()。由于此 API 是异步的,因此该writeText()函数将返回一个 Promise,该 Promise 将根据传递的文本是否被成功复制来解决或拒绝:

async function copyPageUrl() {
  try {
    await navigator.clipboard.writeText(location.href);
    console.log('Page URL copied to clipboard');
  } catch (err) {
    console.error('Failed to copy: ', err);
  }
} 

write()

实际上,writeText()这只是通用write() 方法的一种便捷方法,它还允许你将图像复制到剪贴板。像一样writeText(),它是异步的并返回 Promise。

要将图像写入剪贴板,你需要将图像作为 blob。一种实现方法是使用fetch(),从服务器请求图像,然后调用 blob()响应。

由于多种原因,可能不希望或不可能从服务器请求图像。幸运的是,你还可以将图像绘制到画布上并调用 canvas 的 toBlob() 方法。

接下来,将ClipboardItem对象数组作为参数传递给write() 方法。目前,你一次只能传送一张图片,但我们希望将来增加对多张图片的支持。ClipboardItem将图像的 MIME 类型作为键并将 Blob 作为值的对象。对于从fetch()或获取的 Blob 对象canvas.toBlob(),该blob.type属性自动包含图像的正确 MIME 类型。

try {
  const imgURL = '/images/generic/file.png';
  const data = await fetch(imgURL);
  const blob = await data.blob();
  await navigator.clipboard.write([
    new ClipboardItem({
      [blob.type]: blob
    })
  ]);
  console.log('Image copied.');
} catch (err) {
  console.error(err.name, err.message);
} 

复制事件

在用户启动剪贴板副本的情况下,非文本数据将作为 Blob 提供给你。该 copy事件 包括一个clipboardData属性,该属性具有已采用正确格式的项目,从而无需手动创建 Blob。呼叫preventDefault()以防止默认行为因你自己的逻辑而异,然后将内容复制到剪贴板。在此示例中未涵盖的是当不支持剪贴板 API 时如何回退到较早的 API。

document.addEventListener('copy', async (e) => {
    e.preventDefault();
    try {
      let clipboardItems = [];
      for (const item of e.clipboardData.items) {
        if (!item.type.startsWith('image/')) {
          continue;
        }
        clipboardItems.push(
          new ClipboardItem({
            [item.type]: item,
          })
        );
        await navigator.clipboard.write(clipboardItems);
        console.log('Image copied.');
      }
    } catch (err) {
      console.error(err.name, err.message);
    }
  }); 

粘贴:从剪贴板中读取数据

readText()

要从剪贴板中读取文本,请致电navigator.clipboard.readText()并等待返回的 Promise 解决:

async function getClipboardContents() {
  try {
    const text = await navigator.clipboard.readText();
    console.log('Pasted content: ', text);
  } catch (err) {
    console.error('Failed to read clipboard contents: ', err);
  }
} 

read()

navigator.clipboard.read()方法也是异步的,并返回 Promise。要从剪贴板读取图像,请获取 ClipboardItem 对象列表 ,然后对其进行迭代。

每个都ClipboardItem可以将其内容保留为不同的类型,因此你需要再次使用for...of循环来遍历类型列表。对于每种类型,请getType()以当前类型为参数调用该方法以获得相应的 Blob。和以前一样,此代码不与图像绑定,并且可以与其他将来的文件类型一起使用。

async function getClipboardContents() {
  try {
    const clipboardItems = await navigator.clipboard.read();
    for (const clipboardItem of clipboardItems) {
      for (const type of clipboardItem.types) {
        const blob = await clipboardItem.getType(type);
        console.log(URL.createObjectURL(blob));
      }
    }
  } catch (err) {
    console.error(err.name, err.message);
  }
} 

paste 事件

如前所述,已经计划引入事件以与 Clipboard API 一起使用,但是现在你可以使用现有paste事件。它与用于读取剪贴板文本的新异步方法很好地配合使用。与copy活动一样,不要忘记致电preventDefault()

document.addEventListener('paste', async (e) => {
  e.preventDefault();
  const text = await navigator.clipboard.readText();
  console.log('Pasted text: ', text);
}); 

处理多种文件类型

大多数实现将多种数据格式放在剪贴板上,以便进行单个剪切或复制操作。这样做的原因有两个:作为应用程序开发人员,你无法了解用户要将文本或图像复制到的应用程序的功能,并且许多应用程序都支持将结构化数据粘贴为纯文本。这是通过 “编辑” 菜单项呈现给用户的,该菜单项的名称为 “粘贴和匹配样式” 或 “不格式化”

以下示例显示了如何执行此操作。此示例用于fetch()获取图像数据。

function copy() {
  const image = await fetch('kitten.png');
  const text = new Blob(['Cute sleeping kitten'], {type: 'text/plain'});
  const item = new ClipboardItem({
    'text/plain': text,
    'image/png': image
  });
  await navigator.clipboard.write([item]);
} 

安全性和权限

剪贴板访问一直是浏览器的安全隐患。没有适当的权限,页面可能会以静默方式将所有形式的恶意内容复制到用户的剪贴板,粘贴时会产生灾难性的结果。

剪贴板 API 的权限提示

使网页不受限制地对剪贴板具有读取权限,这会更加麻烦。用户通常将诸如密码和个人详细信息之类的敏感信息复制到剪贴板,然后在用户不知情的情况下,任何页面都可以读取这些信息。

与许多新 API 一样,剪贴板 API 仅支持通过 HTTPS 服务的页面。为防止滥用,仅当页面为活动选项卡时才允许剪贴板访问。活动选项卡中的页面可以在不请求权限的情况下写入剪贴板,但是从剪贴板中读取始终需要权限。

复制和粘贴的权限已添加到 Permissions API 中。clipboard-write当页面是活动选项卡时,权限会自动授予它们。clipboard-read必须请求该权限,你可以通过尝试从剪贴板读取数据来执行此操作。下面的代码显示了后者:

const queryOpts = { name: 'clipboard-read', allowWithoutGesture: false };
const permissionStatus = await navigator.permissions.query(queryOpts);
// Will be 'granted', 'denied' or 'prompt':
console.log(permissionStatus.state);

// Listen for changes to the permission state
permissionStatus.onchange = () => {
  console.log(permissionStatus.state);
}; 

你还可以使用该allowWithoutGesture选项控制是否需要用户手势来调用剪切或粘贴。该值的默认值因浏览器而异,因此应始终将其包括在内。

这就是剪贴板 API 的异步特性真正派上用场的地方:尝试读取或写入剪贴板数据会自动提示用户获得许可(如果尚未授予许可)。由于 API 基于承诺,因此这是完全透明的,并且用户拒绝剪贴板权限会导致承诺被拒绝,因此页面可以适当地响应。

由于 Chrome 仅在页面为活动标签时才允许剪贴板访问,因此你会发现,如果直接粘贴到 DevTools 中,此处的某些示例将不会运行,因为 DevTools 本身就是活动标签。有一个技巧:使用延迟剪贴板访问setTimeout(),然后在调用函数之前快速在页面内部单击以将其聚焦:

setTimeout(async () => {
  const text = await navigator.clipboard.readText();
  console.log(text);
}, 2000); 

特征检测

要在支持所有浏览器的同时使用 Async Clipboard API,请测试 navigator.clipboard并退回到较早的方法。例如,这是实现粘贴以包括其他浏览器的方式。

document.addEventListener('paste', async (e) => {
  e.preventDefault();
  let text;
  if (navigator.clipboard) {
    text = await navigator.clipboard.readText();
  }
  else {
    text = e.clipboardData.getData('text/plain');
  }
  console.log('Got pasted text: ', text);
}); 

这还不是全部。在 Async Clipboard API 之前,Web 浏览器混合了多种复制和粘贴实现。在大多数浏览器中,可以使用document.execCommand('copy')和触发浏览器自身的复制和粘贴 document.execCommand('paste')。如果要复制的文本是 DOM 中不存在的字符串,则必须将其注入 DOM 中并进行选择:

button.addEventListener('click', (e) => {
  const input = document.createElement('input');
  document.body.appendChild(input);
  input.value = text;
  input.focus();
  input.select();
  const result = document.execCommand('copy');
  if (result === 'unsuccessful') {
    console.error('Failed to copy text.');
  }
}); 
使用 content-visibility:属性提高浏览器渲染性能
content-visibility属性在 Chromium 85 中得到支持,该属性可能是影响页面加载性能的最具影响力的新 CSS 属性之一。content-visibility可以使用户代理可以跳过元素的渲染工作,包括布局和绘画,直到需要它为止。

乐客互联
by 乐客互联

使用 content-visibility:属性提高浏览器渲染性能

河北乐客互联
  •  64

使用 content-visibility:属性提高浏览器渲染性能

发布时间:2020-12-15 09:40:42


content-visibility属性在 Chromium 85 中得到支持,该属性可能是影响页面加载性能的最具影响力的新 CSS 属性之一。content-visibility可以使用户代理可以跳过元素的渲染工作,包括布局和绘画,直到需要它为止。

因为跳过了渲染,所以如果大部分内容不在屏幕上,则利用该content-visibility属性可使初始用户加载更快。

它还允许与屏幕上的内容进行更快的交互。

应用于content-visibility: auto分块的内容区域可使初始负载的渲染性能提高 7 倍

浏览器支持

content-visibility: auto依赖于 CSS 包含规范中的原语,虽然content-visibility: auto目前 仅在 Chromium 85 中得到支持(并且被 Firefox 视为 “有价值的原型”),但是大多数现代浏览器都支持该属性。

CSS 属性值

该属性主要目标是通过提供 DOM 子树与页面其余部分的可预测隔离来实现 Web 内容的渲染性能改进。

基本上,开发人员可以告诉浏览器页面的哪些部分被封装为一组内容,从而使浏览器无需考虑子树之外的状态就可以对内容进行推理。知道内容(子树)的哪些位包含隔离的内容意味着浏览器可以为页面渲染做出优化决策。

CSS 包含四种属性值,每种类型都是containCSS 属性的潜在值,可以将它们组合在一起,以空格分隔的值列表:

  • size:元素上的大小限制可确保元素框的布局,而无需检查其后代。这意味着,如果我们仅需要元素的大小,就可以跳过后代的布局。
  • layout:布局限制意味着后代不会影响页面上其他框的外部布局。如果我们要做的只是布置其他方框,这使我们有可能跳过后代的布局。
  • style:样式包含可确保不仅对子元素有影响的属性不会脱离元素(例如,计数器)。如果我们想要的只是在其他元素上计算样式,这使我们有可能跳过后代的样式计算。
  • paint:绘制包含可以确保容纳盒的后代不会显示在其边界之外。没有任何内容可以使元素明显溢出,并且如果元素在屏幕外或以其他方式不可见,则其后代也将不可见。如果元素不在屏幕上,这使我们有可能跳过 paint后代。

使用content-visibility跳过渲染工作

可能很难弄清楚要使用哪个包含值,因为只有在指定了适当的设置后,浏览器优化才能开始。你可以使用这些值来查看最合适的值,或者可以使用另一个 CSS 属性content-visibility来自动应用所需的包含。content-visibility确保开发人员以最小的努力获得最大的浏览器性能提升。

content-visibility属性可以接受多个值,但是auto可以立即提高性能。具体属性值包括:自动获得布局、样式和绘制内容。如果该元素不在屏幕上(并且与用户无关,则相关元素将是在其子树中具有焦点或选择的元素),那么它也会获得size包容性。

简而言之,如果该元素不在屏幕上,则不会渲染其后代。浏览器在不考虑元素任何内容的情况下确定元素的大小,并在此处停止。跳过大多数渲染,例如元素子树的样式和布局。

当元素接近视口时,浏览器不再添加size容器,而是开始绘制和点击测试元素的内容。这使得渲染工作能够及时地被用户看到。

contain-intrinsic-size指定元素的自然大小

为了实现content-visibility的潜在好处,浏览器需要应用大小限制,以确保内容的呈现结果不会以任何方式影响元素的大小。这意味着该元素将布局为好像是空的。如果元素没有在常规块布局中指定的高度,则其高度为 0。

这可能不是理想的,因为滚动条的大小会发生变化,这取决于每个具有非零高度的故事。

值得庆幸的是,CSS 提供了另一个属性,contain-intrinsic-size该属性可以有效地指定元素的自然大小(如果该元素受大小包含影响)。在我们的示例中,我们将其设置1000px为对部分的高度和宽度的估计。

这意味着它将进行布局,就好像它有一个 “内在大小” 尺寸的子对象一样,从而确保未调整大小的 div 仍然占据空间。 contain-intrinsic-size充当占位符大小来代替呈现的内容。

content-visibility: hidden隐藏内容

如果要利用缓存的呈现状态的优点,使内容不呈现在屏幕上而又不呈现它怎么办?输入: content-visibility: hidden

content-visibility: hidden属性为你提供未渲染内容和缓存渲染状态的所有相同优点,与content-visibility: auto屏幕外一样。但是,与之不同auto,它不会自动开始在屏幕上呈现。

这给了你更多的控制权,使你可以隐藏元素的内容并稍后快速取消隐藏它们。

将其与隐藏元素内容的其他常见方式进行比较:

  • display: none:隐藏元素并破坏其呈现状态。这意味着取消隐藏元素与渲染具有相同内容的新元素一样昂贵。
  • visibility: hidden:隐藏元素并保持其呈现状态。这并不能真正从文档中删除该元素,因为它(及其子树)仍占据页面上的几何空间,并且仍然可以单击。它也可以在需要时随时更新渲染状态,即使隐藏也是如此。

content-visibility: hidden在另一方面,在保留元素的呈现状态的同时将其隐藏,因此,如果需要进行任何更改,则仅在再次显示该元素(即,content-visibility: hidden删除属性)时才会发生更改 。

了解 CommonJS 如何使捆绑包变得更大
在这篇文章中,我们将研究什么是 CommonJS,以及为什么它会使你的 JavaScript 包超出必需的范围。

乐客互联
by 乐客互联

了解 CommonJS 如何使捆绑包变得更大

河北乐客互联
  •  53

了解 CommonJS 如何使捆绑包变得更大

发布时间:2020-11-19 17:41:29


在这篇文章中,我们将研究什么是 CommonJS,以及为什么它会使你的 JavaScript 包超出必需的范围。

简介:为了确保捆绑程序能够成功优化你的应用程序,请避免依赖 CommonJS 模块,并在整个应用程序中使用 ECMAScript 模块语法。

什么是 CommonJS?

CommonJS 是 2009 年以来的一项标准,为 JavaScript 模块建立了约定。它最初打算在 Web 浏览器之外使用,主要用于服务器端应用程序。

使用 CommonJS,你可以定义模块,从中导出功能,以及将其导入其他模块中。例如,下面定义了片段其中出口 5 个功能的模块:addsubtractmultiplydivide,和max

// utils.js
const { maxBy } = require('lodash-es');
const fns = {
  add: (a, b) => a + b,
  subtract: (a, b) => a - b,
  multiply: (a, b) => a * b,
  divide: (a, b) => a / b,
  max: arr => maxBy(arr)
};

Object.keys(fns).forEach(fnName => module.exports[fnName] = fns[fnName]); 

稍后,另一个模块可以导入和使用以下部分或全部功能:

// index.jsconst { add } = require(‘./utils');console.log(add(1, 2)); 

调用index.jsnode将输出数量3在控制台中。

由于 2010 年代初期浏览器中缺乏标准化的模块系统,CommonJS 也成为 JavaScript 客户端库的流行模块格式。

CommonJS 如何影响捆绑包大小?

服务器端 JavaScript 应用程序的大小并不像浏览器中那样重要,这就是为什么 CommonJS 并非在设计时就考虑到了减小生产包的大小。同时,分析表明,JavaScript 软件包的大小仍然是使浏览器应用程序变慢的第一原因。

JavaScript 捆绑程序和压缩程序(例如webpackterser)执行不同的优化以减小应用程序的大小。他们在构建时分析你的应用程序,他们尝试从你不使用的源代码中尽可能多地删除。

例如,在上面的代码段中,你的最终捆绑包应仅包含add函数,因为这是utils.js你导入的唯一符号index.js

让我们使用以下webpack配置来构建应用程序:

const path = require('path');
module.exports = {
  entry: 'index.js',
  output: {
    filename: 'out.js',
    path: path.resolve(__dirname, 'dist'),
  },
  mode: 'production',
}; 

在这里,我们指定我们要使用生产模式优化并将其index.js用作入口点。调用后webpack,如果我们探索输出大小,我们将看到类似以下内容:

$ cd dist && ls -lah
625K Apr 13 13:04 out.js 

注意,这个包是 625KB。如果我们查看输出,会发现 utils.js 中的所有函数以及 lodash 中的许多模块。尽管我们在 index.js 中没有使用 lodash,但它是输出的一部分,这给我们的生产资产增加了很多额外的权重。

现在让我们将模块格式更改为 ECMAScript 模块,然后再试一次。这一次,utils.js 看起来是这样的:

export const add = (a, b) => a + b;
export const subtract = (a, b) => a - b;
export const multiply = (a, b) => a * b;
export const divide = (a, b) => a / b;

import { maxBy } from 'lodash-es';

export const max = arr => maxBy(arr); 

而 index.js 会使用 ECMAScript 模块语法从 utils.js 中导入:

import { add } from './utils';

console.log(add(1, 2)); 

使用相同的webpack配置,我们可以构建应用程序并打开输出文件。它现在是40个字节,输出如下:

(()=>{"use strict";console.log(1+2)})(); 

请注意,最终的包没有包含来自 util.js 中我们不使用的任何函数,并且没有来自 lodash 的跟踪!更进一步,terser (webpack 使用的 JavaScript 缩小器) 将 add 函数内联到 console.log 中。

你可能会问一个合理的问题,为什么使用 CommonJS 会导致输出包几乎增大 16000 倍?当然,这是一个玩具样例,实际上,大小的差异可能没有那么大,但是 CommonJS 很有可能为你的生产构建增加了很大的权重。

在一般情况下,CommonJS 模块更难优化,因为它们比 ES 模块更动态。为了确保你的 bundler 和 minifier 能够成功地优化你的应用程序,请避免依赖于 CommonJS 模块,并在整个应用程序中使用 ECMAScript 模块语法。

请注意,即使你在中使用 ECMAScript 模块,如果你使用 index.js 的模块是 CommonJS 模块,应用程序的分发包大小也会受到影响。

为什么 CommonJS 会让你的应用变大?

为了回答这个问题,我们将研究webpackModuleConcatenationPlugin 的行为,然后讨论静态可分析性。这个插件将你所有模块的范围连接到一个闭包中,让你的代码在浏览器中有更快的执行时间。让我们来看一个例子:

// utils.js
export const add = (a, b) => a + b;
export const subtract = (a, b) => a - b; 
// index.js
import { add } from ‘./utils';
const subtract = (a, b) => a - b;

console.log(add(1, 2)); 

上面,我们有一个 ECMAScript 模块,我们在 index.js 中导入它。我们还定义了一个减法函数。我们可以使用与上面相同的 webpack 配置来构建这个项目,但是这一次,我们将禁用最小化:

const path = require('path');

module.exports = {
  entry: 'index.js',
  output: {
    filename: 'out.js',
    path: path.resolve(__dirname, 'dist'),
  },
  optimization: {
    minimize: false
  },
  mode: 'production',
}; 

让我们看看输出结果:

/******/ (() => { // webpackBootstrap
/******/ 	"use strict";

// CONCATENATED MODULE: ./utils.js**
const add = (a, b) => a + b;
const subtract = (a, b) => a - b;

// CONCATENATED MODULE: ./index.js**
const index_subtract = (a, b) => a - b;**
console.log(add(1, 2));**

/******/ })(); 

在上面的输出中,所有函数都在同一个名称空间中。为了防止冲突,webpackindex.js 中的减法函数重命名 为 index_subtract

如果使用压缩程序处理上面的源代码,它会:

  • 删除未使用的函数 subtractindex_subtract
  • 删除所有注释和多余的空格
  • console.log 调用中内联 add 函数的主体

通常,开发人员将这种未使用导入的移除称为“摇树”。是因为 webpack 能够静态地(在构建时)理解我们从 util .js 导入哪些符号,导出哪些符号。

CommonJS 相比,ES模块在默认情况下启用了这种行为,因为它们更容易静态分析。

让我们看看完全相同的例子,但这次改变 util .js 使用 CommonJS 而不是ES模块:

// utils.js
const { maxBy } = require('lodash-es');

const fns = {
  add: (a, b) => a + b,
  subtract: (a, b) => a - b,
  multiply: (a, b) => a * b,
  divide: (a, b) => a / b,
  max: arr => maxBy(arr)
};

Object.keys(fns).forEach(fnName => module.exports[fnName] = fns[fnName]); 

这个小更新将显著改变输出。由于它太长,嵌入这个页面,我只分享了它的一小部分:

...
(() => {

"use strict";
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(288);
const subtract = (a, b) => a - b;
console.log((0,_utils__WEBPACK_IMPORTED_MODULE_0__/* .add */ .IH)(1, 2));

})(); 

注意,最终的包包含一些 webpack “运行时”注入的代码,负责从绑定模块导入/导出功能。这一次,我怕,我们没有把所有的符号从utils.jsindex.js 放在同一个命名空间下,我们需要动态地在运行时,该add功能使用__webpack_require__

这是必要的,因为使用 CommonJS,我们可以从任意表达式中获得导出名称。例如,下面的代码是一个绝对有效的构造:

module.exports[localStorage.getItem(Math.random())] = () => { … }; 

在构建时,绑定者无法知道导出符号的名称,因为只有在运行时才能在用户浏览器上下文中使用的信息。

这样,minifier 无法从依赖关系中理解 index.js 到底使用了什么,所以它无法将其树式删除。我们还将观察到第三方模块的完全相同的行为。如果我们从 node_modules 导入一个 CommonJS 模块,则你的构建工具链将不能正确地优化它。

CommonJS 中的 Tree-shaking

由于 CommonJS 模块是动态定义的,因此要分析它们要困难得多。例如,与作为表达式的 CommonJS 相比,ES 模块中的导入位置始终是字符串文字。

在某些情况下,如果你使用的库遵循了使用 CommonJS 的特定约定,那么可以使用第三方 webpack 插件在构建时删除未使用的导出。尽管这个插件增加了对树晃动的支持,但它并没有涵盖你的依赖项使用 CommonJS 的所有不同方式。这意味着你不会获得与 ES 模块相同的保证。此外,它还增加了构建过程中在默认 webpack 行为之上的额外成本。

结论

为确保捆绑程序可以成功优化应用程序,请避免依赖 CommonJS 模块,并在整个应用程序中使用 ECMAScript 模块语法。

以下是一些可行的技巧,可用来验证你是否处于最佳状态:

  • 使用 Rollup.js 的 node-resolve 插件并设置modulesOnly标志以指定你仅希望依赖 ECMAScript 模块。
  • 使用该软件包 is-esm 来验证 npm 软件包是否使用 ECMAScript 模块。
  • 如果你使用的是 Angular,则默认情况下,如果你依赖不可摇树的模块,则会收到警告。
Nginx如何设置负载均衡
负载平衡是一种非常有用的技术,可以在多个服务器之间分配传入的网络流量。使用此技术,您可以减少资源使用量,缩短响应时间并避免服务器过载。在本教程中,我们将指导您完成在Linux VPS上配置Nginx负载平衡的步骤。Nginx负载平衡是实现完全应用程序冗余的最有效的选项之一,并且相对容易且快速设置。我们将使用循环机制配置Nginx负载平衡。这样,它将所有请求转发到Nginx配置中包括的相应服务器。

乐客互联
by 乐客互联

Nginx如何设置负载均衡

河北乐客互联
  •  134

Nginx如何设置负载均衡

发布时间:2019-10-25 16:07:14


负载平衡是一种非常有用的技术,可以在多个服务器之间分配传入的网络流量。使用此技术,您可以减少资源使用量,缩短响应时间并避免服务器过载。在本教程中,我们将指导您完成在Linux VPS上配置Nginx负载平衡的步骤。Nginx负载平衡是实现完全应用程序冗余的最有效的选项之一,并且相对容易且快速设置。我们将使用循环机制配置Nginx负载平衡。这样,它将所有请求转发到Nginx配置中包括的相应服务器。

目录

  1. 登录SSH
  2. 更新所有软件
  3. 安装Nginx Web 服务器
  4. 添加负载均衡
  5. 在Nginx中添加上游模块
  6. 重新启动Nginx
  7. 设置权重平衡
  8. 设置最大失败次数
  9. 设置IP哈希平衡

以root用户身份登录到服务器

ssh root@IP_Address

更新所有软件

apt-get update && apt-get upgrade

安装Nginx Web服务器

apt-get install nginx

安装完成后,检查Web服务器是否正在运行。

	service nginx status
nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running)  

添加负载均衡

使用文本编辑器打开网站的Nginx配置文件。

vim /etc/nginx/sites-available/yourdomain.com.conf

并将负载平衡配置附加到文件顶部。

	upstream loadbalancer {
server vps1.yourdomain.com;
server vps2.yourdomain.com;
server vps3.yourdomain.com;
} 

在Nginx中添加上游模块

在相同的配置文件yourdomain.com.conf中,我们需要在virtualhost配置中添加上游模块。

server {
location / {
proxy_pass http://loadbalancer;
}
}

重新启动Nginx服务器

保存所有文件只有重启Nginx服务器。

service nginx restart

此配置将在三台服务器(vps1.yourdomain.com,vps2.yourdomain.com,vps3.yourdomain.com)之间平均分配所有传入流量。Nginx也可以配置为更有效地分配流量。它带有平衡选项,例如权重平衡,最大失败数和IP哈希平衡。

权重平衡

我们可以使用此选项来指定分配给上游列出的每个服务器的流量的比例。

upstream loadbalancer {
server vps1.yourdomain.com weight=1;
server vps2.yourdomain.com weight=2;
server vps3.yourdomain.com weight=5;
}

此示例中,vps2.yourdomain.com的流量是vps2.yourdomain.com的两倍,vps3.yourdomain.com的流量是vps1.yourdomain.com的五倍。

最大失败次数

如果使用默认的Nginx设置,即使服务器关闭,它也会将数据发送到服务器。我们可以使用“最大失败次数”选项来防止这种情况。

upstream loadbalancer {
server vps1.yourdomain.com max_fails=4  fail_timeout=20s;
server vps2.yourdomain.com weight=2;
server vps3.yourdomain.com weight=4;
}

在上面的示例中,Nginx将尝试连接到vps1.yourdomain.com,如果响应时间超过20秒,它将进行另一次尝试。经过四次尝试,vps1.yourdomain.com将被视为关闭。

设置IP哈希平衡

使用此方法,访问者将始终被发送到同一服务器。因此,如果访问者收到vps1.yourdomain.com的内容,则除非服务器停机或无法访问,否则它将始终传输到该服务器。

upstream loadbalancer {
ip_hash;
server vps1.yourdomain.com;
server vps2.yourdomain.com;
server vps3.yourdomain.com down;
}
IIS如何开启HSTS(HTTPS严格传输)
HTTP Strict Transport Security(通常简称为HSTS)是一个安全功能,它告诉浏览器只能通过HTTPS访问当前资源,而不是HTTP。启用 HSTS 不仅仅可以有效防范中间人攻击,同时也为浏览器节省来一次 302/301 的跳转请求,如果配置了HSTS,网站则通过HTTP Strict Transport Security通知浏览器,这个网站禁止使用HTTP方式加载,浏览器应该自动把所有尝试使用HTTP的请求自动替换为HTTPS请求。

乐客互联
by 乐客互联

IIS如何开启HSTS(HTTPS严格传输)

河北乐客互联
  •  344

IIS如何开启HSTS(HTTPS严格传输)

发布时间:2019-08-29 18:17:00


HTTP Strict Transport Security(通常简称为HSTS)是一个安全功能,它告诉浏览器只能通过HTTPS访问当前资源,而不是HTTP。启用 HSTS 不仅仅可以有效防范中间人攻击,同时也为浏览器节省来一次 302/301 的跳转请求,如果配置了HSTS,网站则通过HTTP Strict Transport Security通知浏览器,这个网站禁止使用HTTP方式加载,浏览器应该自动把所有尝试使用HTTP的请求自动替换为HTTPS请求。

HTTP严格传输安全(英语:HTTP Strict Transport Security,缩写:HSTS)是一套由互联网工程任务组发布的互联网安全策略机制。网站可以选择使用HSTS策略,来让浏览器强制使用HTTPS与网站进行通信,以减少会话劫持风险。

作用

HSTS的作用是强制客户端(如浏览器)使用HTTPS与服务器建立连接。服务器开启HSTS的方法是,当客户端通过HTTPS发出请求时,在服务器返回的超文本传输协议(HTTP)响应头中包含Strict-Transport-Security字段。非加密传输时设置的HSTS字段无效。

比如,https://example.com/ 的响应头含有Strict-Transport-Security: max-age=31536000; includeSubDomains。这意味着两点:

  1. 在接下来的31536000秒(即一年)中,浏览器向example.com或其子 域名发送HTTP请求时,必须采用HTTPS来发起连接。比如,用户点击 超链接或在地址栏输入 http://www.example.com/ ,浏览器应当自动将 http 转写成 https,然后直接向 https://www.example.com/ 发送请求。
  2. 在接下来的一年中,如果 example.com 服务器发送的TLS 证书无效,用户不能忽略浏览器警告继续访问网站。

HSTS可以用来抵御SSL剥离攻击。SSL剥离攻击是中间人攻击的一种,由Moxie Marlinspike于2009年发明。他在当年的黑帽大会上发表的题为“New Tricks For Defeating SSL In Practice”的演讲中将这种攻击方式公开。SSL剥离的实施方法是阻止浏览器与服务器建立HTTPS连接。它的前提是用户很少直接在地址栏输入https://,用户总是通过点击链接或3xx重定向,从HTTP页面进入HTTPS页面。所以攻击者可以在用户访问HTTP页面时替换所有https://开头的链接为http://,达到阻止HTTPS的目的。

HSTS可以很大程度上解决SSL剥离攻击,因为只要浏览器曾经与服务器建立过一次安全连接,之后浏览器会强制使用HTTPS,即使链接被换成了HTTP

IIS开启HSTS

此方法未在IIS7/8.5版本测试,如果设置后网站出现500状态码则撤销更改;在配置HSTS前需要将http请求重定向到https请求上。

方法一:添加自定义HTTP响应头

在网站根目录下的web.config文件里添加以下代码:

	 <configuration>
    <system.webServer>
        <httpProtocol>
            <customHeaders>
                <add name=&quot;Strict-Transport-Security&quot; value=&quot;max-age=31536000&quot; />
            </customHeaders>
        </httpProtocol>
    </system.webServer>
</configuration> 

方法二:利用URL重写工具

安装URL重写模块,并为具有HTTP和HTTPS绑定的单个网站配置重写规则。HTTP到HTTPS重定向可以由入站规则指定,而将STS标头添加到HTTPS回复可以通过出站规则来实现。

	<?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name=&quot;Redirect HTTP to HTTPS&quot; stopProcessing=&quot;true&quot;>
                    <match url=&quot;(.*)&quot; />
                    <conditions>
                        <add input=&quot;{HTTPS}&quot; pattern=&quot;off&quot; />
                    </conditions>
                    <action type=&quot;Redirect&quot; url=&quot;https://{HTTP_HOST}/{R:1}&quot; redirectType=&quot;Permanent&quot; />
                </rule>
            </rules>
            <outboundRules>
                <rule name=&quot;Add the STS header in HTTPS responses&quot;>
                    <match serverVariable=&quot;RESPONSE_Strict_Transport_Security&quot; pattern=&quot;.*&quot; />
                    <conditions>
                        <add input=&quot;{HTTPS}&quot; pattern=&quot;on&quot; />
                    </conditions>
                    <action type=&quot;Rewrite&quot; value=&quot;max-age=31536000&quot; />
                </rule>
            </outboundRules>
        </rewrite>
    </system.webServer>
</configuration>

如果配置以上代码后网站未出现500等错误,既可以打开浏览器测试HSTS是否配置成功。

测试HSTS是否成功

使用Google Chrome 浏览器打开站点,按下F12打开控制台,转到Network,点击列表中的页面,查看Response Headers中的消息头列表:

查看IIS是否配置了HSTS

如果有类似Strict-Transport-Security: max-age=31536000; includeSubDomains; preload的代码,则证明HSTS配置成功。

如何下载并分析网站的日志文件
网站日志是记录web服务器接收处理请求以及运行时错误等各种原始信息的以.log结尾的文件,确切的讲,应该是服务器日志。网站日志最大的意义是记录网站运营中比如空间的运营情况,被访问请求的记录。通过网站日志可以清楚的得知用户在什么IP、什么时间、用什么操作系统、什么浏览器、什么情况下访问了你网站的哪个页面,是否访问成功等等。

乐客互联
by 乐客互联

如何下载并分析网站的日志文件

河北乐客互联
  •  195

如何下载并分析网站的日志文件

发布时间:2019-08-20 09:39:29


网站日志是记录web服务器接收处理请求以及运行时错误等各种原始信息的以.log结尾的文件,确切的讲,应该是服务器日志。网站日志最大的意义是记录网站运营中比如空间的运营情况,被访问请求的记录。通过网站日志可以清楚的得知用户在什么IP、什么时间、用什么操作系统、什么浏览器、什么情况下访问了你网站的哪个页面,是否访问成功等等。

网站日志存放在哪里?

大部分主机包括虚拟主机都会提供一个网站日志功能。网站日志不同于流量统计,流量统计只是统计网站的IP、PV、UV等信息,而网站日志则是整个网站的运行情况,包括用户的IP,访问详情,页面来源,还有用户的UA等等。站长们可以根据用户UA来判断是否有假的蜘蛛来采集网站内容。

虚拟主机日志存放路径:

  1. 阿里云虚拟主机:需要登陆虚拟主机"控制台"=>"文件管理"=>"网站日志下载",选择某一天的日志点击下载,之后会在网站里创建一个文件夹名为wwwlogs的文件夹,从FTP里下载即可。
  2. 西部数据虚拟主机:需要登录虚拟主机管理页面,找到"网站情报系统"下的"WWW日志",点击下载WebLog日志,之后会在网站里创建一个名为logfiles的文件夹,同样从FTP里下载即可。(西部数据的日志有日期限制,只能下载近几天的日志。)
  3. 百度云虚拟主机:需要登录虚拟主机管理页面,点击"日志管理"=>"主机日志",开启FTP日志,保存目录为根目录/ftplogs
  4. 其他虚拟主机请咨询客服。

下载到网站目录里的网站日志文件

云服务器的日志存放路径

  1. Windows Server系列操作系统:一般情况下在C盘下的intepub/logs/LogFiles文件夹下,比如W3SVC6000,其中"6000"为站点的ID。
  2. Linux系列系统因使用的管理软件不同其日志文件存放路径也不同,以宝塔面板为例,登录宝塔管理面板,找到左侧的"文件",打开路径"根目录=>www=>wwwlogs"文件夹,使用宝塔面板创建的网站日志文件通常会在一个文件里保存,网站日志文件名通常以创建网站时的名称+"access_log"命名,错误信息通常以网站名称+"error_log"结尾。

如何查看IIS站点的ID:

打开IIS,找到要查看ID的站点,在右侧点击高级设置,在常规栏目下找到ID即可。

在IIS中查看网站的ID

分析日志文件

从服务器上下载日志文件后,可以利用第三方日志分析网站来分析日志详情,也可以使用Excel等工具分析网站日志。

利用第三方日志分析网站分析

将网站日志上传到第三方日志分析网站上,比如 LogHao日志分析工具,上传之后输入网站URL,点击分析即可在右侧看到日志分析详情。

在线网站日志分析工具

利用Excel工具查看

在导入到Excel之前,需要打开日志文件把列表头的一些无用字段删除掉,比如"#Software: Microsoft Internet Information Services 10.0"、"#Version: 1.0"等等字段。打开Excel,在菜单里找到"数据=>获取外部数据=>自文本",打开导入文件对话框,将右下角的文件类型选择"所有文件(*.*)",选中日志文件。

接着会出现文本导入向导对话框,在原始数据类型中选择"分隔符号",点击"下一步","分割符号"选择"空格",点击下一步、完成,将数据放置到=$A$1位置下即可。

导入成功后会在表格中显示整个日志信息,其中一些列表头的意义为:

date time s-ip cs-method cs-uri-stem cs-uri-query s-port
日期 时间 服务器内网IP 方法 URL地址 URL参数(?后面的字符) 服务器端口

c-ip cs(User-Agent) cs(Referer) sc-status sc-win32-status time-taken
用户(访问者)IP 浏览器UA(用户标识) 链接来源(从哪个页面点击进来,通过该信息可以找到盗取资源的家伙) 服务端状态码 是否64为操作系统("0"为32位,"64"为64为) 访问延迟(单位:毫秒ms)

站长们需要重点关注的几点是:访问的URL地址、浏览器UA(非常重要,此字段可以分辨真假蜘蛛)、服务器状态码(重要,如果有404或非200等正常状态码就需要检查网站链接)、访问延迟(最好关注下,如果延迟很高说明服务器带宽低或者有人在盗取你网站上的资源)。

重要关注点说明

访问的URL地址(cs-uri-stem)

cs-uri-stem为用户访问、搜索引擎抓取的地址,如果搜索引擎抓取了不是自己网站上的链接,请及时向站站长平台反馈信息;如果出现经常有用户访问css、img和js等文件,却没有访问网页的情况时,需要站长们注意自己网站的资源是否已经被别人盗用,被别人盗用会增加自己网站的请求量,增加用户打开网站加载时间,甚至还会增加你的流量费用(有流量限制的虚拟主机)。如果被盗用资源可以联系主机服务商是否可以开启防盗链功能。

用户UAcs(User-Agent)

用户UA代表用户是以哪种浏览器访问,或搜索引擎的标识,比如"Sogou+web+spider"、"compatible;+Baiduspider/2.0"等等,如果你没有提交站点给某一个搜索引擎,用户UA却出现了这个搜素引擎的标识,比如国外的“MJ12bot”等等(需要注意的是,搜索引擎抓取频率过多也会导致网站服务器压力过大),请及时将其他没有提交的搜索引擎标识写进robots.txt文件里并设置禁止抓取(Disallow: /);如果发现有其他网站采集本站的数据,需要站长们做好防采集功能。

常见的搜索引擎UA有:

搜索引擎名称 搜索引擎标识
百度蜘蛛 compatible;+Baiduspider
Google蜘蛛 compatible; Googlebot/2.1
Google图片蜘蛛 Googlebot-Image/1.0
必应蜘蛛 msnbot/2.0b
搜狗蜘蛛 Sogou+web+spider

请求状态码(sc-status)

请求状态码反映了网站的链接或者资源是否可以打开,常见的状态码有:200(ok)表示访问正常;301(永久重定向);302(暂时重定向);403(禁止访问);404(页面或资源不存在);500系列(通常为网站内部错误,比如代码语法错误等原因导致页面无法呈现)。

如果网站上出现了大量的400、500等状态码,需要站长们重点注意:网站是否有死链;是否有拼写错误的链接;网站的环境配置是否正确,比如php.Net环境等,以及php代码或asp(x)代码是否书写正确。

访问延迟(time-taken)

访问延迟(或者说响应时间)一般在30~200毫秒之间为最佳,超过了1000毫秒则说明网站配置较低或带宽低,客户访问的地理位置和服务器的地理位置比较远,也不排除有其他网站盗用资源或者采集数据。建议选购主机时选择离客户地理位置近的区域或是升级服务器配置、增加网站带宽。

参考链接:
简书:如何分析网站日志文件
政治投票网站前端设计

乐客互联
by 乐客互联

政治投票网站前端设计

河北乐客互联
  •  222

政治投票网站前端设计

发布时间:2019-09-06 15:52:25


最后更新
创建
古腾堡优化 没有
高分辨率
小工具准备好了
兼容的浏览器 IE11FirefoxSafariOperaChromeEdge
兼容 Bootstrap 4.x
骨架 Unyson
软件版本 WordPress 5.2.x
包含ThemeForest文件 PHP文件CSS文件JS文件
4+
文档 记录良好
布局 响应
标签 竞选候选人慈善机构众筹捐赠选举事件非营利组织非营利组织政治政治领袖政党政治wordpress主题政治家政治

多概念企业业务网站前端页面设计

乐客互联
by 乐客互联

多概念企业业务网站前端页面设计

河北乐客互联
  •  200

多概念企业业务网站前端页面设计

发布时间:2019-09-06 15:30:12


最后更新
创建 8月8日19日
古腾堡优化
高分辨率
小工具准备好了
兼容的浏览器 IE11FirefoxSafariOperaChromeEdge
兼容 ElementorBootstrap 4.x
骨架 Unyson
软件版本 WordPress 5.2.xWordPress 5.1.xWordPress 5.0.xWordPress 4.9.xWordPress 4.8.x
包含ThemeForest文件 PHP文件CSS文件JS文件
4+
文档 记录良好
布局 响应
标签 机构应用程序登陆比特币业务企业创意现代多用途投资组合响应saas软件启动技术Web应用程序





教育网站前端设计

乐客互联
by 乐客互联

教育网站前端设计

河北乐客互联
  •  157

教育网站前端设计

发布时间:2019-09-06 15:13:08


最后更新
创建
古腾堡优化
高分辨率
小工具准备好了
兼容的浏览器 IE10IE11FirefoxSafariOperaChromeEdge
兼容 bbPress 2.5.xBuddyPress 4.1.xBuddyPress 3.0.xBuddyPress 2.5.xElementorVisual Composer 5.1.xVisual Composer 4.12.xVisual Composer 4.11.xVisual Composer 4.11.2.1WooCommerce 3.5.xWooCommerce 3.4.xWooCommerce 3.3.xWooCommerce 3.2.xWooCommerce 3.1.xWooCommerce 3.0.xWPBakery Page Builder 5.5.xWPBakery Page Builder 5.4.xWPBakery Page Builder 5.3WPBakery Page Builder 5.2.xWPMLBootstrap 3.x
软件版本 WordPress 5.2.xWordPress 5.1.xWordPress 5.0.xWordPress 4.9.xWordPress 4.8.xWordPress 4.7.xWordPress 4.6.1WordPress 4.6WordPress 4.5.xWordPress 4.5.2WordPress 4.5 .1WordPress 4.5
包含ThemeForest文件 PHP文件CSS文件JS文件
4+
文档 记录良好
布局 响应
标签 学院coursera教育教育wordpress主题电子学习学习学习管理系统lms教学培训培训中心udemy大学wordpress教育主题wp lms





响应正常运行时间的商务WordPress主题前端设计

乐客互联
by 乐客互联

响应正常运行时间的商务WordPress主题前端设计

河北乐客互联
  •  94

响应正常运行时间的商务WordPress主题前端设计

发布时间:2019-08-27 18:13:10


Last Update
Created 7 August 19
Gutenberg Optimized Yes
High Resolution Yes
Widget Ready Yes
Compatible Browsers IE11, Firefox, Safari, Opera, Chrome, Edge
Compatible With Elementor
Software Version WordPress 5.2.x, WordPress 5.1.x, WordPress 5.0.x, WordPress 4.9.x, WordPress 4.8.x
ThemeForest Files Included PHP Files, CSS Files, JS Files
Columns 4+
Documentation Well Documented
Layout Responsive
Tags app, bootstrap, business, corporate, education, event, landing, magazine, marketing, multipurpose, parallax, portfolio, shop, startup

点燃前端页面设计
要像专业人士一样在网上启动您的项目,Ignite是要考虑的免费托管网站模板。任何网络托管和域名注册商公司都可以将Ignite充分利用并在线发挥作用。您现在可以从Ignite及其附带的所有特权中受益,而不是从头开始进行网页设计。该工具的布局灵敏,灵活,遵循所有最新的网络实践,非常吸引眼球。

乐客互联
by 乐客互联

点燃前端页面设计

河北乐客互联
  •  95

点燃前端页面设计

发布时间:2019-08-27 16:49:10


要像专业人士一样在网上启动您的项目,Ignite是要考虑的免费托管网站模板。任何网络托管和域名注册商公司都可以将Ignite充分利用并在线发挥作用。您现在可以从Ignite及其附带的所有特权中受益,而不是从头开始进行网页设计。该工具的布局灵敏,灵活,遵循所有最新的网络实践,非常吸引眼球。

Ignite的其他特色是粘性导航,动画统计,号召性用语按钮,滚动内容加载和定价计划。您还可以通过集成的推荐建立客户信任,并通过创建有关托管和域名的博客回馈社区。添加联系页面还为您提供了工作表单和Google地图。通过使用免费托管网站模板Ignite,从一开始就像一个冠军一样在网上开始。


Trans Free Ultramodern单页网站模板

乐客互联
by 乐客互联

Trans Free Ultramodern单页网站模板

河北乐客互联
  •  135

Trans Free Ultramodern单页网站模板

发布时间:2019-08-16 18:26:39


这个Trans Free Ultramodern PSD单页网站模板是一个时尚的黑暗网站PSD模板,它使用独特的网站布局,有吸引力的图像和时尚的平面网格设计。选择的颜色的基调是一个强烈的声明,将让用户满意。在源头检查模板设计并继续欢乐。

BlazRobar.com是作者回馈这个社区的一种方式,通过分享他在7年的平面设计师中学到的设计技巧和窍门。本网站的重点是赠送免费PSD,免费PSD模板,网站模板和Photoshop文件,供设计师和开发人员欣赏和使用。

本网站上的所有文件都是免费的,无论如何您都可以使用。非常放松,你如何使用甚至Creative Commons太严格的文件!不需要归属,您甚至可以在商业上使用它。