Đội ngũ Mstar Corp

HƯỚNG DẪN
SỬ DỤNG
BITRIX24 CƠ BẢN

Nơi bạn có thể học và tìm hiểu các tính năng cơ bản của phần mềm Bitrix24

THƯ VIỆN TÀI LIỆU

BITRIX24

Nơi bạn có thể học cách sử dụng các tính năng cơ bản phần mềm Bitrix24.

Our document

Bitrix24

Bitrix24

Nâng cấp lên PHP 8.1x trong Bitrix24 On-Premise

On-premise

Bạn có thể đã nhận thấy cảnh báo như vậy trong Bảng điều khiển của Bitrix24 On-Premise:

Tính đến ngày 02/01/2023, chỉ có hỗ trợ hạn chế được cung cấp cho các sản phẩm của chúng tôi chạy trên các phiên bản PHP dưới 8.1. Hiện tại bạn đang sử dụng PHP 7.4.33. Vui lòng cập nhật cài đặt PHP của bạn hoặc liên hệ với nhà cung cấp dịch vụ lưu trữ của bạn để được hỗ trợ.
 

Điều này có nghĩa là gì?

Tất cả các phiên bản PHP 7 hiện đã kết thúc vòng đời và không còn được hỗ trợ nữa. Sẽ không có bản sửa lỗi hoặc bảo mật nào được thực hiện cho bất kỳ phiên bản PHP 7 nào. Do đó, không nên sử dụng bất kỳ phiên bản PHP nào dưới 8.1.

Bạn sẽ không thể cài đặt bất kỳ bản cập nhật nền tảng nào để có các tính năng mới, cải thiện bảo mật và hiệu suất của trang web cho đến khi bạn nâng cấp phiên bản PHP lên 8.1 trong môi trường máy chủ ảo của mình.

 

Tôi nên làm gì?

Bạn nên lên lịch cập nhật phiên bản PHP của mình lên phiên bản 8.1 càng sớm càng tốt.

Việc cập nhật được thực hiện dần dần. Hãy liên hệ với quản trị viên hệ thống hoặc nhà cung cấp dịch vụ lưu trữ để được hỗ trợ.

  1. Hãy chắc chắn sao lưu trang web của bạn. Bạn có thể sử dụng công cụ tạo bản sao lưu tích hợp hoặc tạo bản sao lưu cấp máy chủ.

  2. Cài đặt tất cả các bản cập nhật có sẵn tại Bảng điều khiển > Thị trường > Cập nhật nền tảng .

    Cập nhật nền tảng
  3. Cài đặt tất cả các bản cập nhật có sẵn cho các giải pháp của bên thứ ba từ Market tại Control panel > Marketplace > Solution Update .

    Cập nhật giải pháp
  4. Cập nhật phiên bản PHP của bạn lên phiên bản 8.1

    Nếu bạn sử dụng BitrixVM, bạn có thể cập nhật PHP theo cách thủ công thông qua mục menu thiết bị ảo 1. Quản lý máy chủ trong nhóm - 8. Cập nhật PHP và MySQL . Tìm hiểu thêm về nó trong khóa học này .
  5. Kiểm tra lại để biết các bản cập nhật nền tảng và giải pháp khả dụng.

 

Phải làm gì khi gặp lỗi khi cập nhật phiên bản PHP

  • Nếu có lỗi trong quá trình vận hành các mô-đun Bitrix24 tiêu chuẩn, hãy liên hệ với bộ phận Hỗ trợ Bitrix24 .

    Ngoài ra, nếu các giải pháp từ Market có bitrix.*trong tên, hãy liên hệ với Bộ phận hỗ trợ Bitrix24, ví dụ:

    bitrix.eshop bitrix.sitecommunity bitrix.sitecorporate bitrix.siteinfoportal bitrix.sitepersonal bitrix.learningtemplates
  • Nếu có lỗi trong hoạt động của các mô-đun của bên thứ ba được cài đặt từ Market, hãy liên hệ với nhà phát triển mô-đun. Bạn có thể tìm thấy thông tin liên hệ của họ trong tab Hỗ trợ.

 

Các vấn đề thường gặp và cách giải quyết

Những lý do có thể xảy ra sau khi nâng cấp lên PHP 8.1x

  • Bạn chưa cài đặt các bản cập nhật có sẵn tại Bảng điều khiển > Thị trường > Cập nhật nền tảng trước khi nâng cấp lên PHP 8.1x.

  • Bạn chưa cài đặt bản cập nhật khả dụng cho các giải pháp của bên thứ ba từ Market tại Control panel > Marketplace > Solution Update trước khi nâng cấp lên PHP 8.1x.

  • Nhà phát triển chưa cập nhật mô-đun để hỗ trợ phiên bản PHP 8.1.

Cách giải quyết một số vấn đề thường gặp sau khi nâng cấp lên PHP 8.1x

  • Hạ cấp xuống phiên bản PHP trước đó là 7.x, tải tất cả các bản cập nhật được đề xuất, sau đó nâng cấp lên PHP 8.1x một lần nữa.

  • Nếu việc cài đặt bản cập nhật không giúp khắc phục sự cố, hãy làm theo các khuyến nghị trong phần này - Cần làm gì khi gặp lỗi khi cập nhật phiên bản PHP .

  • Tạm thời vô hiệu hóa mô-đun chứa lỗi bằng cách di chuyển nó ra khỏi /bitrix/modules.

  • Xóa giải pháp của bên thứ ba có lỗi.

Lưu ý rằng các khuyến nghị này được cung cấp để giải quyết các vấn đề trong hoạt động của một mô-đun cụ thể. Mỗi lỗi phải được nhà phát triển xem xét riêng.

[Ux11]Lỗi trong mô tả mô-đun "#MODULE#". Không thể kết nối máy chủ cập nhật.[Ux11]Lỗi trong mô tả mô-đun "#MODULE#".

Lỗi này có thể xuất hiện sau khi nâng cấp phiên bản PHP của bạn lên 8.1. Trong trường hợp này, trang web hoạt động bình thường, nhưng không thể cài đặt hoặc cập nhật bất kỳ giải pháp nào khác cho đến khi sự cố được giải quyết.

Giải pháp:

Để sửa lỗi, hãy mở tệp và thay thế mã bằng mã khác: /bitrix/modules/<module_name>/install/index.phpfunction <module.name>()

hàm __construct()

Tập lệnh gặp lỗi và sẽ bị hủy bỏ. Để xem thông báo lỗi mở rộng, hãy bật tính năng này trong .settings.php

Giải pháp:

Kết nối với FTP/SFTP hoặc đăng nhập vào bảng điều khiển lưu trữ và bật chức năng xuất lỗi trong /bitrix/.settings.php:

'gỡ lỗi' => đúng,

Sau đó, bạn sẽ thấy thông báo lỗi trên trang web.

Ví dụ về văn bản thông báo lỗi
Phương thức không tĩnh Super\Functions\CSuperModRep::checkBack() không thể được gọi tĩnh (0) /home/bitrix/modules/super.mod/lib/functions/CSuperModRep.php:52 #0: Super\Functions\CSuperModRep::checkRepActive() /home/bitrix/modules/super.mod/classes/general/CModEvents.php:1621 #1: CModEvents::OnPageStartHandler() /home/bitrix/modules/main/classes/general/module.php:480 #2: ExecuteModuleEventEx(array) /home/bitrix/modules/main/include.php:163 #3: require_once(string) /home/bitrix/modules/main/include/prolog_before.php:14 #4: require_once(string) /home/bitrix/modules/main/include/prolog.php:10 #5: require_once(chuỗi) /home/bitrix/header.php:1 #6: require(chuỗi) /home/index.php:1

Trong ví dụ này, phương pháp của bên thứ ba CSuperModRep::checkBack()là giải pháp super.mod. đưa ra lỗi.

Để sửa lỗi, trong checkBack()mã, bạn cần khai báo hàm tĩnh .

Thay thế

hàm checkBack()

qua

hàm tĩnh công khai checkBack()

Lỗi nghiêm trọng của PHP: $GLOBALS chỉ có thể được sửa đổi bằng cú pháp $GLOBALS[$name]= $value trong /www/bitrix/modules/main/tools.php

Lỗi này có thể xuất hiện sau khi nâng cấp lên PHP 8.1x nếu bạn chưa cài đặt các bản cập nhật nền tảng có sẵn khi sử dụng phiên bản PHP 7.x.

Giải pháp:

Sự cố này đã được khắc phục trong bản cập nhật Mô-đun chính main 22.100.0.

Hạ cấp xuống phiên bản PHP trước đó là 7.x, tải tất cả các bản cập nhật được đề xuất, sau đó nâng cấp lên PHP 8.x một lần nữa.

[TypeError]call_user_func_array(): Đối số #1 ($callback) phải là một lệnh gọi lại hợp lệ, phương thức không tĩnh COMP\BXE\EventHandlers::AdminContextMenuShow() không thể được gọi tĩnh (0)...

Lỗi này có thể xuất hiện sau khi nâng cấp lên PHP 8.1x, nhưng không rõ ràng:

Ví dụ về văn bản thông báo lỗi

 

Văn bản thông báo lỗi không hiển thị thư mục mô-đun, nhưng phương pháp này COMP\BXE\EventHandlers::AdminContextMenuShow()thuộc về mô-đun của bên thứ ba.

Giải pháp:

Để sửa lỗi, trong AdminContextMenuShow()mã, bạn cần khai báo hàm tĩnh một cách chính xác.

Thay thế

hàm AdminContextMenuShow()

qua

hàm tĩnh công khai AdminContextMenuShow()

Màn hình trắng trống sau khi nâng cấp lên PHP 8.1x

Lỗi này có thể xuất hiện do thiết lập short_open_tag = Offtham số trong cài đặt PHP.

Giải pháp:

  • Đặt giá trị này trong tệp cấu hình PHP: short_open_tag = On.

  • Kiểm tra nhật ký máy chủ web để tìm bất kỳ lỗi nào có thể xảy ra và khắc phục chúng.

  • Ngoài ra, bạn có thể kiểm tra lỗi trên trang bằng màn hình trắng: nhấp chuột phải vào trang và chọn Xem nguồn trang , cuộn xuống và kiểm tra xem có lỗi nào không.