Tùy chọn Config.php

Tất cả thông tin XenForo cần kết nối với máy chủ cơ sở dữ liệu của bạn nằm trong tệp src/config.php.

Tùy thuộc vào cách bạn đã cài đặt XenForo, config.php có thể đã tạo bằng cách sao chép nội dung của bản gốc tệp src/config.php.default, hoặc Trình cài đặt XenForo có thể đã tạo ra cho bạn.

Thông thường, tệp config chỉ chứa một số cài đặt, chỉ đủ để cho phép XenForo hoạt động, nhưng có nhiều tùy chọn bổ sung mà bạn có thể thêm để thay đổi cách mà XenForo hoạt động.

Cảnh báo

Các tùy chọn này kiểm soát chức năng cơ bản của cài đặt XenForo và cấu hình không chính xác có thể khiến trang web của bạn không thể hoạt động. Nếu bạn gặp sự cố, hãy hoàn tác các thay đổi config.php của bạn và thử lại.

Các biến trong config.php

Sau đây là danh sách tất cả các cài đặt có thể được kiểm soát thông qua config.php. Các tên biến này phải được nhập chính xác như được hiển thị ở đây hoặc cài đặt sẽ bị bỏ qua. Tên và giá trị biến là phân biệt chữ hoa chữ thường.

Trong mỗi trường hợp, tên biến được hiển thị với giá trị mặc định của nó, ví dụ:

$config['variableName'] = 'default-value';


Kết nối cơ sở dữ liệu

  • $config['db']['host'] = 'localhost';
  • $config['db']['port'] = 3306;
  • $config['db']['socket'] = null;

Tên hoặc địa chỉ IP, port và socket của máy chủ cơ sở dữ liệu lưu trữ cơ sở dữ liệu XenForo của bạn. Thông tin này sẽ được nhà cung cấp dịch vụ lưu trữ cung cấp cho bạn.

  • $config['db']['username'] = '';
  • $config['db']['password'] = '';
  • $config['db']['dbname'] = '';

Tên người dùng và mật khẩu bạn sử dụng để kết nối với máy chủ cơ sở dữ liệu của bạn và tên của cơ sở dữ liệu được lưu trữ trên máy chủ của bạn trong đó diễn đàn của bạn được cài đặt.

Hỗ trợ toàn bộ unicode / emoji

  • $config['fullUnicode'] = false;

Cài đặt này cho XenForo biết bạn có thực hiện các bước cần thiết để hỗ trợ đầy đủ unicode trong nội dung diễn đàn của bạn hay không. Toàn bộ unicode được sử dụng để hỗ trợ việc sử dụng Emoji trong văn bản.

Nếu cài đặt XenForo của bạn bắt đầu ở phiên bản 2, thay vì nâng cấp từ XenForo 1, cơ sở dữ liệu của bạn sẽ có định dạng unicode đầy đủ và bạn có thể thiết lập cài đặt này cùng với giá trị true trong tệp config.php của bạn.

Nếu cài đặt XenForo của bạn đã được nâng cấp từ XenForo 1, bạn sẽ cần phải chạy quá trình chuyển đổi unicode trước khi bạn có thể sử dụng unicode đầy đủ, và thiết lập này nên được để lại false cho đến khi bạn làm như vậy.

Chú thích

Hỗ trợ unicode đầy đủ yêu cầu ít nhất MySQL 5.5.

Cách nâng cấp lên unicode đầy đủ để hỗ trợ Emoji

Tùy chọn nâng cao

Các tùy chọn này không được bao gồm như là tiêu chuẩn trong config.php, bởi vì đối với hầu hết các phần, XenForo sẽ sử dụng các giá trị mặc định. Nếu bạn quyết định sử dụng bất kỳ cài đặt nào trong số này, hãy đảm bảo kiểm tra đầy đủ hoạt động của diễn đàn của bạn trước khi rời khỏi hệ thống để chạy trong môi trường sản xuất.

Vô hiệu hóa tính năng trên toàn trang web

Một số hệ thống XenForo có thể vô hiệu hóa hoàn toàn từ tập tin config mà không cần phải đăng nhập vào Admin control panel. Thiết lập bất kỳ tùy chọn nào trong số các tùy chọn này thành false sẽ vô hiệu hóa chức năng tương ứng hoàn toàn.

Ghi chú

Nếu một hệ thống bị vô hiệu hóa thông qua tệp config.php, nó không thể được kích hoạt lại thông qua Admin control panel - chỉ một chỉnh sửa đối với tệp config sẽ khôi phục chức năng của hệ thống.

Các mô tả cho các cài đặt này mô tả những gì sẽ xảy ra nếu bạn đặt giá trị của chúng thành false.

  • $config['enableMail'] = true;
  • $config['enableMailQueue'] = true;
  • $config['enableListeners'] = true;
  • $config['enableTemplateModificationCallbacks'] = true;
  • $config['enableGzip'] = true;
  • $config['enableContentLength'] = true;
  • $config['enableTfa'] = true;
  • $config['enableLivePayments'] = true;
  • $config['enableClickjackingProtection'] = true;
  • $config['enableReverseTabnabbingProtection'] = true;

enableMail

Hoàn toàn vô hiệu hóa tất cả các tính năng gửi email trong XenForo. Sẽ không có email nào được gửi.

enableMailQueue

Vô hiệu hóa hệ thống hàng đợi email. Bất kỳ email nào còn lại trong hàng đợi sẽ không được gửi và bất kỳ email mới nào đều được gửi ngay sau khi được tạo, thay vì được xếp hàng đợi để gửi hàng loạt.

enableListeners

Vô hiệu hóa tất cả code event listeners trong XenForo. Điều này chủ yếu sẽ tắt tất cả các chức năng bổ trợ và có thể hữu ích cho việc khôi phục quyền truy cập vào hệ thống và control panel của bạn nếu một add-on bị lỗi và làm hỏng khả năng của bạn.

enableTemplateModificationCallbacks

Vô hiệu hóa khả năng template modifications để thực hiện thao tác của chúng bằng cách sử dụng callback PHP. Tương tự như enableListeners, chuyển đổi này có thể được sử dụng để lấy lại quyền truy cập vào hệ thống được hiển thị không thể hoạt động bằng callback.

enableGzip

Theo mặc định, XenForo sẽ nén output HTML và CSS cuối cùng của các trang mà nó tạo ra bằng cách sử dụng hệ thống nén gzip, sau đó được giải nén ẩn bằng trình duyệt của khách truy cập khi dữ liệu được nhận. Điều này có thể tăng tốc đáng kể thời gian tải trang, nhưng nếu bạn muốn tắt tính năng này và có HTML và CSS được gửi dưới dạng văn bản thuần không nén, hãy tắt cài đặt này.

enableContentLength

Thông thường, XenForo sẽ gửi Content-Length HTTP header. Trong một số cấu hình máy chủ, nội dung có thể được sửa đổi giữa XenForo gửi nó và nó được nhận bởi người dùng cuối. Trong trường hợp này, Content-Length header có thể không được cập nhật chính xác nên nó sẽ bị vô hiệu hóa.

enableTfa

Vô hiệu hóa two-factor authentication (xác thực hai yếu tố) (2FA), hệ thống khiến người dùng cần phải đăng nhập bằng tên người dùng và mật khẩu và một phần thông tin bổ sung, chẳng hạn như code từ điện thoại của họ. Hữu ích nếu bạn mất quyền truy cập vào admin control panel của mình hoặc nếu bạn muốn ngăn chặn bất kỳ người dùng nào sử dụng 2FA ở tất cả.

enableLivePayments

Với tính năng này bị vô hiệu hóa, sẽ không có khoản thanh toán nào được xử lý. Các nhà cung cấp dịch vụ thanh toán sẽ không được liên lạc và sẽ không có giao dịch nào được thực hiện. Hữu ích khi chạy một trang thử nghiệm với một bản sao của một cơ sở dữ liệu trực tiếp.

enableClickjackingProtection

Thông thường, XenForo gửi X-Frame-Options HTTP header với một giá trị SAMEORIGIN như một phương tiện để ngăn chặn nhấp chuột từ các tập lệnh độc hại.

Khi được bật, tùy chọn này ngăn chặn các cuộc tấn công nhấp chuột bằng cách đặt diễn đàn của bạn vào iframe và lừa người dùng nhấp vào nội dung nào đó. Tuy nhiên, điều này cũng có thể vô hiệu hóa việc sử dụng hợp lệ các iframe nhúng. Chỉ tắt tính năng này nếu bạn hiểu ý nghĩa.

enableReverseTabnabbingProtection

Khi được bật, tùy chọn này ngăn chặn các cuộc tấn công lừa đảo dựa trên tabnabbing được kích hoạt khi người dùng của bạn nhấp vào liên kết đến các trang web bên ngoài. Tuy nhiên, việc bảo vệ này có thể ảnh hưởng đến các dịch vụ bên ngoài dựa vào việc thay đổi cách các nhấp chuột liên kết được xử lý (chẳng hạn như bao gồm các liên kết affiliate). Chỉ tắt tính năng này nếu bạn hiểu ý nghĩa.

Nếu bạn cần định cấu hình cài đặt về cách cookie được đặt trên trình duyệt của khách truy cập, bạn có thể sử dụng các cài đặt sau nhưng bị cảnh báo, giá trị không chính xác hoặc không hợp lệ cho các cài đặt này có thể khiến bạn và khách truy cập không thể đăng nhập vào tài khoản người dùng XenForo của bạn, bao gồm cả admin control panel.

Lý do chính để thay đổi các giá trị này là để chứa nhiều cài đặt XenForo trên cùng một tên miền. Nếu bạn chỉ có một cài đặt XenForo trên tên miền của mình, bạn không cần phải thay đổi các cài đặt này.

Chỉ thay đổi các giá trị này nếu bạn thật sự cần, và bạn biết bạn đang làm gì. Nếu bạn gặp sự cố, hãy đặt lại các giá trị này về giá trị mặc định của chúng.

  • $config['cookie']['prefix'] = 'xf_';

Tất cả các cookie được xác định theo tên, và tên của các tập tin cookie được thiết lập bởi XenForo thường có tiền tố với xf_ để cho phép chúng được phân biệt với các cookie được thiết lập bởi các hệ thống khác. Một hệ quả của việc thay đổi giá trị này là nó sẽ đặt lại thiết lập Remember me cho tất cả khách truy cập đã đăng nhập của bạn, những người sẽ cần đăng nhập lại vào lần truy cập tiếp theo vào trang web của bạn.

Giá trị của tiền tố chỉ nên sử dụng chữ cái, số và dấu gạch dưới, và phân biệt chữ hoa chữ thường.

  • $config['cookie']['path'] = '/';

Sử dụng giá trị mặc định của /, cookie do XenForo đặt sẽ có sẵn trong tất cả các khu vực trên trang web của bạn. Nếu bạn cần thay đổi điều này để các cookie XenForo chỉ có sẵn trong một phần cụ thể của trang web, hãy thay đổi giá trị để bao gồm đường dẫn thư mục đến khu vực chính xác của trang web, bắt đầu với vị trí gốc của trang web, /.

Giá trị mẫu

  • '/' Cookie XenForo có sẵn cho tất cả các khu vực trên trang web của bạn.
  • '/forum/' Cookie XenForo chỉ có thể được đọc bởi các trang nằm trong thư mục forum, tại 'http://example.com/forum', nơi example.com là địa chỉ trang web của bạn.
  • '/path/to/other/folder/' Cookie XenForo chỉ có thể được đọc bởi các trang nằm trong thư mục path/to/other/folder, Đặt vị trí tại http://example.com/path/to/other/folder.
    • Cookie có thể không được đọc bởi các trang nằm trong các thư mục phía trên vị trí này, tức là:
    • http://example.com/path
    • http://example.com/path/to
    • http://example.com/path/to/other

Cảnh báo

Nếu bạn chỉ định đường dẫn cookie không cho phép cookie được đặt trong thư mục gốc XenForo, XenForo sẽ không thể đọc cookie được thiết lập và các hoạt động quan trọng như đăng nhập sẽ không thành công.

  • $config['cookie']['domain'] = '';

Tương tự như cài đặt đường dẫn cookie, điều này cho phép bạn chỉ định tên miền mà cookie của bạn có thể đọc được. Việc đặt giá trị này thành bất kỳ giá trị nào khác với giá trị mặc định, nhưng với đường dẫn cookie, bạn nên cẩn thận nếu thay đổi nó, vì nhập giá trị ngăn XenForo đọc cookie của riêng nó sẽ phá vỡ chức năng quan trọng, như khả năng đăng nhập.

Lý do để đặt giá trị này sẽ cho phép cookie được chia sẻ trên nhiều tên miền phụ, ví dụ: cài đặt .example.com sẽ cho phép cookie được truy cập trên tất cả các tên miền phụ của example.com, như là www.example.comother.example.com. Trong hầu hết các trường hợp, cài đặt này có thể được để lại với cài đặt mặc định.

Giá trị mẫu

  • '' chỉ cho phép đọc cookie trên tên miền đã thiết lập
  • '.example.com' cho phép đọc cookie trên example.com và bất kỳ tên miền phụ nào của chúng
  • 'subdomain.example.com' cho phép chỉ đọc cookie trên subdomain.example.com

Vị trí dữ liệu và tập lệnh

Nếu bạn muốn thay đổi vị trí mà XenForo lưu trữ dữ liệu và tập lệnh mà nó lưu giữ trong các tệp, chẳng hạn như avatar, tệp đính kèm và tệp javascript, bạn có thể làm như vậy bằng cách thay đổi các cài đặt này.

  • $config['externalDataPath'] = 'data';
  • $config['externalDataUrl'] = 'data';
  • $config['internalDataPath'] = 'internal_data';
  • $config['codeCachePath'] = '%s/code_cache';
  • $config['tempDataPath'] = '%s/temp';
  • $config['javaScriptUrl'] = 'js';

Path variables (Biến đường dẫn)

Trong mỗi trường hợp này, một tên biến kết thúc bằng Path (Đường dẫn) đề cập vào đường dẫn hệ thống tệp nội bộ trên máy chủ, liên quan đến thư mục trong đó XenForo được cài đặt. Đường dẫn tương đối bắt đầu từ thư mục cài đặt XenForo. Điều này có thể được đặt bên ngoài web root.

Nếu cài đặt XenForo của bạn tồn tại /users/yourname/htdocs/bet365 có những phương thức nạp tiền nào_link vào bet365_điểm số trực tiếp bet365, thì các ví dụ sau cho thấy các giá trị khác nhau có liên quan như thế nào đến đường dẫn này:

  • data - /users/yourname/htdocs/bet365 có những phương thức nạp tiền nào_link vào bet365_điểm số trực tiếp bet365/data
  • ../another-folder - /users/yourname/htdocs/another-folder

Các biến này cũng có thể sử dụng đường dẫn tuyệt đối từ máy chủ gốc, chẳng hạn như /users/yourname/htdocs/bet365 có những phương thức nạp tiền nào_link vào bet365_điểm số trực tiếp bet365/data.

URL variables (Biến URL)

Các biến có tên kết thúc bằng Url đề cập một đường dẫn tương đối so với thư mục XenForo của bạn như được hiển thị từ web root của bạn. Các URL tương đối bắt đầu từ thư mục cài đặt XenForo của bạn. Nếu cài đặt XenForo của bạn nằm tại http://example.com/bet365 có những phương thức nạp tiền nào_link vào bet365_điểm số trực tiếp bet365, các ví dụ sau cho thấy các giá trị khác nhau sẽ được đánh giá như thế nào:

  • data - http://example.com/bet365 có những phương thức nạp tiền nào_link vào bet365_điểm số trực tiếp bet365/data
  • ../another-folder - http://example.com/another-folder
  • /a-root-folder - http://example.com/a-root-folder
  • /bet365 có những phương thức nạp tiền nào_link vào bet365_điểm số trực tiếp bet365/my-folder - http://example.com/bet365 có những phương thức nạp tiền nào_link vào bet365_điểm số trực tiếp bet365/my-folder

Có thể là URL đầy đủ, bao gồm tên miền, chẳng hạn như:

  • http://example.com/bet365 có những phương thức nạp tiền nào_link vào bet365_điểm số trực tiếp bet365/data
  • //example.com/bet365 có những phương thức nạp tiền nào_link vào bet365_điểm số trực tiếp bet365/data

Cảnh báo

Các thư mục được chỉ định làm đường dẫn phải có thể ghi bởi máy chủ web (chmod 777) hoặc dữ liệu sẽ không thể được lưu trữ trong các vị trí này bởi XenForo.

Nếu bất kỳ đường dẫn và URL nào được đặt không chính xác, chức năng XenForo quan trọng sẽ bị hỏng. Chỉ thay đổi chúng nếu bạn biết chính xác mình đang làm gì.

externalDataPath

Điều này định nghĩa đường dẫn đến thư mục 'data', trong đó XenForo giữ các tệp được phân phối trực tiếp tới trình duyệt thông qua máy chủ web, chẳng hạn như hình ảnh avatar và hình thu nhỏ tệp đính kèm. Thư mục này phải nằm trong web root.

externalDataUrl

Xác định vị trí của thư mục 'data', trong đó XenForo giữ avatar và hình thu nhỏ đính kèm, như được hiển thị từ máy chủ web của bạn.

internalDataPath

Xác định đường dẫn đến thư mục 'internal_data', chứa các tệp không được phân phát trực tiếp cho các trình duyệt web, chẳng hạn như tệp đính kèm.

codeCachePath

Xác định vị trí của thư mục 'code_cache', lưu trữ các phiên bản được lưu trong bộ nhớ cache của các tệp PHP được sử dụng để tăng tốc độ thực thi của XenForo. Điều này thường nằm trong thư mục 'internal_data'.

tempDataPath

Xác định đường dẫn đến thư mục được sử dụng để lưu trữ các tệp tạm thời, chẳng hạn như tệp đính kèm vừa được tải lên và đang được xử lý trước khi được lưu trữ ở vị trí cuối cùng của chúng. Điều này thường nằm trong thư mục 'internal_data'.

javaScriptUrl

DXác định vị trí của thư mục 'js', trong đó XenForo hy vọng sẽ tìm thấy các tệp JavaScript cần thiết cho chức năng của nó, như một đường dẫn trên máy chủ web công cộng. Thư mục này phải nằm trong web root.

Bộ chuyển đổi cơ sở dữ liệu

  • $config['db']['adapterClass'] = 'XF\Db\Mysqli\Adapter';

Tên của class PHP được sử dụng để kết nối với cơ sở dữ liệu của bạn. Nếu bạn sử dụng máy chủ MySQL, có rất ít lý do để thay đổi cài đặt này.

Cài đặt bộ nhớ cache

Đối với các trang web XenForo lớn, có thể thuận lợi khi sử dụng cơ chế bộ nhớ cache để tăng tốc độ tạo trang.

Các cài đặt cho bộ nhớ đệm ẩn tất cả nằm trong phần $config['cache'], và được thảo luận chi tiết hơn trong phần Cache của hướng dẫn này.

Nếu bạn định cấu hình bộ nhớ cache, bạn có thể tắt bộ nhớ cache bất kỳ lúc nào bằng cách đặt giá trị của tùy chọn này thành false:

  • $config['cache']['enabled'] = false;

Cài đặt bộ nhớ cache

Thiết lập HTTP client

Các cài đặt này kiểm soát hành vi của XenForo HTTP client nội bộ, được sử dụng để tìm nạp tài nguyên từ internet, chẳng hạn như hình ảnh và trang web khi sử dụng Image and link proxy (Proxy hình ảnh và liên kết).

  • $config['http']['sslVerify'] = null;
  • $config['http']['proxy'] default null

Thiết lập sslVerify sẽ buộc hệ thống xác minh chứng chỉ SSL của bất kỳ trang web nào mà nó truy cập bằng SSL/HTTPS khi yêu cầu tài nguyên. Đặt giá trị này thành true có thể có lợi trong một số trường hợp, nhưng có một số cách xác minh chứng chỉ SSL có thể không thành công, dẫn đến việc không thể tìm nạp tài nguyên được yêu cầu. Nếu nghi ngờ, hãy để cài đặt này một mình.

Nếu bạn muốn XenForo HTTP client nội bộ thực hiện các yêu cầu của nó thông qua proxy, hãy nhập địa chỉ của máy chủ proxy trong thiết lập proxy.

Các biến khác

  • $config['globalSalt'] = '[%GLOBAL_SALT%]';

Biến này xác định một giá trị bí mật được sử dụng để salt giá trị của nhiều bộ nhớ cache, cookie và dữ liệu khác nhằm mục đích ngăn chặn dữ liệu bị đánh cắp hoặc giả mạo bởi các tác nhân độc hại. Không bao giờ tiết lộ giá trị global salt cho bất kỳ ai vì điều này sẽ làm tổn hại đến tính bảo mật của cài đặt XenForo.

Thông thường, XenForo sẽ tạo ra global salt an toàn của riêng mình và bạn sẽ chỉ cần thay đổi nó nếu bạn muốn xác định.

  • $config['checkVersion'] = true;

Nếu được bật, hệ thống sẽ kiểm tra số phiên bản được lưu trữ trong các tập lệnh PHP XenForo khớp với số phiên bản được lưu trữ trong cơ sở dữ liệu XenForo của bạn và sẽ ngăn truy cập vào diễn đàn theo các khách truy cập thường xuyên nếu các con số không khớp, như trường hợp khi bạn vừa tải lên các tệp sẵn sàng để chạy nâng cấp, nhưng chưa thực sự chạy quá trình nâng cấp.

  • $config['passwordIterations'] = 10;

Định cấu hình sức mạnh của hệ thống lưu trữ mật khẩu dựa trên bcrypt. Số cao hơn an toàn hơn nhưng mỗi lần tăng giá trị của cài đặt này sẽ tăng gấp đôi lượng thời gian cần thiết để tạo hoặc xác thực mật khẩu, dẫn đến việc sử dụng máy chủ cao hơn.

  • $config['maxImageResizePixelCount'] = 20000000;

Kích thước tối đa của một hình ảnh (trong tổng số điểm ảnh) mà XenForo sẽ cố gắng thay đổi kích thước. Hình ảnh lớn hơn sẽ không được thay đổi kích thước và do đó có thể bị từ chối. Điều này được tính bằng cách sử dụng width × height.

  • $config['adminLogLength'] = 60;

Số ngày để lưu nhật ký của tất cả hoạt động của Administrator trong admin control panel. Sau khi số ngày này đã trôi qua kể từ khi một hành động được ghi lại, nó sẽ bị lược bớt khỏi cơ sở dữ liệu.

  • $config['chmodWritableValue'] = 0;

Nếu giá trị này khác 0, tất cả các tệp được tạo bởi XenForo sẽ được tự động chmodd thành giá trị này. Các thư mục cũng sẽ được chuyển thành giá trị này, mặc dù chúng cũng sẽ luôn luôn là user-, group-, và world-executable. Trong hầu hết các trường hợp, XenForo sẽ tự động xác định giá trị chmod chính xác.

  • $config['proxyUrlFormat'] = 'proxy.php?{type}={url}&hash={hash}';

Xác định định dạng cho các liên kết bằng cách sử dụng Image and link proxy (Proxy hình ảnh và liên kết).

Định dạng phải bao gồm các token {type}, {url}{hash}, và phải nhắm mục tiêu proxy.php trừ khi bạn có một script hoặc hệ thống thay thế để xử lý các yêu cầu proxy.

  • $config[jobMaxRunTime'] = 8;

Định cấu hình lượng thời gian tính bằng giây mà các công việc xử lý sẽ được phép chạy trước khi chúng bị tạm ngưng để xử lý thêm trên một lượt di chuyển khác, nếu có thể.

  • $config['fsAdapters'] = [];

Xác định danh sách các adapter hệ thống tập tin có sẵn cho hệ thống để sử dụng. Đây là tính năng người dùng nâng cao sẽ được ghi chép đầy đủ vào một ngày sau đó.

Debug mode (Chế độ gỡ lỗi)

Debug mode (Chế độ gỡ lỗi) là một trạng thái đặc biệt trong đó XenForo sẽ chạy cho mục đích gỡ lỗi hoặc phát triển.

  • $config['debug'] = false;

Đặt điều này thành true là cần thiết cho một số chức năng nhất định để hoạt động, bao gồm chế độ Designer và cế độ Developer.

Cảnh báo

Không bao giờ, không bao giờ kích hoạt chế độ gỡ lỗi trên một trang web sản xuất trực tiếp tiếp xúc với Internet.

Không chỉ thực thi và tạo trang chạy chậm hơn đáng kể so với chế độ gỡ lỗi bị vô hiệu hóa, những thông tin quan trọng như trạng thái truy vấn SQL nội bộ có thể được tiết lộ cho người dùng truy cập. Chỉ kích hoạt chế độ gỡ lỗi nếu bạn đang làm việc trên một cài đặt XenForo riêng được bảo vệ khỏi bất kỳ khách truy cập tiềm ẩn độc hại nào.

Designer mode (Chế độ Designer)

Designer mode (Chế độ Designer) là một tính năng nâng cao cho các nhà thiết kế style XenForo, cho phép các template được chỉnh sửa trực tiếp trong hệ thống tệp, thay vì sử dụng trình chỉnh sửa template trong admin control panel.

  • $config['designer']['enabled'] = false;
  • $config['designer']['basePath'] = 'src' . \DIRECTORY_SEPARATOR . 'styles';

Kích hoạt bật và tắt chế độ designer và giá trị basePath kiểm soát vị trí mà XenForo mong muốn tìm các tệp template, v.v mà nhà thiết kế đang làm việc.

Một cuộc thảo luận rộng hơn về Designer mode (Chế độ Designer) có thể được tìm thấy trong Tài liệu dành cho nhà phát triển XenForo 2

Development mode (Chế độ Development)

Developer mode là một tính năng nâng cao khác, lần này cho các nhà phát triển add-on XenForo.

  • $config['development']['enabled'] = false;
  • $config['development']['defaultAddOn'] = '';

Kích hoạt bật và tắt chế độ developer. Thiết lập defaultAddOn cho phép bạn chỉ định ID của add-on, sau đó sẽ tự động đặt thiết lập Add on cho tài liệu mới được tạo trong admin control panel cho add-on mà bạn chỉ định.

  • $config['development']['skipAddOns] = null;

Để sử dụng cài đặt này, hãy đặt giá trị thành một mảng ID add-on, chẳng hạn như ['addOn1', 'addOn2']. Bất kỳ add-on nào được chỉ định trong mảng skipAddOns sẽ bị bỏ qua khi nói đến các công cụ phát triển đang chạy như nhập và xuất dữ liệu chính.

  • $config['development']['throwJobErrors'] = null;

Nếu tùy chọn này được đặt thành true, bất kỳ lỗi nào thường bị chặn khi chạy các công cụ phát triển như chạy tập lệnh xây dựng add-on, sẽ được vứt đi và hiển thị, làm gián đoạn quá trình công việc. Điều này có thể hữu ích khi gỡ lỗi các vấn đề với đầu ra của các công việc phát triển.

  • $config['development']['fullJs'] = false;

Kiểm soát xem hệ thống có nên chạy bằng cách sử dụng tiêu chuẩn minified và thư viện javascript rolled-up hay không, như trong cấu hình XenForo mặc định, hoặc nếu nó thay vào đó nên sử dụng các tệp javascript đầy đủ.

Đặt giá trị thành true sẽ khiến XenForo yêu cầu các tệp javascript đầy đủ. Chức năng kết quả sẽ giống nhau, nhưng các tệp đầy đủ, chưa được sửa đổi sẽ dễ dàng hơn để duyệt qua khi gỡ lỗi bất kỳ vấn đề nào bạn có thể gặp khi phát triển các add-on của mình.

Việc sử dụng tệp javascript đầy đủ sẽ làm cho trang web của bạn tạo nhiều yêu cầu HTTP hơn và tiêu thụ nhiều băng thông hơn, điều này sẽ mang lại trải nghiệm chậm hơn cho người dùng truy cập của bạn, vì vậy chúng tôi khuyên bạn không nên sử dụng fullJs trên các trang web sản xuất trực tiếp.

Lời giải thích đầy đủ về Developer mode có sẵn trong Tài liệu dành cho nhà phát triển XenForo 2.