HocVPS Script là 1 bash script chạy trên SSH sẽ tự động cài đặt tất cả các thành phần cần thiết nhất cho VPS với một dòng lệnh duy nhất.

Không như những Control Panel khác, HocVPS Script không hề sử dụng bất kỳ tài nguyên server (CPU, RAM) và không thể mắc lỗi bảo mật nào để hacker khai thác được nên các bạn có thể hoàn toàn yên tâm sử dụng.

Ngoài ra, webserver sẽ được tự động tối ưu cấu hình để đảm bảo có hiệu suất hoạt động tốt nhất, bảo mật nhất. Ngay cả những bạn mới làm quen với VPS cũng có thể quản lý VPS thông qua menu dòng lệnh đơn giản, gọi bằng lệnh hocvps

HocVPS Script sẽ tự động cài đặt:

  • Webserver Nginx bản mới nhất.
  • Database MariaDB bản mới nhất 10.0 (chính là MySQL được tối ưu).
  • PHP phiên bản mới nhất tùy chọn: PHP 7.3, PHP 7.2, PHP 7.1, PHP 7.0, PHP 5.6; đi kèm Zend OPcache
  • phpMyAdmin mới nhất.
  • eXtplorer mới nhất để quản lý File Manager, có thể tạo user, phân quyền riêng biệt.

Những tính năng đặc biệt:

  1. Thông tin cài đặt đơn giản, chỉ cần lựa chọn phiên bản PHP, tên miền chính và port admin là đủ.
  2. Sử dụng Nginx repo thay vì compile từ source như những script khác giúp việc cài đặt Nginx nhanh hơn, sau này có nâng cấp cũng dễ dàng hơn rất nhiều.
  3. Thay thế MySQL bằng MariaDB cho kịp xu hướng (đây là phiên bản cải tiến từ MySQL, hoạt động tương tự nhưng cho hiệu suất cao hơn MySQL; ngoài ra phiên bản mới nhất CentOS 7 chính thức đã hỗ trợ MariaDB).
  4. Tương thích với cả CentOS 6 và CentOS 7, cả 32bit lẫn 64bit chơi hết. Lưu ý chưa dùng được trên CentOS 8.
  5. Tùy chọn sử dụng cài đặt phiên bản PHP 7.3 (mới nhất), PHP 7.2, PHP 7.1, PHP 7.0, PHP 5.6.
  6. Có trình quản lý File Manager eXtplorer trực tiếp ngay trên web.
  7. Tự động cài đặt module Zend Opcache và có thể theo dõi status ngay trên web.
  8. Sử dụng được với cả domain www và non-www, tự động redirect giúp bạn.
  9. Update tự động cho Nginx, PHP, MariaDB.
  10. Theo dõi tình trạng server ngay trên web, có thể sử dụng mobile truy cập mọi nơi.
  11. Thay đổi port SSH mặc định từ 22 sang 2222 hạn chế SSH Brute Force Attack, kèm theo Fail2ban block IP ngay nếu phát hiện login sai 3 lần (áp dụng cả SSH và HocVPS Script Admin).
  12. Toàn bộ thông tin quản lý sẽ được lưu trong file text ở /root/hocvps-script.txt
  13. Tham khảo thêm tính năng mới trong Changelog.

Yêu cầu hệ thống:

  1. RAM: tối thiểu 512MB
  2. Nên tạo swap trước khi cài (nếu sử dụng ổ cứng SSD hoặc RAID10)

Trước khi tiến hành cài đặt, bạn cần nắm một số kiến thức căn bản trong bài Bắt đầu, chủ yếu là cách sử dụng ZOC Terminal kết nối SSH.

1. Cài đặt HocVPS Script

Đầu tiên các bạn cần chuẩn bị một VPS mới tinh bằng cách Reinstall hoặc Rebuild, sử dụng CentOS 6 hoặc CentOS 7, bản 32bit hoặc 64bit đều được. Nên sử dụng bản CentOS 7 x64 với PHP 7.3.

Kết nối SSH sử dụng ZOC Terminal hoặc Putty với tài khoản root. Nếu tài khoản không có quyền root cần cấp quyền bằng cách chạy lệnh sudo su.
Chạy lệnh sau để tiến hành cài đặt:

curl -sO https://hocvps.com/install && bash install
– Cài đặt xong, khi connect SSH VPS bạn hãy sử dụng port 2222, không dùng port 22!
– HocVPS Script không hoạt động trên VPS chỉ có IPv6 (gói $2.5 của Vultr)

***Nếu muốn cài đặt luôn WordPress, hãy tham khảo script tự động cài đặt HocVPS Script và WordPress.

***Học VPS có dịch vụ cài đặt VPS/Server, nếu không muốn mất thời gian bạn hãy sử dụng cho chuyên nghiệp.

Chuẩn bị quá trình cài đặt

Trong bước này bạn cần lựa chọn:

  1. Phiên bản PHP muốn sử dụng: nên dùng PHP 7.3, có hiệu suất gấp 3 lần so với phiên bản cũ 7.1.
  2. Tên miền chính sử dụng với VPS, có thể nhập có www hoặc không có www tùy mục đích sử dụng, script sẽ tự động redirect giúp bạn.
  3. Port admin quản lý server: là port bí mật (nằm trong khoảng 2000 – 9999, thay đổi được sau khi cài) dùng để:
    • Truy cập link quản trị, có dạng: http://domain.com:port/
    • Sử dụng phpMyAdmin, link dạng: http://domain.com:port/phpmyadmin/
    • Quản lý File Manager, link dạng: http://domain.com:port/filemanager/
    • Theo dõi tình trạng hệ thống, link dạng: http://domain.com:port/serverinfo/
    • Theo dõi tình trạng Zend Opcache, link dạng: http://domain.com:port/op.php

Sau đó, bạn cứ để cho script tự động thực hiện quá trình cài đặt, có thể mất từ 3 – 5 phút tùy cấu hình và network của VPS/Server.

Cuối cùng, nếu không có vấn đề gì xảy ra, bạn sẽ nhận được thông báo cài đặt thành công và thông tin quản lý VPS như bên dưới. Đồng thời, thông tin này cũng sẽ được lưu trong file text có đường dẫn /root/hocvps-script.txt để bạn xem lại sau này.

Vậy là server sẵn sàng để bạn sử dụng rồi đấy.

2. Sử dụng HocVPS Script

HocVPS Menu được sử dụng qua lệnh hocvps trên SSH Terminal.

Sau khi cài đặt xong HocVPS Script, bạn có thể sử dụng sFTP để quản lý File, upload code lên thư mục /home/domain.com/public_html/ đồng thời trỏ tên miền về IP VPS và bắt đầu sử dụng.
Lưu ý: Sau khi upload source lên thư mục web, các bạn sử dụng hocvps menu 14 Phân Quyền Webserver để Nginx đọc được nội dung website.

Nếu muốn kết nối SSH bạn hãy sử dụng port 2222.

Trong quá trình sử dụng, đang ở bất kỳ chức năng nào bạn cũng có thể nhấn Ctrl + C sẽ thoát khỏi Script ngay lập tức.

Bảo mật an toàn tuyệt đối

Mình luôn đặt vấn đề bảo mật và sự đơn giản lên hàng đầu nên từ phiên bản HocVPS Script v1.6 sẽ bổ sung thêm một lớp bảo mật nữa khi truy cập các link có chứa port. Bạn có thể thay đổi password này cho dễ nhớ hơn khi truy cập link quản trị http://domain.com:port/.

Username mặc định cho tất cả các tool là admin, password tự động sinh ra sau khi cài đặt xong server. Nếu bạn nhập sai thông tin quá 3 lần, IP sẽ tự động bị block trong 1h. Nâng thêm thời gian theo hướng dẫn này.


– Cloudflare CDN chặn truy cập qua port bất thường nên domain sử dụng CDN Cloudflare(đám mây vàng) cần tắt CDN để truy cập domain:port. Nếu không, chỉ truy cập qua ip:port
– Cài đặt xong HocVPS Script, các bạn nên thiết lập luôn Script backup tự động nhằm đảm bảo an toàn cho data và database.
– HocVPS Script hoạt động rất tốt với WordPress, Joomla, Magento, PrestaShop, Xenforo (đã trực tiếp test)

3. Bài viết hay liên quan đến HocVPS Script

  1. Reset password quản lý server HocVPS Script
  2. Rclone – Backup toàn bộ VPS lên Google Drive
  3. Cài đặt chứng chỉ Let’s Encrypt trên server HocVPS Script
  4. Hướng dẫn cài đặt chứng chỉ SSL trên Nginx
  5. Tự động cài đặt HocVPS Script và WordPress
  6. Script tự động tải và cài đặt WordPress trên VPS
  7. Hướng dẫn config VPS chịu tải lớn với HocVPS Script 4k3 online trên VPS 2GB RAM
  8. Cách xử lý lỗi: Couldn’t resolve host

4. Một số vấn đề có thể gặp phải

Trong file config.php bạn hãy chuyển:

$config['Database']['dbtype'] = 'mysql';

thành

$config['Database']['dbtype'] = 'mysqli';

rồi thêm đoạn sau vào: define('DISABLE_HOOKS', true);

1. Đối với phiên bản HocVPS Script hiện tại

Các bạn chỉ cần chạy menu “hocvps” rồi chọn option 15) Nang cap server. Toàn bộ quá trình nâng cấp sẽ được tự động thực hiện.

2. Đối với phiên bản HocVPS Script cũ

PHP

Để kiểm tra phiên bản PHP hiện tại bạn dùng lệnh php -v hoặc php-fpm -v

– Nếu bạn đang dùng PHP 5.4.x và muốn nâng cấp lên bản cao nhất (cùng là 5.4.x)

yum --enablerepo=remi update php\*

– Nếu bạn đang dùng PHP 5.4.x và muốn nâng cấp lên 5.5.x hoặc đang dùng 5.5.x và muốn nâng cấp lên bản cao nhất

yum --enablerepo=remi-php55,remi update php\*

Nginx

Để kiểm tra phiên bản Nginx đang sử dụng bạn dùng lệnh nginx -v hoặc nginx -V

Nâng cấp Nginx lên phiên bản mới nhất:

yum --enablerepo=remi-php55,remi update nginx\*

MySQL-MariaDB

Để kiểm tra phiên bản MariaDB đang sử dụng bạn dùng lệnh mysql -p

Nâng cấp MariaDB lên phiên bản mới nhất:

yum upgrade MariaDB-server MariaDB-client

phpMyAdmin

Bạn hãy xóa toàn bộ file + folder trong thư mục /home/maindomain.com/private_html/ bằng lệnh rm rồi tải script phpMyAdmin mới nhất giải nén vào thư mục này.

Xem thêm hướng dẫn cài đặt phpMyAdmin trên CentOS

Để bảo mật, khi server dùng HocVPS Script không website nào có thể chèn được IFRAME từ site của bạn.

Trong trường hợp cần dùng IFRAME, hãy mở file/etc/nginx/nginx.conf xóa dòng add_header X-Frame-Options SAMEORIGIN; và reload Nginx là được ngay nhé.

service nginx reload

Linode tự động kích hoạt IPv6 nên khi gửi mail tới Gmail sẽ bị lỗi với lệnh test:

echo "Subject: test" | /usr/lib/sendmail -v admin@gmail.com

Để gửi được mail, đơn giản bạn chỉ cần disable IPv6 đi là xong.


Mặc định, HocVPS Script đã mở các port cần thiết: SSH(2222), HTTP/HTTPS(80/443), HocVPS Admin… Tuy vậy, một số nhà cung cấp VPS (Google Cloud, Amazon…) có thiết lập tường lửa riêng bên ngoài VPS và mặc định chỉ cho phép port SSH(22) và HTTP(80). Như vậy, bạn cần mở port thủ công tại trang quản lý của nhà cung cấp
Đối với Google Cloud, tạo rule allow trong Networkdefault như hình dưới để áp dụng mặc định cho toàn bộ VPS trong tài khoản.

Đối với EC2, bạn chỉnh ở mục NETWORK&SECURITY - Security Groups - Inbound. Tương tự, bạn cần mở thủ công port HTTPS(443), FTP… nếu cần.
Tagged:

Comment của bạn

Lưu ý: tất cả comment đều được kiểm duyệt cẩn thận! Nếu có code bạn hãy up lên pastebin.com rồi để lại link trong comment.

7,992 Comments

  1. Hoang Duc Hanh 15 comment

    @Luân ơi trường hợp mà quên pass admin của cả hệ thống ở (nano /root/hocvps-script.txt ) thì mình làm cách nào reset vậy? Mình có sửa trong file hocvps-script nhưng ko được. Thanks

    1. Việt Phương Moderator

      Đối với HocVPS bạn chỉnh sửa trong /etc/php.d/00-hocvps-custom.ini nhé

  2. Nguyễn Văn Linh 1 comment

    cho em hoir chút, em có chạy
    [root@varnish ~]# mysql -u root -p
    Báo :ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: YES)
    admin có thể giúp em được không ?

    1. Việt Phương Moderator

      Bạn nhập mật khẩu gì cho tài khoản root? Còn ở HocVPS thiết lập sẵn thì chỉ cần mysql -u root thôi

  3. hung 5 comment

    m chuyển vps cài đặt hocvps , tầm nửa ngày sau thì CPU tăng vọt lên trên 100% , kiểm tra “top”thì thấy “php-fmp” load CPU rất nhiều , ai giúp m với, cam rơn , ảnh m chụp lại “top”: http://bit.ly/2T8ipPq

  4. Hiếu Trần 2 comment

    Mình cài hocvps trên OVH thì xuất hiện thư mục “centos” (Perms 700) ngang hàng với các thư mục domain.
    Không biết có bình thường không vì trước đây cài hocvps nhiều lần rồi thì ko thấy có thư mục này!

    1. Việt Phương Moderator

      Trên OVH hoặc GG Cloud là như thế. Đó là thư mục của user Linux

  5. Ethan 1 comment

    Chào Luân,

    Cám ơn Luân vì đã tạo ra một script rất tiện để sử dụng cho những người muốn dùng server riêng mà không rành như mình. Mình có một câu hỏi liên quan đến WP Super Cache và Nginx.

    Trước giờ cài xong WordPress và WP Super Cache thì mình chỉ chỉnh lại một vài option trong WPSC là xong, không để ý gì nhiều. Tuy nhiên hôm nay tìm hiểu tình cờ mình thấy EasyEngine họ còn chỉnh lại cả configs của Nginx cho WPSC nữa. https://easyengine.io/wordpress-nginx/tutorials/single-site/wp-super-cache

    Và tiếp tục google sâu hơn thì mình thấy một số bài viết nói rằng khi chỉnh như vậy trong Nginx thì WPSC sẽ cho hiệu năng tốt hơn đáng kể. Ví dụ như bài này http://www.geoffstratton.com/wordpress-optimizing-nginx-and-wp-super-cache

    Vậy mình muốn hỏi là họ chỉnh như vậy trong Nginx conf là cho tính năng gì của WPSC. Và với HocVPS thì làm như vậy có thể cải thiện được hiệu năng không?

    Ngoài ra mình hỏi thêm là giữa WPSC và Nginx FastCGI thì cái nào tốt hơn?

    1. Việt Phương Moderator

      1. Bạn đọc trong đó, có đề cập mà
      POST requests and urls with a query string should always go to PHP
      Don’t cache uris containing the following segments
      Don’t use the cache for logged in users or recent commenters
      Use cached or actual file if they exists, otherwise pass request to WordPress
      Cache static files for as long as possible
      2. HocVPS có cấu hình Nginx Conf tuy vậy không giống hoàn toàn bên EE. Tùy mục đích bạn có thể lựa chọn thêm bớt
      3. WPSC và Nginx FastCGI hoạt động khác nhau rồi nên ko so sánh mấy

  6. nam 6 comment

    chào , trang web mình bị lỗi “301 Moved Permanently

    nginx”

    mình tìm google mà ko khắc phục đc, mong bạn giúp đỡ.

    p/s : server đang chạy hocvps script. cám ơn

    1. Việt Phương Moderator

      Bạn restart Nginx chưa? Tình trạng Nginx như thế nào?
      Và cung cấp mình Nginx Conf của domain

      1. Nam 6 comment

        mình restart rồi, website khác chạy cùng trên VPS này vẫn hoạt động bt.

        đây bạn :

        GNU nano 2.3.1 File: /etc/nginx/conf.d/domain.com.conf

        server {
        listen 443 ssl;
        server_name http://www.domain.com;

        # SSL
        ssl_certificate /etc/letsencrypt/live/domain.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/domain.com/privkey.pem;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on;
        ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;

        rewrite ^(.*) https://domain.com$1 permanent;
        }
        server {
        listen 80;

        server_name domain.com http://www.domain;
        rewrite ^(.*) https://domain.com$1 permanent;
        }

        server {
        listen 443 ssl;

        # access_log off;
        access_log /home/domain.com/logs/access.log;
        # error_log off;
        error_log /home/domain.com/logs/error.log;

        root /home/domain.com/public_html;
        index index.php index.html index.htm;
        server_name domain.com;

        # SSL
        ssl_certificate /etc/letsencrypt/live/domain.com/fullchain.pem;
        [ Mark Unset ]
        ^G Get Help ^O WriteOut ^R Read File ^Y Prev Page ^K Cut Text ^C Cur Pos
        ^X Exit

  7. Hoàng Phụng 29 comment

    Hi admin, cho mình hỏi với!
    Khi sử dụng hosting cpanel, khi mình vào đường dẫn link folder trong website bên hosting nó hiển thị tất cả file có trong folder đó. Nhưng xài vps cài scrips thì nó báo 403 Forbidden. Không thấy được file nào trong folder. Admin có thể giúp mình khi vào đường dẫn folder nó hiển thị tất cả file ko ạ. Cám ơn admin .

  8. Văn 9 comment

    Chào Admin, mình có chạy 1 code wordpress cũ bằng hocvps thì bị lỗi “PHP của bạn không hỗ trợ MySQL, WordPress cần có MySQL để chạy”. Kiểm tra thì thấy php-mysql đã được cài bản mới nhất rồi.
    Mong bạn chỉ giáo. Xin cảm ơn.

      1. Văn 9 comment

        Mình đã thử tải bản wordpress mới thì nó chạy ổn, còn code cũ thì có nhiều chỉnh sửa trong đó sợ update lên bị lỗi. Cảm ơn bạn nhiều.

    1. Việt Phương Moderator

      Khó hơn bạn à. Và nhiều tác vụ sẽ cần thực hiện thủ công so với Hosting

  9. Thành 23 comment

    Mình đang xài hocvps và cảm thấy rất okie, bây giờ mình muốn tạo sub domain thì làm thế nào vậy ạ. Mình cảm ơn 🙂

    1. Việt Phương Moderator

      Nếu subdomain dùng source code riêng biệt với domain chính thì bạn coi nó là 1 website riêng biệt thôi, dùng menu hocvps 2)Them Website
      Còn nếu là cùng source code thì tùy source code bạn phải xử lý riêng

      1. Thành 23 comment

        Ví dụ domain gốc là xyz.com, thì thêm subdomain có phải là như thế này không ạ: hocvps -> 2) thêm Website -> abc.xyz.com ạ

  10. Tiến lê 1 comment

    từ ngày biết đến hocvps cài gì cũng lên tra cứu thành ra giờ hơi lười 😀 . nhiều lúc mấy cái lệnh cài trên server không nhớ được. cảm ơn hocvps

  11. Hoàng Lan 1 comment

    Dạo này hocvps không có bài mới vậy.
    Viết một series về server dành cho game server đi bạn ơi.
    Cách tối ưu vps để cắm chuột 😀

  12. Kha Trần 5 comment

    Cho em hỏi Vultr có cài wordpress chỉ vài click chuột như vậy là sao anh nhỉ. Cách hoạt động của cài wordpress như vậy khác gì so với cài hocvps này?

    1. Việt Phương Moderator

      Nó cũng sử dụng LEMP, tuy vậy mỗi bash script sẽ khác nhau. Như việc HocVPS khác VPSSIM

  13. Tân 7 comment

    Sau khi cài có cần cài đặt bảo mật gì ko bạn.
    Mình cài xong và chạy website bình thường. Nhưng sau một khoảng thời gian thì bị chèn rất nhiều file rác, giống như bị cài mã độc làm website ko chạy được nữa.

  14. Lương thị yên 3 comment

    Em có setup vps có tên miền là elearning.vnua.edu.vn băng hocvps script sau khi cài đặt xong thì có vào được admin khoảng 2-3 lần, nhưng từ đó k vào được nữa. ban đầu cổng admin là 6666 mình đổi lại lại công 2019 thì k được. Rất mong được hỗ trợ ạ. Em cảm ơn nhiều ạ

    1. Việt Phương Moderator

      Done. Case closed. Note: Vấn đề port đóng, ví dụ hocvps admin port.
      – Kiểm tra bên trong VPS: iptables, Fail2Ban, Nginx Conf của domain chính phần hocvps admin
      – Kiểm tra bên ngoài VPS: một số nhà cung cấp sẽ có tường lửa riêng bên ngoài VPS. Hoặc nếu bạn tự build VPS thì kiểm tra tường lửa của network

  15. Thành 15 comment

    Chào bạn , mình gặp lỗi này mong được giúp đỡ. Mình cài vps và kết nối mysql từ xa theo hướng dẫn, mình dùng private network ở vultr, đã kết nối thành công và chạy bình thường,
    nhưng cứ khởi động lại vps là cổng admin bị tắt, giờ làm thế nào để bật lên và lần sau ko bị vậy nhỉ

    1. Việt Phương Moderator

      Vậy bình thường bạn bật cổng admin như thế nào? Vì mình thấy Private Network cần cổng admin đâu nhỉ

  16. 3 comment

    AD cho mình hỏi sau khi mình cài đặt script, mình muốn đăng nhập vào SFTP, thì nhập
    user name là: admin
    password là: 004daecb11d1f877f

    Đúng không ạ, thanks.

    1. Việt Phương Moderator

      sFTP đăng nhập bằng tài khoản SSH nhé bạn. Tức là tài khoản đăng nhập VPS của bạn đó, account root

    2. Thành 43 comment

      Đăng nhập vào sFTP thì cũng giống như đăng nhập lúc chưa cài script thôi nhưng port đăng nhập thay vì 22 sẽ thành 2222

  17. Quân 1 comment

    Mình đã cài đặt xong tất cả nhưng khi truy cập địa chỉ IP của VPS để login quản lí lại không được
    báo lỗi “This site can’t be reached” (Không thể kết nối)
    Xin mọi người hướng giải quyết

    1. 3 comment

      Sau khi cài đặt script mình cũng không SSH được vào server bằng
      TK: admin
      password: 004daecb11d1f877f

      Mong ad hỗ trợ, thanks.

  18. hongvi 48 comment

    Xin chào em muốn chuyển trang từ https sang https://www. thì làm như thế nào.. em dùng script hocvps và đã cài ssl miễn phí từ bài viết của anh ạ. em cảm ơn

    1. Việt Phương Moderator

      Bạn làm ngược lại phần redirect và server_name so với hướng dẫn nhé. Trong bài viết mình cũng đề cập tác dụng của từng block rồi

  19. Phuc Nguyen 19 comment

    Mình vừa cài HocVPS trên VPS Vultr, mình chưa tùy chỉnh gì cả và gặp một số lỗi sau, mong bạn giúp đỡ

    – Khi truy cập vào mọi đường dẫn trên website, kể cả đường dẫn không tồn tại thì đều hiển thị nội dung trang chủ.

    – Không thể truy cập SSH sau khi restart server https://imgur.com/a/sRBTKWh

    1. Việt Phương Moderator

      1. Nếu website bạn chưa có gì hết thì các đường dẫn đều lỗi và show trang chủ
      2. Nếu bạn cố truy cập sau khi restart chưa xong thì sẽ dễ bị ban bởi Fail2Ban. Bạn kiểm tra lại nhé
      https://hocvps.com/cai-dat-fail2ban-tren-centos/
      Đăng nhập web console của Vultr để kiểm tra

  20. Hoàng 8 comment

    Mình đang sài hocvps cho vps 1gram 1core bây giờ vẫn vps đó mình nâng cấp lên 2g 2core thì update config hocvps như nào ạ

    1. Việt Phương Moderator

      Hiện tại bạn chỉ có phương án cài đặt lại VPS. Mong bạn thông cảm

  21. Ann 4 comment

    Không biết nâng cấp lên PHP 7.2 hay 7.3 sẽ tốt hơn, sợ addon nó đang tương thích với 7.1 mà upgrade lên php 7.2 hoặc 7.3 thì lại xảy ra lỗi @@
    Còn MariaDB thì nên để nguyên hay nên nâng cấp lên bản mới nhất nhỉ, mấy cái này chắc cũng nhiều người băn khoăn, ad trả lời giúp mình và mọi người với

    1. Phuc Nguyen 1 comment

      Bạn test tại localhost xem có bị lỗi không và khắc phục trước khi đưa lên VPS.

  22. Tuan 1 comment

    Mình chạy kiểm tra cập nhật thì chỉ thấy như vậy:

    ==================================================================
    Kiem Tra Cap Nhat
    ==================================================================
    Phien ban moi nhat:
    + Nginx: 1.12.2 (ban dang su dung 1.10.3)
    + PHP: 5.6.40 (ban dang su dung 5.6.30)
    + MariaDB: 5.5.63 (ban dang su dung 5.5.54)

    Sao mình ko thấy các version PHP 7 hay MariaDB 10 nhỉ?

    1. Việt Phương Moderator

      Chỉ cập nhật theo đúng dòng phiên bản nên sẽ từ 5.6.x chứ không thay đổi sang PHP7 nhé bạn. Để sử dụng PHP7 bạn cần cài lại
      Tương tự với MariaDB 10.

  23. Dung 5 comment

    Ad có thể tư vấn mình một chút chỗ này. Hiện tại website mình đang dùng có dư liệu hình ảnh và nội dung ngày càng nhiêu và mình đang muốn tối ưu CDN đẻ giảm thời gian load trang xuống. Mình dung VPS và cai hocvps dể quan trị. Nhưng khi kết nối thử CDN free của cloudfare thì website lại không hiển thị lên nội dung. Mình đang muốn nhơ tư vấn dùng hệ thống sao mà mình muốn dùng subdomain để chạy CDN trên nginx với ạ?

        1. Việt Phương Moderator

          VPS cài SSL và CF cài SSL thì bạn để SSL của CF là Full Strict chưa?

          1. Dũng 5 comment

            Thanks bạn. Mình cứ nghĩ dùng ssl của vps rồi thì không dùng cái bên kia nên để auto bên nó bị lỗi

  24. Tong 5 comment

    Chào hocvps. Hiện tại mình đang sử dụng hocvpsscrip. Có sử dụng memcached cho w3total cache. Nay mình muốn cài thêm xcache trên centos 7. Xin admin cho em ý kiến có nên cài thêm không. Và xem trên hocvps.com thì em chưa thấy bài hướng dẫn cài xcache

    1. Việt Phương Moderator

      Xcache thì mình không rõ rồi, cũng lần đầu thấy người hỏi 🙂

  25. KP 2 comment

    Cho em hỏi cách nhốt user tại 1 thư mục /home/user chạy qua PHP-FPM hoặc suExec ạ? Tức là ngoài thao tác trên /home/user thì vô hiệu hóa hết quyền đọc ghi trên /usr /home /etc …

    1. Việt Phương Moderator

      Bạn thực hiện được qua SSH thôi. Còn việc kia thì bạn nghiên cứu thêm việc chạy lệnh SSH từ PHP
      execute ssh command via php

      1. KP 2 comment

        Giốg như cPanel để chống local attack bắt buộc phải kết hợp với suPHP ạ?

    1. Việt Phương Moderator

      Nếu subdomain có khác source code với domain chính thì bạn tạo như 1 website bình thường thôi, dùng hocvps menu 2)Them Website

      1. Tân 7 comment

        Cảm ơn bạn đã hỗ trợ.
        Mình đã tạo giống như bạn nói (thêm domain)
        Đã kiểm tra ip mà subdomain trả về đúng ip server
        Nhưng nó không hiện nội dung của file index.html trong public_html mà tự chuyển sang các trang quảng cáo khác (trong thư mục public_html chỉ chứa một file index.html đơn giản)
        Mong bạn chỉ giúp

        1. Việt Phương Moderator

          service nginx status
          systemctl status nginx -l
          nginx -t
          Của bạn ra kết quả như thế nào?

          1. Tân 7 comment

            Kết quả khi chạy 3 lệnh trên đây bạn :

            Redirecting to /bin/systemctl status nginx.service
            * nginx.service – nginx – high performance web server
            Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
            Active: active (running) since Mon 2019-01-21 10:55:42 +07; 6h ago
            Docs: http://nginx.org/en/docs/
            Process: 458 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf (code=exited, status=0/SUCCESS)
            Main PID: 471 (nginx)
            CGroup: /system.slice/nginx.service
            |- 471 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
            |-2895 nginx: worker process
            `-2896 nginx: worker process

            nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
            nginx: configuration file /etc/nginx/nginx.conf test is successful

          2. Việt Phương Moderator

            Nginx check vẫn bình thường. Vậy domain với subdomain của bạn là gì

          3. Tân 7 comment

            Domain chính; quangnammedia.com
            Subdomain: tuyendung.quangnammedia.com

            Bạn xem giúp mình với nhé

          4. Việt Phương Moderator

            Như vậy site chính trong VPS là quangnammedia.com
            Còn tuyendung.quangnammedia.com không show nội dung site chính mà 1 nội dung file html, như dưới.
            This is a heading
            This is a paragraph.
            Bạn kiểm tra source code trong tuyendung.quangnammedia.com có file nội dung như vậy không

          5. Tân 7 comment

            Mình cần subdomain: tuyendung.quangnammedia.com hiển thị nội dung trong thư mục riêng home/tuyendung.quangnammedia.com/public_html.
            Trong đó có 1 file index.html hiển thị nội dung là:
            This is a heading
            This is a paragraph.
            Nhưng mình gõ trên trình duyệt thì nó lỗi không thể truy cập trang web này hoặc chuyển hướng sang : https://mp3.zing.vn/?popup_vtl=1

            Mình đã dùng trình duyệt với người dùng khác và đã ẩn danh.

          6. Tân 7 comment

            Cảm ơn bạn đã hỗ trợ nhé.
            Nó đã chạy được rồi.
            Hôm qua chắc do cache mạng hay gì gì đó liên quan đến mạng, modem

  26. Hieu 15 comment

    Mình muốn crobjob cái phân quyền webserver thì làm thế nào? Cảm ơn nhiều!

    1. Việt Phương Moderator

      Bạn thêm cronjob với các lệnh sau. Thời gian tùy mục đích
      /bin/chown -R nginx:nginx /home/*/public_html
      /bin/chown -R nginx:nginx /home/*/private_html
      /bin/chown -R nginx:nginx /var/lib/php

  27. Tuấn 2 comment

    Hi VP,
    Mình vô http://domain.com/wp-includes/js/tinymce/wp-tinymce.php bị lỗi 404 Not Found
    (nginx) hoặc tải nguyên file này về (như mình nói trên)
    Mà Wp phải load đc file này ở js:
    [code]<script type=’text/javascript’ src=’http://domain.com/wp-includes/js/tinymce/wp-tinymce.php?c=1&amp;ver=4800-20180716-tadv-4.7.11′></script>[/code]

    Rõ là lỗi này do cấu hình server mà. Ko rõ lỗi từ đâu nữa, mình dùng HocVPS Script v1.7 trên digitalOcean, có 2 con vps đều lỗi tất cả các trang web cài trên 2 vps này.

    Bạn có đề xuất gì ko?
    Thanks!

    1. Việt Phương Moderator

      1. Cho mình kết quả của ls -al /home/domain.com/public_html/wp-includes/js/tinymce/wp-tinymce.php
      2. Bạn check tinyMCE có tương thích với phiên bản WP đang sử dụng không?

  28. ngoc duc 1 comment

    mình cài hocvps lên vps mà truy cập không được
    mình đả mở all port rồi

    1. Việt Phương Moderator

      1. Bạn truy cập qua port 2222 chứ?
      2. Bạn dùng VPs của nhà cung cấp nào? Bạn đã truy cập qua web console chưa?

  29. Thành 43 comment

    Sang năm 2019 rồi mong AD update script cài đặt với php 7.3 và update thêm script auto cài wordpress 4.9.9 thay vì 5.x.x vì hiện tại mà cài server mới mà dùng script thì mặc định sẽ là cài wordpress 5.x.x chưa tương thích với khá nhiều plugin ạ

  30. Nguyễn Xuân Ánh 1 comment

    Mình có 1 vài đề xuất update
    1.Cho phép custom port 2222 mặc định ( hiển thị tối thiểu cho phép,tối đa cho phép)
    2. Port cho phần private html mặc định là năm install ví dụ bây giờ là 2019 cũng nên để số min và số max, sơ ý điền số lớn quá là về mặc định
    3.Nâng cấp MariaDB lên phiên bản mới hơn

    1. Việt Phương Moderator

      Điểm 1 – 3 mình ghi nhận và sẽ cố gắng update trong thời gian tới
      Còn 2 thì đã có note trong bài viết hướng dẫn, còn trong script sẽ không để quá dài. Bài viết này đã là hướng dẫn sử dụng để các bạn dùng tốt nhất HocVPs rồi

  31. Tuấn 1 comment

    Xin chào, vps mình có cài hocvps. Sau khi nâng cấp wp 5.0.2 gặp lỗi editor (trắng tinh), thấy rất nhiều lỗi javascript ko biết vì sao. (mình copy ở dưới)
    Nếu vào trực tiếp đường dẫn: http://domain.com/wp-includes/js/tinymce/wp-tinymce.php nó download cả file nội dung php wp-tinymce.php về luôn o_0. ko phải nội dung javascript.
    Giúp mình nhé! Thanks

    + Nginx: 1.14.2 (ban dang su dung 1.14.2)
    + PHP: 7.0.33 (ban dang su dung 7.0.33)
    + MariaDB: 5.5.62 (ban dang su dung 5.5.62)


    JQMIGRATE: Migrate is installed, version 1.4.1 load-scripts.php:9:542
    ReferenceError: _ is not defined[Learn More] post-new.php:94:1
    Lỗi này tại dòng: window.lodash = _.noConflict();
    ReferenceError: moment is not defined[Learn More] post-new.php:101:1
    Lỗi này tại dòng: moment.locale()
    ReferenceError: wp is not defined[Learn More] post-new.php:105:84
    Lỗi này tại dòng: wp.apiFetch.use()
    ReferenceError: wp is not defined[Learn More] post-new.php:109:1
    ReferenceError: wp is not defined[Learn More] post-new.php:118:84
    ReferenceError: wp is not defined[Learn More] post-new.php:127:2
    ReferenceError: wp is not defined[Learn More] post-new.php:134:84
    ReferenceError: mejs is not defined[Learn More] mediaelement-migrate.min.js:1:16
    TypeError: e is undefined[Learn More] en.js:3:111
    ReferenceError: mOxie is not defined[Learn More] plupload.min.js:1:1
    ReferenceError: yoastWebpackJsonp is not defined[Learn More] wp-seo-metabox-930.min.js:1:1
    TypeError: o is undefined[Learn More] rich-text.min.js:1:2799
    TypeError: c is undefined[Learn More] keycodes.min.js:1:3086
    TypeError: f is undefined[Learn More] data.min.js:1:9800
    TypeError: i is undefined[Learn More] element.min.js:1:3054
    Error: Minified React error #227; visit https://reactjs.org/docs/error-decoder.html?invariant=227 for the full message or use the non-minified dev environment for full errors and additional helpful warnings. react-dom.min.js:12:450
    TypeError: r is undefined[Learn More] components.min.js:19:103849
    TypeError: a is undefined[Learn More] load-scripts.php:702:6058
    ReferenceError: tinymce is not defined[Learn More] post-new.php:2605:1
    TypeError: o is undefined[Learn More] wp-seo-post-scraper-930.min.js:1:128080
    TypeError: wp.element is undefined[Learn More] wp-seo-help-center-930.min.js:1:10743
    Loading failed for the script with source “/wp-includes/js/tinymce/wp-tinymce.php?ver=4800-20180716”. post-new.php:114:1
    TypeError: j is undefined[Learn More] components-930.min.js:42:93512​

    1. Việt Phương Moderator

      Lỗi về source code này thì mình không rõ rồi. Thường ở việc không tương thích giữa plugin với source code. Bạn kiểm tra các plugin xem dev đã nâng cấp lên để phù hợp với WP phiên bản 5.0.2 chưa.
      Còn thường không tự sửa được nhiều. Check lỗi thì trong /home/domain_chính/logs các log về php-fpm

  32. Tâm 10 comment

    Chào admin.

    Sau khi mình cài hoàn tất xong rồi thì website lưu cache rất lâu. Mình vào phần reset cache mà nó cũng chưa nhận file mới. Có cách nào khắc phục vấn đề này không admin.

    Thanks admin.

    ps:// Mình không sử dụng wordpress.

    1. Việt Phương Moderator

      Bạn reset cả php-fpm cũng không hết lưu cache? Bạn có dùng cache ngoài như Cloudflare không?

  33. Trọng 5 comment

    chào các bạn và admin!
    web mình đã cài đặt hoàn thiện (dùng hocvps), đang chạy ngon lành không có sửa đổi gì nữa, đùng một cái tự nhiên không truy cập được nữa, cũng không truy cập được trang admin wordpress. web: https://haisanmoc.vn/
    Mình đã cố làm một số cách như sau:
    1/ Mình ping đến tên miền thì vẫn được
    2/ kiểm tra vps vultr thì thấy đang running
    3/ tên miền thấy “đang hoạt động”
    4/ tưởng lỗi ssl cài lại ssl rồi
    5/ Dùng Filezilla thì vẫn mở vào vps được
    Đã cố gắng mọi cách trên nhưng kiến thức còn hạn chế, mong các bạn và admin dành chút thời gian cho hướng giải quyết với ạ. Mình cảm ơn nhiều

      1. Trọng 5 comment

        1/ nginx -t kết quả là: nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok, nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
        2/ systemctl status nginx -l kết quả là:
        nginx.service – nginx – high performance web server
        Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
        Active: failed (Result: exit-code) since Mon 2018-12-31 16:29:27 +07; 1 day 16h ago
        Docs: http://nginx.org/en/docs/
        Process: 15447 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf (code=exited, status=1/FAILURE)

        Dec 31 16:29:27 xxxxx systemd[1]: Starting nginx – high performance web server…
        Dec 31 16:29:27 xxxxx nginx[15447]: [97B blob data]
        Dec 31 16:29:27 xxxxx systemd[1]: nginx.service: control process exited, code=exited status=1
        Dec 31 16:29:27 xxxxx systemd[1]: Failed to start nginx – high performance web server.
        Dec 31 16:29:27 xxxxx systemd[1]: Unit nginx.service entered failed state.
        Dec 31 16:29:27 xxxxx systemd[1]: nginx.service failed.
        Mong admin và các bạn cho cách giải quyết và nguyên nhân bị như vậy để mình tránh về sau với. Thanks admin đã trả lời

        1. Việt Phương Moderator

          Active: failed thì Nginx bạn đang tắt rồi. Bạn bật lên đi
          service nginx start
          Không được nữa thì gửi VPS qua support@hocvps.com mình xem cho

          1. Trọng 5 comment

            Mình service nginx start thì ra kết quả như sau:
            Redirecting to /bin/systemctl start nginx.service
            Job for nginx.service failed because the control process exited with error code. See “systemctl status nginx.service” and “journalctl -xe” for details.
            Mình tiếp tục làm theo hướng dẫn là “journalctl -xe” thì ra kết quả như sau:
            — Unit user-0.slice has begun starting up.
            Jan 02 09:13:05 haisan systemd[1]: Started Session 157 of user root.
            — Subject: Unit session-157.scope has finished start-up
            — Defined-By: systemd
            — Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel

            — Unit session-157.scope has finished starting up.

            — The start-up result is done.
            Jan 02 09:13:05 haisan systemd-logind[422]: New session 157 of user root.
            — Subject: A new session 157 has been created for user root
            — Defined-By: systemd
            — Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
            — Documentation: http://www.freedesktop.org/wiki/Software/systemd/multiseat

            — A new session with the ID 157 has been created for the user root.

            — The leading process of the session is 19539.
            Jan 02 09:13:05 haisan sshd[19539]: pam_unix(sshd:session): session opened for user root by (uid=0)
            Jan 02 09:13:05 haisan systemd[1]: Starting Session 157 of user root.
            — Subject: Unit session-157.scope has begun start-up
            — Defined-By: systemd
            — Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel

            — Unit session-157.scope has begun starting up.
            Jan 02 09:13:11 haisan polkitd[394]: Registered Authentication Agent for unix-process:19556:47604220 (system bus name :1.346 [/usr/bin/pkttyagent –notify-fd 5 –fallback], object path /org/fr
            Jan 02 09:13:11 haisan systemd[1]: Starting nginx – high performance web server…
            — Subject: Unit nginx.service has begun start-up
            — Defined-By: systemd
            — Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel

            — Unit nginx.service has begun starting up.
            Jan 02 09:13:11 xxxxx nginx[19572]: [97B blob data]
            Jan 02 09:13:11 xxxxx systemd[1]: nginx.service: control process exited, code=exited status=1
            Jan 02 09:13:11 xxxxx systemd[1]: Failed to start nginx – high performance web server.
            — Subject: Unit nginx.service has failed
            — Defined-By: systemd
            — Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel

            — Unit nginx.service has failed.

            — The result is failed.
            Jan 02 09:13:11 xxxxx systemd[1]: Unit nginx.service entered failed state.
            Jan 02 09:13:11 xxxxx systemd[1]: nginx.service failed.
            Jan 02 09:13:11 xxxxx polkitd[394]: Unregistered Authentication Agent for unix-process:19556:47604220 (system bus name :1.346, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, loc
            lines 3791-3835/3835 (END)

          2. Việt Phương Moderator

            Nginx không start được. Lỗi có vẻ liên quan nginx[15447]: [97B blob data]
            Bạn kiểm tra thêm log trong /home/domain_chính/logs/ (các log về nginx) để phán định thêm vấn đề
            Chứ thông tin đó mình không đủ phán đoán

          3. Trọng 5 comment

            Mình gửi VPS qua Admin xem giúp mình với. Và nếu được chỉ cho mình nguyên nhân để mình tránh về sau với. Thanks Admin đã rep nhiệt tình

          4. Việt Phương Moderator

            Note về nginx[15447]: [97B blob data]
            Khi tạo domain bằng HocVPS menu mà lỗi kí tự (vd gõ tiếng việt) thì ngoài việc xóa trong /home còn phải xóa cả trong /etc/nginx/conf.d
            Tên file lỗi khiến Nginx không đọc được –> không thể start

          5. Trọng 5 comment

            Định lên đây note lại cho những bạn nào cần, mà Admin đã note lại rồi, các bạn chú ý khi nhập tên miền nhé