Cài đặt Webinoly PHP 7.4 nhanh nhất

Đây là bản chính sửa riêng mình dùng cá nhân, bạn nào thích có thể dùng theo 😛

Mặc định nếu bạn cài Webinoly, đa phần tác giả sẽ cố gắng dùng PHP mới và ổn định nhất, thường việc này luôn tốt và luôn đúng 😀 có điều cá nhân mình vẫn hài lòng với PHP 7.4 trên WordPress, nên tạo 1 file cài đặt riêng, đỡ phải gõ nhiều dòng lệnh

Cài đặt dựa theo phiên bản Webinoly v1.17.4, để tránh các vấn đề tác giả cập nhập, gây xung đột hay các lỗi phát sinh, mình đã kéo nó về github cá nhân và chỉnh sửa từ đây luôn cho chắc kèo 😛

Cài đặt

Để chạy Webinoly thì hệ điều hành yêu cầu là Ubuntu, thông dụng thì dùng bản v22.04

  • Cập nhập OS và khởi động lại hệ thống
sudo apt update && sudo apt upgrade -y && sudo reboot

Để đảm bảo cho việc cài đặt ban đầu, đây là dòng code không thể bỏ đi được, vì các nhà cung cấp VPS, mỗi nơi họ lại dùng 1 file iso, không ai giống ai, không cập nhập đôi khi gây lỗi ….

Sau khi cập nhập xong thì khởi động lại hệ thống cho sạch sẽ toàn diện mọi thứ

  • Cài đặt Webinoly
sudo wget --no-check-certificate https://raw.githubusercontent.com/bibicadotnet/Webinoly-Optimization/master/webinoly74.sh -O webinoly_mod.sh && sudo chmod +x webinoly_mod.sh && sudo ./webinoly_mod.sh

Thời gian cài đặt bản Webinoly này khoảng < 3 phút trên VPS UpCloud, trên VPS Oracle miễn phí khoảng ~ 8 phút

Sau khi cài đặt xong, bạn sẽ thấy 1 số cảnh báo PHP 7.4 đã cũ và không nhận được các cập nhập liên quan tới bảo mật

[WARNING] You have an obsolete PHP version (7.4) installed that not even receive security updates!
(3) PHP Verification Test has some warning messages you should attend!

Vấn đề bảo mật cho PHP 7.4 thì mình không quan tâm lắm, chuyện đó để hãng lo 😀

Các chỉnh sửa so với Webinoly mặc định

  • Phiên bản cài đặt cụ thể:
PHP v7.4.33
MariaDB v10.11.4
Nginx v1.24.0
  • Cấu hình PHP
max_execution_time = 6000
max_input_time = 6000
max_input_vars = 5000
memory_limit = 512M
upload_max_filesize = 1000000M
max_file_uploads = 6000
post_max_size = 1000000M
disable_functions = 
[opcache]
opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=16
opcache.max_accelerated_files=100000
opcache.max_wasted_percentage=10

Cơ bản là không giới hạn cái gì trong các hàm của PHP 😀

  • Không cài đặt
Let’s Encrypt
Duply & Duplicity (Backups)
Postfix
Redis
Memcached
phpMyAdmin

Các addon tác giả lựa chọn sử dụng đều rất hữu ích, có điều mình không dùng, nên không cài đặt vào

  • Tùy chỉnh nhỏ:
File swap cố định 2GB
Chuyển về giờ Việt Nam Hồ Chí Minh
Tắt HTTP Authentication

Webinoly mặc định sử dụng HTTP Authentication để tạo 1 lớp password khi vào admin của WordPress, theo mình cũng rất hữu ích để bảo mật cho phần admin

Cá nhân mình không dùng, nên cũng set tắt đi, đỡ mất công mỗi lần tạo trang mới lại phải tắt thủ công

  • Xóa các Header
Referrer Policy Header successfully disabled!
HSTS Header successfully disabled!
Cache Control Header successfully disabled!
CSP Header successfully disabled!
Permissions Policy Header successfully disabled!
X-Robots-Tag Header successfully disabled!
X-XSS-Protection Header successfully disabled!
X-Content-Type-Options Header successfully disabled!
X-Frame-Options Header successfully disabled!

Lý thuyết thì các cấu hình trên header nó giúp trang bảo mật và giúp chống DDOS ở mức độ nào đó, có điều mình không có hứng lắm với mấy cái này, nên tắt hết cho sạch sẽ

  • Tắt firewall trên Ubuntu

Cá nhân mình không dùng firewall trên OS, muốn chặn gì thì chặn từ tầng ngoài, trước khi với server theo mình hiệu quả hơn, có điều mặc định trên Ubuntu của Oracle, họ set chặn tứ tung bên trong OS, nên tắt hẳn đi luôn cho nhẹ đầu 😀

Bản cài đặt Webinoly PHP 7.4 này mình setting riêng cho các VPS khoảng 1-2GB RAM, cụ thể là trên Oracle miễn phí 1GB RAM

Gần như giữ nguyên cấu hình của tác giả, bỏ đi các addon không dùng, tăng các giới hạn của PHP lên, chứ cũng không chỉnh sửa thêm gì 

Kiểm tra hiệu năng

  • Cài đặt 1 trang WordPress
site php74.haproxy.tech -wp

Do hiện tại mình dùng hoàn toàn qua SSL Cloudflare, nên đã xóa cài đặt Let’s Encrypt từ Webinoly

Nếu bạn tạo ssl qua lệnh site example.com -ssl=on, Webinoly cũng sẽ tự cài đặt Let’s Encrypt thêm vào

nano /etc/nginx/sites-available/php74.haproxy.tech
  • Chỉnh sửa lại đường dẫn tới file pem và key
server {
listen 80;
listen [::]:80;
server_name php74.haproxy.tech www.php74.haproxy.tech;
return 301 https://$host$request_uri;
}

server {
listen 443 ssl http2;
listen [::]:443 ssl http2; 
ssl_certificate /root/ssl/haproxy.tech.pem;
ssl_certificate_key /root/ssl/haproxy.tech.key;
ssl_protocols TLSv1.2 TLSv1.3;

    server_name php74.haproxy.tech;
    
    access_log off;
    error_log /var/log/nginx/php74.haproxy.tech.error.log;
    
    root /var/www/php74.haproxy.tech/htdocs;
        
    index index.php index.html index.htm;
    
    include common/auth.conf;
    
    # WebinolyCustom
    # WebinolyCustomEnd
    
    include common/php.conf;
    include common/wpcommon-noauth.conf;
    include common/locations.conf;
    include common/header.conf;
    include /var/www/php74.haproxy.tech/*-nginx.conf;
    include /etc/nginx/conf.d/*.conf.srv;
}
  • Chạy tiếp dòng bên dưới để reload lại nginx, để thay đổi có hiệu lực
nginx -t
service nginx reload

2023-06-27_13-01-27

Phần headers mặc định khá là sạch sẽ, không có gì dư thừa 😀

2023-06-27_13-02-52

Phần cứng hệ thống bình thường, không có gì đặc biệt

2023-06-27_13-06-30

Hoang mang nhất có lẽ là tốc độ và độ chịu tải, một trong các lý do mình cài đặt thử nghiệm trên VPS UpCloud cũng là vì mình luôn dùng VPS UpCloud để làm điểm chuẩn

Trên bản Webinoly trước đây, cài đặt mặc định, WordPress mặc định, ở 100 kết nối mỗi giây, tốc độ trung bình ~5.1s, mà ở bản này nó xuống được tới ~3.5s

Con số tốt nhất trong tất cả các script cài đặt VPS mà mình từng thử nghiệm

Khá hoang mang nên quyết định reboot lại VPS, chạy lại bài test loader.io 😀

2023-06-27_13-15-34

Đúng là nó xuống ~ 3.5s thật, thử thêm vài lần, đều duy trì ổn định 100 kết nối mỗi giây mà thời gian trung bình loanh quanh 3.5s 😀

Tạm thì chưa rõ do bản Webinoly v1.17.4 tác giả tối ưu quá tốt hay do VPS UpCloud mới được nâng cấp sức mạnh, hay lý do nhảm ruồi là cấu hình mình sử dụng tình cờ nó phù hợp với setting mặc định của WordPress =))

Thời gian tới nếu chạy code mà kiếm được con Oracle Japan VM.Standard.A1.Flex thì mình sẽ chuyển thèng bibica.net về bản Webinoly này 😀


Related Posts

Chính sách bình luận: Chúng tôi rất trân trọng các bình luận của bạn và cảm ơn thời gian bạn dành để chia sẻ ý tưởng và phản hồi.
Ghi chú: Những bình luận được xác định là spam hoặc chỉ mang tính quảng cáo sẽ bị xóa.

• Để cải thiện trải nghiệm bình luận, chúng tôi khuyến khích bạn tạo một tài khoản Gravatar. Thêm avatar vào tài khoản Gravatar sẽ giúp bình luận của bạn dễ nhận diện hơn đối với các thành viên khác.

✂️ Sao chép và 📋 Dán Emoji 💪 giúp bình luận thêm sinh động và thú vị!