logo DeskConnection Lab
  • Home
  • Monitor Connections
  • Docking Stations
  • USB & Cables
  • Keyboard & Mouse
  • Audio & Webcam
  • Home
  • Monitor Connections
  • Docking Stations
  • USB & Cables
  • Keyboard & Mouse
  • Audio & Webcam
  1. Home
  2. /
  3. Pair Surface Keyboard with its displayed PIN
Keyboard & Mouse

Pair Surface Keyboard with its displayed PIN

    DeskConnection Lab Editorial Team

Follow the edition-specific instructions

Microsoft's Surface Keyboard guide describes the second-edition model with Bluetooth 4.0 or later and Windows 11. Removing the battery tab powers the keyboard initially. Hold the side pairing button until the indicator above the Up arrow flashes, then choose the keyboard from the Windows notification or Bluetooth device list.

Finish the security prompt

When Windows displays a PIN, type that code on the keyboard and press Enter to complete setup. The light stops flashing after successful pairing. The Surface app provides supported keyboard customization, while Time and language, Typing holds Windows typing preferences. Check the model before applying these steps to another Surface keyboard edition, because buttons and supported features can differ.

Complete Surface Keyboard second-edition pairing
Original editorial diagram: Complete Surface Keyboard second-edition pairing.

Identify the second edition before expecting dedicated features

The source explicitly associates the Copilot key with Surface Keyboard 2nd Edition and lists Windows 11 with Bluetooth 4.0 or later as the setup requirement. It also describes a built-in number pad and dedicated shortcuts, including expressive input and call mute. Those features should be evaluated for the documented model rather than inferred from the Surface name alone. The pairing control is on the side, with the status light above the Up arrow; that location differs from keyboards whose pairing control is underneath or assigned to a numbered device slot.

Check battery level through Windows or the Surface app

Microsoft says the keyboard uses two AAA batteries and automatically enters a low-power mode while unused. To replace the batteries, turn the keyboard over, open the compartment, insert two new cells and replace the cover. Battery level can be checked in Bluetooth and devices or in the Surface app. The app also provides keyboard customization after the keyboard is selected at the bottom of its window. Keep that customization route separate from the PIN entered during pairing: a successful security prompt establishes the connection, while later app choices adjust supported keyboard behavior.

Confirm the edition before interpreting the dedicated keys

The support page identifies the Copilot key with Surface Keyboard 2nd Edition and describes Windows 11 requirements. That qualification matters because the Surface Keyboard name can appear alongside different generations of accessories. Check the exact edition before expecting a particular dedicated key or following an app customization route. The built-in number pad, expressive input access, and other shortcuts describe the physical and functional layout, but they do not replace the initial Bluetooth requirement. A useful setup begins by matching the keyboard edition, computer operating system, and Bluetooth support, then proceeds to pairing. This makes later questions about a shortcut easier to separate from basic connection issues.

Surface Keyboard checks belong to different settings
Original editorial diagram: Surface Keyboard checks belong to different settings.

Complete the on-screen PIN step when prompted

The keyboard enters discoverable mode after its side pairing control is held until the light above the Up arrow flashes. Microsoft's procedure then asks for the PIN displayed by Windows, followed by Enter. That on-screen number is part of the current pairing exchange, so use the number shown rather than searching for a permanent code printed on the keyboard. If the automatic notification does not appear, the manual Bluetooth Add device route is available. The light stopping its flash is the page's completion cue. Allow setup to finish before moving into customization, and check ordinary text entry first so the initial connection has a clear, observable result.

Use the two settings routes for their intended jobs

The Surface app provides keyboard-specific customization, while Windows Time and language settings contain the general Typing preferences. Those routes may both affect the experience, but they are not interchangeable with the Bluetooth pairing screen. The same separation helps with battery maintenance. Microsoft describes two AAA batteries, battery-level checks through Windows or the Surface app, and automatic low-power behavior during inactivity. A battery-life claim of up to twelve months is not a schedule that fits every user equally, so check the displayed level when investigating power concerns. Confirm the connection, battery state, and selected customization independently, using the current guidance for the exact keyboard edition rather than treating every symptom as a reason to pair it again.

References

  1. Use Surface Keyboard. support.microsoft.com.

Microsoft's Surface Keyboard guide describes the second-edition model with Bluetooth 4.0 or later and Windows 11. Removing the battery tab powers the keyboard initially. Hold the side pairing button until the indicator above the Up arrow flashes, then choose the keyboard from the Windows notification or Bluetooth device list.


  • Share This Post:

Leave a Comment

Post Comment
Please log in to leave a comment.

Comments (0)

Load More Comments

Follow Us

  • Facebook
  • Twitter
  • Youtube
  • Instagram

Recommended

  • Select a POP Mouse Channel Before Bluetooth Discovery

    Select a POP Mouse Channel Before Bluetooth Discovery

  • Add or Remove a Bolt Mouse Through Logi Options+

    Add or Remove a Bolt Mouse Through Logi Options+

  • Evaluate the Superlight 2 Dex beyond its 8K rate

    Evaluate the Superlight 2 Dex beyond its 8K rate

  • Test whether 8K polling improves the games you play

    Test whether 8K polling improves the games you play

  • Put mouse polling intervals in context

    Put mouse polling intervals in context

  • Use the M3 Mini V2 8K as a connection example

    Use the M3 Mini V2 8K as a connection example

  • Choose between the G309's two wireless modes

    Choose between the G309's two wireless modes

  • Check the exact Ugreen M571 wireless version

    Check the exact Ugreen M571 wireless version

  • Switch supported ergonomic mice between PCs

    Switch supported ergonomic mice between PCs

  • Set up a mouse without a dedicated receiver

    Set up a mouse without a dedicated receiver

  • Install Craft Application Profiles After Connecting the Keyboard

    Install Craft Application Profiles After Connecting the Keyboard

  • Zone Wireless Plus Can Also Pair Unifying Input Devices

    Zone Wireless Plus Can Also Pair Unifying Input Devices

  • Enter a Universal Folio Pairing PIN on the Keyboard

    Enter a Universal Folio Pairing PIN on the Keyboard

  • Share a keyboard through software across PCs

    Share a keyboard through software across PCs

  • Verify a Bolt Keyboard When Pairing It in Options+

    Verify a Bolt Keyboard When Pairing It in Options+

  • Use the On-Screen Keyboard to inspect input

    Use the On-Screen Keyboard to inspect input

  • Use Windows shortcuts when changing input layouts

    Use Windows shortcuts when changing input layouts

  • Switch active layouts with the language controls

    Switch active layouts with the language controls

  • Review the default input language used by Office

    Review the default input language used by Office

  • Keep keyboard layout and display language separate

    Keep keyboard layout and display language separate

DeskConnection Lab

Your daily source for the latest in venture, startups, AI, security and tech — curated news, deep dives and analysis.

Explore

  • Home
  • Monitor Connections
  • Docking Stations
  • USB & Cables
  • Keyboard & Mouse
  • Audio & Webcam

Legal

  • Privacy Policy
  • Contact Us
  • About Us
  • Disclaimer
  • Terms of Service

© 2026 DeskConnection Lab. All rights reserved.

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-10-28 10:46:10 HTTP/1.1 GET : https://deskconnectionlab.com/news/55632/pair-surface-keyboard-with-its-displayed-pin
  2. 运行时间 : 0.062324s [ 吞吐率:16.05req/s ] 内存消耗:7,394.84kb 文件加载:178
  3. 缓存信息 : 0 reads,0 writes
  1. /www/wwwroot/zmCms/my-cms/public/index.php ( 3.09 KB )
  2. /www/wwwroot/zmCms/my-cms/vendor/autoload.php ( 0.73 KB )
  3. /www/wwwroot/zmCms/my-cms/vendor/composer/autoload_real.php ( 1.63 KB )
  4. /www/wwwroot/zmCms/my-cms/vendor/composer/platform_check.php ( 0.90 KB )
  5. /www/wwwroot/zmCms/my-cms/vendor/composer/ClassLoader.php ( 15.99 KB )
  6. /www/wwwroot/zmCms/my-cms/vendor/composer/autoload_static.php ( 5.01 KB )
  7. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /www/wwwroot/zmCms/my-cms/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  14. /www/wwwroot/zmCms/my-cms/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  15. /www/wwwroot/zmCms/my-cms/vendor/symfony/var-dumper/Resources/functions/dump.php ( 0.99 KB )
  16. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  17. /www/wwwroot/zmCms/my-cms/vendor/symfony/var-dumper/VarDumper.php ( 3.73 KB )
  18. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  19. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  20. /www/wwwroot/zmCms/my-cms/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  21. /www/wwwroot/zmCms/my-cms/app/provider.php ( 0.19 KB )
  22. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Http.php ( 6.22 KB )
  23. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  24. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  25. /www/wwwroot/zmCms/my-cms/app/common.php ( 0.22 KB )
  26. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/helper.php ( 18.77 KB )
  27. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Config.php ( 5.93 KB )
  28. /www/wwwroot/zmCms/my-cms/config/app.php ( 1.11 KB )
  29. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  30. /www/wwwroot/zmCms/my-cms/config/cache.php ( 1.95 KB )
  31. /www/wwwroot/zmCms/my-cms/config/console.php ( 0.47 KB )
  32. /www/wwwroot/zmCms/my-cms/config/cookie.php ( 0.56 KB )
  33. /www/wwwroot/zmCms/my-cms/config/database.php ( 2.13 KB )
  34. /www/wwwroot/zmCms/my-cms/config/filesystem.php ( 0.61 KB )
  35. /www/wwwroot/zmCms/my-cms/config/lang.php ( 0.91 KB )
  36. /www/wwwroot/zmCms/my-cms/config/log.php ( 2.18 KB )
  37. /www/wwwroot/zmCms/my-cms/config/mail.php ( 1.23 KB )
  38. /www/wwwroot/zmCms/my-cms/config/middleware.php ( 0.26 KB )
  39. /www/wwwroot/zmCms/my-cms/config/route.php ( 1.89 KB )
  40. /www/wwwroot/zmCms/my-cms/config/session.php ( 0.59 KB )
  41. /www/wwwroot/zmCms/my-cms/config/trace.php ( 0.34 KB )
  42. /www/wwwroot/zmCms/my-cms/config/view.php ( 2.08 KB )
  43. /www/wwwroot/zmCms/my-cms/app/event.php ( 0.25 KB )
  44. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Event.php ( 7.77 KB )
  45. /www/wwwroot/zmCms/my-cms/app/service.php ( 0.13 KB )
  46. /www/wwwroot/zmCms/my-cms/app/AppService.php ( 0.86 KB )
  47. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /www/wwwroot/zmCms/my-cms/vendor/services.php ( 0.15 KB )
  53. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.20 KB )
  64. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.75 KB )
  65. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.30 KB )
  68. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /www/wwwroot/zmCms/my-cms/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /www/wwwroot/zmCms/my-cms/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /www/wwwroot/zmCms/my-cms/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-helper/src/helper/Arr.php ( 17.45 KB )
  80. /www/wwwroot/zmCms/my-cms/app/common/cache/DomainCache.php ( 5.40 KB )
  81. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  82. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/cache/Driver.php ( 9.02 KB )
  83. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  84. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/facade/Request.php ( 9.20 KB )
  85. /www/wwwroot/zmCms/my-cms/app/Request.php ( 0.09 KB )
  86. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Request.php ( 54.64 KB )
  87. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/traits/UrlHandler.php ( 6.05 KB )
  88. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/traits/DomainHandler.php ( 5.49 KB )
  89. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/traits/HttpMethodHandler.php ( 4.74 KB )
  90. /www/wwwroot/zmCms/my-cms/app/middleware.php ( 0.34 KB )
  91. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  92. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  93. /www/wwwroot/zmCms/my-cms/app/middleware/LangMiddleware.php ( 4.35 KB )
  94. /www/wwwroot/zmCms/my-cms/app/middleware/CorsMiddleware.php ( 3.60 KB )
  95. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  96. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/route/RuleName.php ( 5.74 KB )
  97. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  98. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.41 KB )
  99. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/route/Rule.php ( 27.49 KB )
  100. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  101. /www/wwwroot/zmCms/my-cms/route/app.php ( 17.18 KB )
  102. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  103. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  104. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/route/Dispatch.php ( 11.32 KB )
  105. /www/wwwroot/zmCms/my-cms/app/controller/DetailController.php ( 18.72 KB )
  106. /www/wwwroot/zmCms/my-cms/app/controller/BaseController.php ( 48.65 KB )
  107. /www/wwwroot/zmCms/my-cms/app/BaseController.php ( 2.14 KB )
  108. /www/wwwroot/zmCms/my-cms/app/common/traits/MemberHelper.php ( 2.88 KB )
  109. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/facade/Log.php ( 3.07 KB )
  110. /www/wwwroot/zmCms/my-cms/vendor/psr/log/src/LogLevel.php ( 0.33 KB )
  111. /www/wwwroot/zmCms/my-cms/app/common/log/DomainFile.php ( 2.91 KB )
  112. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/log/driver/File.php ( 6.10 KB )
  113. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  114. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  115. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  116. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/event/LogWrite.php ( 0.76 KB )
  117. /www/wwwroot/zmCms/my-cms/app/common/IpHelper.php ( 2.17 KB )
  118. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  119. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  120. /www/wwwroot/zmCms/my-cms/app/service/SiteService.php ( 22.97 KB )
  121. /www/wwwroot/zmCms/my-cms/app/common/DomainHelper.php ( 14.61 KB )
  122. /www/wwwroot/zmCms/my-cms/app/common/cache/CacheHelper.php ( 29.40 KB )
  123. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/facade/Config.php ( 1.37 KB )
  124. /www/wwwroot/zmCms/my-cms/app/model/Site.php ( 2.88 KB )
  125. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/facade/App.php ( 2.73 KB )
  126. /www/wwwroot/zmCms/my-cms/app/service/MenuService.php ( 6.82 KB )
  127. /www/wwwroot/zmCms/my-cms/app/service/ModuleService.php ( 17.29 KB )
  128. /www/wwwroot/zmCms/my-cms/app/service/SiteExtensionDataDataService.php ( 3.08 KB )
  129. /www/wwwroot/zmCms/my-cms/app/service/SitePageService.php ( 2.30 KB )
  130. /www/wwwroot/zmCms/my-cms/app/common/util/StringUtil.php ( 9.08 KB )
  131. /www/wwwroot/zmCms/my-cms/app/view/driver/CustomThink.php ( 4.18 KB )
  132. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  133. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  134. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  135. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  136. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  137. /www/wwwroot/zmCms/my-cms/app/common/CustomTemplate.php ( 0.76 KB )
  138. /www/wwwroot/zmCms/my-cms/app/common/PathHelper.php ( 32.31 KB )
  139. /www/wwwroot/zmCms/my-cms/app/common/util/SocialUrlUtil.php ( 1.59 KB )
  140. /www/wwwroot/zmCms/my-cms/app/common/service/SymlinkService.php ( 16.08 KB )
  141. /www/wwwroot/zmCms/my-cms/app/model/SitePage.php ( 1.11 KB )
  142. /www/wwwroot/zmCms/my-cms/app/service/SiteCategoryService.php ( 18.30 KB )
  143. /www/wwwroot/zmCms/my-cms/app/service/AdsUnitService.php ( 42.44 KB )
  144. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  145. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.73 KB )
  146. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/PDOConnection.php ( 53.74 KB )
  147. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  148. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  149. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  150. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/Builder.php ( 24.07 KB )
  151. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  152. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/Query.php ( 15.97 KB )
  153. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  154. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  155. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  156. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  157. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  158. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  159. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  160. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  161. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  162. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  163. /www/wwwroot/zmCms/my-cms/app/common/SeoVarHelper.php ( 5.65 KB )
  164. /www/wwwroot/zmCms/my-cms/app/service/SiteNewsService.php ( 6.37 KB )
  165. /www/wwwroot/zmCms/my-cms/app/model/News.php ( 7.12 KB )
  166. /www/wwwroot/zmCms/my-cms/app/common/UrlHelper.php ( 9.39 KB )
  167. /www/wwwroot/zmCms/my-cms/app/common/util/LdJson.php ( 23.74 KB )
  168. /www/wwwroot/zmCms/my-cms/app/model/SiteModel.php ( 0.92 KB )
  169. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  170. /www/wwwroot/zmCms/my-cms/app/service/PageMetaService.php ( 10.94 KB )
  171. /www/wwwroot/zmCms/my-cms/app/common/ArrayAccessWrapper.php ( 6.19 KB )
  172. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-template/src/template/taglib/Cx.php ( 24.23 KB )
  173. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-template/src/template/TagLib.php ( 12.11 KB )
  174. /www/wwwroot/zmCms/my-cms/runtime/temp/5ddfa63e404075cae9a1795185df4d17.php ( 50.55 KB )
  175. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Response.php ( 9.07 KB )
  176. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/response/Html.php ( 0.97 KB )
  177. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  178. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-trace/src/Html.php ( 4.65 KB )
  1. SiteService getSiteByDomain - 查找站点,域名: deskconnectionlab.com
  2. SiteService getSiteByDomain - 找到站点,ID: 1960, 名称: DeskConnection Lab, 模板ID: 219
  3. SiteService safeTemplateDirExists - 检查模板目录是否存在,模板UID: deskconnectionlab.com, 根路径: /www/wwwroot/zmCms/my-cms/
  4. SiteService safeTemplateDirExists - 检查路径: /www/wwwroot/zmCms/templates/deskconnectionlab.com/, 是否存在: 否
  5. SiteService safeTemplateDirExists - 检查路径: /www/wwwroot/zmCms/my-cms/templates/deskconnectionlab.com/, 是否存在: 否
  6. SiteService safeTemplateDirExists - 模板目录不存在: deskconnectionlab.com
  7. SiteService getCurrentTemplate - 域名目录不存在: deskconnectionlab.com,继续检查站点配置
  8. SiteService getCurrentTemplate - 使用传入的站点对象,ID: 1960, 模板ID: 219
  9. SiteService getCurrentTemplate - 从站点对象获取模板UID: news_qkd_0015
  10. SiteService safeTemplateDirExists - 检查模板目录是否存在,模板UID: news_qkd_0015, 根路径: /www/wwwroot/zmCms/my-cms/
  11. SiteService safeTemplateDirExists - 检查路径: /www/wwwroot/zmCms/templates/news_qkd_0015/, 是否存在: 是
  12. SiteService safeTemplateDirExists - 模板目录存在: /www/wwwroot/zmCms/templates/news_qkd_0015/
  13. SiteService getCurrentTemplate - 数据库配置模板目录存在,返回: news_qkd_0015
  14. [CacheHelper] 写入缓存: tpUid:deskconnectionlab.com, 结果: 成功
  15. APCu缓存设置结果: 成功, 域: deskconnectionlab.com, 值: news_qkd_0015
  16. 站点信息 - ID: 1960, URL: deskconnectionlab.com, 类型: 0, 模板: news_qkd_0015, 站点数据: 存在
  17. [Lang] 当前语言: en,站点默认: en,URL 前缀: 否
  18. SiteService findTemplatePath - 应用根目录: /www/wwwroot/zmCms/my-cms/
  19. SiteService findTemplatePath - 检查的目录列表: deskconnectionlab.com, news_qkd_0015, default, game_default
  20. SiteService findTemplatePath - 可能的基路径: /www/wwwroot/zmCms/templates/, /www/wwwroot/zmCms/my-cms/templates/
  21. SiteService findTemplatePath - 检查路径: /www/wwwroot/zmCms/templates/deskconnectionlab.com/, 是否存在: 否
  22. SiteService findTemplatePath - 检查路径: /www/wwwroot/zmCms/templates/news_qkd_0015/, 是否存在: 是
  23. SiteService findTemplatePath - 找到目录: /www/wwwroot/zmCms/templates/news_qkd_0015/, 相对路径: ../templates/news_qkd_0015/
  24. SiteService findTemplatePath - 数据库配置模板标识: news_qkd_0015, 实际使用目录: news_qkd_0015, 是否匹配: 是
  25. [CacheHelper] 写入缓存: viewpath:deskconnectionlab.com, 结果: 成功
  26. SiteService findTemplatePath - 已缓存视图路径,域名: deskconnectionlab.com, 路径: ../templates/news_qkd_0015/
  27. 智能模板查找 - 域名: deskconnectionlab.com, 模板UID: news_qkd_0015, 路径: ../templates/news_qkd_0015/
  28. 最终设置模板路径: ../templates/news_qkd_0015/
  29. CustomThink驱动初始化完成,已替换为CustomTemplate
  30. 开始分配模板变量 - 站点ID: 1960, 模板: news_qkd_0015
  31. 站点拓展字段数量: 29
  32. currentPath: news/55632/pair-surface-keyboard-with-its-displayed-pin
  33. 菜单数量: 6
  34. 模板变量分配完成
  35. 页面标识pageUid: detail
  36. 页面配置查询结果: 找到页面
  37. 获取到分类/标签列表数量: 5
  38. 页面配置: show_cat=1, show_models=1
  39. [模块] Relevant News - 数量: 0, 配置显示数量: 20
  40. 模块数量: 1
  41. [模块-拆分后] Relevant News - 数量: 0
  42. handleSiteMeta - 开始
  43. handleSiteMeta - 完成,已设置 SEO + hero
  44. [loadAdsConfig] ad_enable=0, google_client=, google_analytics=, clarity_project_id=null, AD_JS长度=0
  45. News控制器 name=, id=55632
  46. 当前站点ID: 1960, 站点类型: 0,name:,orgType:news,id:55632
  47. 111111111111111111orgType:news
  48. [SiteNewsService] 缓存新闻详情,缓存键: site:news:deskconnectionlab.com:detail_55632
  49. [CacheHelper] 写入缓存: site:news:deskconnectionlab.com:detail_55632, 结果: 成功
  50. 从SiteNewsService::getNewsDetail获取到新闻记录,站点ID: 1960, ID: 55632
  51. recordBrowseHistory 被调用, siteId: 1960, itemId: 55632, type: -1
  52. 会员信息无效或未登录,不记录浏览历史
  53. [Detail] play_url 值: 'https://deskconnectionlab.com/play/55632/pair-surface-keyboard-with-its-displayed-pin', title: 'Pair Surface Keyboard with its displayed PIN'
  54. source_url:
  55. 不存在时分配空值
  56. [SiteNewsService] 缓存关联新闻,缓存键: site:news:deskconnectionlab.com:link_17672
  57. [CacheHelper] 写入缓存: site:news:deskconnectionlab.com:link_17672, 结果: 成功
  58. BaseController fetch开始 - 模板: detail.html, 请求模板路径: 未设置
  59. SiteService findTemplatePath - 应用根目录: /www/wwwroot/zmCms/my-cms/
  60. SiteService findTemplatePath - 检查的目录列表: deskconnectionlab.com, news_qkd_0015, default, game_default
  61. SiteService findTemplatePath - 可能的基路径: /www/wwwroot/zmCms/templates/, /www/wwwroot/zmCms/my-cms/templates/
  62. SiteService findTemplatePath - 检查路径: /www/wwwroot/zmCms/templates/deskconnectionlab.com/, 是否存在: 否
  63. SiteService findTemplatePath - 检查路径: /www/wwwroot/zmCms/templates/news_qkd_0015/, 是否存在: 是
  64. SiteService findTemplatePath - 找到目录: /www/wwwroot/zmCms/templates/news_qkd_0015/, 相对路径: ../templates/news_qkd_0015/
  65. SiteService findTemplatePath - 数据库配置模板标识: news_qkd_0015, 实际使用目录: news_qkd_0015, 是否匹配: 是
  66. [CacheHelper] 写入缓存: viewpath:deskconnectionlab.com, 结果: 成功
  67. SiteService findTemplatePath - 已缓存视图路径,域名: deskconnectionlab.com, 路径: ../templates/news_qkd_0015/
  68. BaseController fetch - 计算模板路径: ../templates/news_qkd_0015/, 模板UID: news_qkd_0015
  69. BaseController fetch - 完整模板文件路径: /www/wwwroot/zmCms/my-cms/../templates/news_qkd_0015/detail.html , 文件存在: 是
  1. CONNECT:[ UseTime:0.000287s ] mysql:host=localhost;port=3306;dbname=cms;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `cms_site_category` [ RunTime:0.000884s ]
  3. SELECT `seo_title`,`seo_keywords`,`seo_description`,`page_hero`,`page_hero_bg` FROM `cms_site_category` WHERE `name` = 'detail' AND `site_id` = '1960' LIMIT 1 [ RunTime:0.000260s ]
  4. SHOW FULL COLUMNS FROM `cms_site_news` [ RunTime:0.000774s ]
  5. SELECT `sa`.`id`,`sa`.`sort`,`sa`.`create_time`,`sa`.`site_id`,a.id as news_id,`a`.`title`,`a`.`summary`,`a`.`seo_title`,`a`.`seo_keywords`,`a`.`seo_description`,`a`.`thumb_big`,`a`.`thumb_middle`,`a`.`thumb_small`,`a`.`author`,`a`.`click_count`,`a`.`share_count`,`a`.`view_count`,`a`.`publish_time`,`a`.`update_time`,`a`.`cat_id`,`c`.`cat_name`,`ad`.`content` FROM `cms_site_news` `sa` INNER JOIN `cms_news` `a` ON `sa`.`news_id`=`a`.`id` LEFT JOIN `cms_categories` `c` ON `a`.`cat_id`=`c`.`id` LEFT JOIN `cms_news_detail` `ad` ON `a`.`id`=`ad`.`news_id` WHERE `sa`.`status` = '1' AND `a`.`status` = '1' AND `sa`.`site_id` = '1960' AND `a`.`id` = '55632' LIMIT 1 [ RunTime:0.000429s ]
  6. SHOW FULL COLUMNS FROM `cms_site_module` [ RunTime:0.000759s ]
  7. SELECT `sa`.`id`,`sa`.`sort`,`sa`.`create_time`,`sa`.`site_id`,a.id as news_id,`a`.`title`,`a`.`summary`,`a`.`seo_title`,`a`.`seo_keywords`,`a`.`seo_description`,`a`.`thumb_big`,`a`.`thumb_middle`,`a`.`thumb_small`,`a`.`author`,`a`.`click_count`,`a`.`share_count`,`a`.`view_count`,`a`.`publish_time`,`a`.`update_time`,`a`.`cat_id`,`c`.`cat_name` FROM `cms_site_news` `sa` INNER JOIN `cms_news` `a` ON `sa`.`news_id`=`a`.`id` LEFT JOIN `cms_categories` `c` ON `a`.`cat_id`=`c`.`id` WHERE `a`.`cat_id` = '2874' AND `sa`.`site_id` = '1960' AND `sa`.`status` = '1' AND `a`.`status` = '1' AND `sa`.`id` <> '17672' ORDER BY `a`.`create_time` DESC LIMIT 20 [ RunTime:0.000600s ]
0.063037s