{"id":43101,"date":"2026-08-10T13:57:10","date_gmt":"2026-08-10T06:57:10","guid":{"rendered":"https:\/\/interdata.vn\/blog\/?p=43101"},"modified":"2026-08-10T13:57:10","modified_gmt":"2026-08-10T06:57:10","slug":"cach-cai-dat-nextcloud-tren-vps","status":"publish","type":"post","link":"https:\/\/interdata.vn\/blog\/cach-cai-dat-nextcloud-tren-vps\/","title":{"rendered":"C\u00e1ch C\u00e0i \u0110\u1eb7t Nextcloud Tr\u00ean VPS Ubuntu &#8211; Docker AIO &#038; LEMP &#8211; H\u01b0\u1edbng D\u1eabn T\u1eebng B\u01b0\u1edbc"},"content":{"rendered":"<p style=\"text-align: justify;\"><span style=\"font-size: 100%;\"><strong>C\u00e1ch c\u00e0i \u0111\u1eb7t Nextcloud<\/strong> tr\u00ean <a href=\"https:\/\/interdata.vn\/blog\/vps-la-gi\/\">VPS<\/a> l\u00e0 b\u01b0\u1edbc \u0111\u1ea7u ti\u00ean \u0111\u1ec3 b\u1ea1n s\u1edf h\u1eefu h\u1ec7 th\u1ed1ng l\u01b0u tr\u1eef \u0111\u00e1m m\u00e2y ri\u00eang, thay th\u1ebf Google Drive hay Dropbox m\u00e0 kh\u00f4ng ph\u1ee5 thu\u1ed9c b\u00ean th\u1ee9 ba. B\u00e0i vi\u1ebft n\u00e0y t\u1eeb <a href=\"https:\/\/interdata.vn\/\">InterData<\/a> h\u01b0\u1edbng d\u1eabn t\u1eebng b\u01b0\u1edbc \u2014 t\u1eeb chu\u1ea9n b\u1ecb VPS, ch\u1ecdn ph\u01b0\u01a1ng ph\u00e1p c\u00e0i \u0111\u1eb7t \u0111\u1ebfn c\u1ea5u h\u00ecnh production \u2014 \u0111\u1ec3 b\u1ea1n t\u1ef1 tri\u1ec3n khai Nextcloud ngay c\u1ea3 khi ch\u01b0a c\u00f3 kinh nghi\u1ec7m qu\u1ea3n tr\u1ecb server.<\/span><\/p>\n<div style=\"background-color: #eff6ff; padding: 20px; border: 1.5px solid #BFDBFE; border-radius: 12px; margin-bottom: 40px; box-shadow: 0 8px 20px rgba(37,99,235,0.05);\">\n<p style=\"font-family: 'Be Vietnam Pro', sans-serif; font-weight: bold; font-size: 18px; margin: 0 0 15px; color: #1e3a8a;\">N\u1ed8I DUNG B\u00c0I VI\u1ebeT<\/p>\n<ul style=\"list-style-type: none; padding-left: 0; margin: 0;\">\n<li style=\"margin-bottom: 10px;\"><a style=\"text-decoration: none; color: #2563eb; font-weight: bold;\" href=\"#section1\">1. Nextcloud l\u00e0 g\u00ec? V\u00ec sao n\u00ean t\u1ef1 host thay Google Drive<\/a><\/li>\n<li style=\"margin-bottom: 10px;\"><a style=\"text-decoration: none; color: #2563eb; font-weight: bold;\" href=\"#section2\">2. Y\u00eau c\u1ea7u h\u1ec7 th\u1ed1ng \u0111\u1ec3 c\u00e0i \u0111\u1eb7t Nextcloud tr\u00ean VPS<\/a><\/li>\n<li style=\"margin-bottom: 10px;\"><a style=\"text-decoration: none; color: #2563eb; font-weight: bold;\" href=\"#section3\">3. So s\u00e1nh 2 ph\u01b0\u01a1ng ph\u00e1p c\u00e0i \u0111\u1eb7t Nextcloud: Docker AIO vs c\u00e0i tay LEMP<\/a><\/li>\n<li style=\"margin-bottom: 10px;\"><a style=\"text-decoration: none; color: #2563eb; font-weight: bold;\" href=\"#section4\">4. C\u00e1ch c\u00e0i \u0111\u1eb7t Nextcloud b\u1eb1ng Docker All-in-One (AIO)<\/a><\/li>\n<li style=\"margin-bottom: 10px;\"><a style=\"text-decoration: none; color: #2563eb; font-weight: bold;\" href=\"#section5\">5. C\u00e1ch c\u00e0i \u0111\u1eb7t Nextcloud t\u1eeb source tr\u00ean LEMP Stack (Nginx + PHP + MariaDB)<\/a><\/li>\n<li style=\"margin-bottom: 10px;\"><a style=\"text-decoration: none; color: #2563eb; font-weight: bold;\" href=\"#section6\">6. C\u1ea5u h\u00ecnh sau c\u00e0i \u0111\u1eb7t: SSL, trusted domain, PHP tuning, cron<\/a><\/li>\n<li style=\"margin-bottom: 10px;\"><a style=\"text-decoration: none; color: #2563eb; font-weight: bold;\" href=\"#section7\">7. L\u1ed7i th\u01b0\u1eddng g\u1eb7p khi c\u00e0i \u0111\u1eb7t Nextcloud v\u00e0 c\u00e1ch x\u1eed l\u00fd<\/a><\/li>\n<li style=\"margin-bottom: 10px;\"><a style=\"text-decoration: none; color: #2563eb; font-weight: bold;\" href=\"#section8\">8. Ch\u1ecdn VPS hay Cloud Server \u0111\u1ec3 ch\u1ea1y Nextcloud?<\/a><\/li>\n<li style=\"margin-bottom: 10px;\"><a style=\"text-decoration: none; color: #2563eb; font-weight: bold;\" href=\"#section-faq\">9. C\u00e2u h\u1ecfi th\u01b0\u1eddng g\u1eb7p (FAQ)<\/a><\/li>\n<\/ul>\n<\/div>\n\n\n<style>\n.interdata-plan-carousel,.interdata-plan-carousel *{box-sizing:border-box}\n.interdata-plan-carousel{--blue:#005bea;--blue-dark:#004dcc;--text:#071832;--muted:#516173;--border:#d8e6fb;--bg:#f3f8ff;--shadow:0 5px 14px rgba(0,62,145,.08);background:var(--bg);padding:14px 56px 18px;position:relative;overflow:hidden;border-radius:20px;}\n.interdata-carousel-heading{color:#f00;font-family:Roboto,sans-serif;font-size:18px;line-height:1.35;font-weight:800;text-align:center;margin:0 0 14px}\n.interdata-plan-viewport{overflow:hidden;width:100%}\n.interdata-plan-track{display:flex;align-items:stretch;gap:12px;overflow:visible;padding:0 0 4px;transform:translate3d(0,0,0);transition:transform .45s ease;will-change:transform;touch-action:pan-y}\n.interdata-plan-card{flex:0 0 calc((100% - 24px)\/3);min-width:0;min-height:0!important;height:auto;background:#fff;border:1px solid var(--border);border-radius:8px;padding:15px 12px 13px;display:flex;flex-direction:column;box-shadow:var(--shadow)}\n.interdata-plan-title{color:var(--blue-dark);font-size:16px;line-height:1.22;font-weight:800;text-align:center;margin:0 0 7px;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\n.interdata-plan-price{color:var(--blue-dark);font-size:24px;line-height:1;font-weight:900;text-align:center;margin-bottom:12px;white-space:nowrap;letter-spacing:0}\n.interdata-plan-price span{font-size:10px;font-weight:800;margin-left:2px}\n.interdata-plan-badge{align-self:center;display:inline-flex;align-items:center;justify-content:center;background:#ff3934;color:#fff;border-radius:5px;padding:7px 8px;font-size:9px;line-height:1;font-weight:800;margin-bottom:15px;white-space:nowrap;max-width:100%}\n.interdata-plan-features{list-style:none!important;padding:0!important;margin:0!important}\n.interdata-plan-features li{display:flex;gap:7px;align-items:flex-start;color:var(--text);font-size:12px;line-height:1.35;font-weight:700;text-align:left;margin:0 0 10px!important;padding:0!important}\n.interdata-plan-icon{width:14px;min-width:14px;height:14px;color:#0069ff;margin-top:2px}\n.interdata-plan-icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}\n.interdata-plan-spacer{flex:1;min-height:16px}\n.interdata-plan-button{display:flex;align-items:center;justify-content:center;min-height:42px;width:100%;margin-top:auto!important;margin-bottom:0!important;background:var(--blue);color:#fff!important;border-radius:5px;font-size:13px;font-weight:800;text-decoration:none!important;box-shadow:0 7px 14px rgba(0,91,234,.24);transition:transform .2s ease,background .2s ease}\n.interdata-plan-button:hover{background:var(--blue-dark);color:#fff!important;transform:translateY(-1px)}\n.interdata-carousel-arrow{position:absolute;top:50%;z-index:5;width:44px;height:54px;border:2px solid #fff!important;border-radius:999px;background:var(--blue)!important;color:#fff!important;box-shadow:0 8px 22px rgba(0,62,145,.32);display:flex!important;align-items:center;justify-content:center;cursor:pointer;transform:translateY(-35%);transition:background .2s ease,color .2s ease,opacity .2s ease,transform .2s ease}\n.interdata-carousel-arrow:hover{background:var(--blue-dark)!important;color:#fff!important;transform:translateY(-35%) scale(1.04)}\n.interdata-carousel-arrow:disabled{opacity:.78;cursor:not-allowed;background:#8aa6cf!important;color:#fff!important}\n.interdata-carousel-arrow:disabled:hover{background:#8aa6cf!important;color:#fff!important;transform:translateY(-35%)}\n.interdata-carousel-arrow svg{display:none!important}\n.interdata-carousel-arrow:before{content:none!important;display:none!important}\n.interdata-carousel-mark{display:block!important;color:#fff!important;font-family:Arial,Helvetica,sans-serif!important;font-size:38px!important;font-weight:900!important;line-height:1!important;text-align:center!important;pointer-events:none!important;transform:translateY(-2px)}\n.interdata-carousel-prev{left:14px}\n.interdata-carousel-prev .interdata-carousel-mark{margin-left:-2px}\n.interdata-carousel-next{right:14px}\n.interdata-carousel-next .interdata-carousel-mark{margin-right:-2px}\n@media (max-width:800px){.interdata-plan-carousel{padding:12px 44px 16px}.interdata-plan-card{flex-basis:calc((100% - 12px)\/2)}.interdata-carousel-heading{font-size:16px}.interdata-carousel-prev{left:6px}.interdata-carousel-next{right:6px}}\n@media (max-width:480px){.interdata-plan-carousel{padding:12px 38px 16px}.interdata-plan-card{flex-basis:100%}.interdata-plan-price{font-size:23px}.interdata-carousel-arrow{width:34px;height:44px}.interdata-carousel-mark{font-size:32px!important}.interdata-carousel-prev{left:3px}.interdata-carousel-next{right:3px}}\n<\/style>\n\n<div class=\"interdata-plan-carousel\" data-interdata-carousel>\n  <div class=\"interdata-carousel-heading\">Si\u00eau \u01afu \u0110\u00e3i VPS \/ CLOUD SERVER - Ti\u1ebft Ki\u1ec7m \u0110\u1ebfn 70%<\/div>\n\n  <svg width=\"0\" height=\"0\" style=\"position:absolute;visibility:hidden\" aria-hidden=\"true\">\n    <symbol id=\"id-icon-cpu\" viewBox=\"0 0 24 24\"><rect x=\"7\" y=\"7\" width=\"10\" height=\"10\" rx=\"2\"><\/rect><path d=\"M4 9h3M4 15h3M17 9h3M17 15h3M9 4v3M15 4v3M9 17v3M15 17v3\"><\/path><path d=\"M10 10h4v4h-4z\"><\/path><\/symbol>\n    <symbol id=\"id-icon-ram\" viewBox=\"0 0 24 24\"><rect x=\"4\" y=\"8\" width=\"16\" height=\"8\" rx=\"2\"><\/rect><path d=\"M7 16v2M11 16v2M15 16v2M19 16v2M7 11h1M11 11h1M15 11h1\"><\/path><\/symbol>\n    <symbol id=\"id-icon-storage\" viewBox=\"0 0 24 24\"><rect x=\"6\" y=\"3\" width=\"12\" height=\"18\" rx=\"2\"><\/rect><path d=\"M9 7h6\"><\/path><circle cx=\"12\" cy=\"16\" r=\"1.5\"><\/circle><\/symbol>\n    <symbol id=\"id-icon-network\" viewBox=\"0 0 24 24\"><path d=\"M5 12.5a10 10 0 0 1 14 0\"><\/path><path d=\"M8.5 16a5 5 0 0 1 7 0\"><\/path><path d=\"M12 19h.01\"><\/path><\/symbol>\n    <symbol id=\"id-icon-gift\" viewBox=\"0 0 24 24\"><rect x=\"3\" y=\"8\" width=\"18\" height=\"13\" rx=\"2\"><\/rect><path d=\"M12 8v13M3 12h18\"><\/path><path d=\"M7.5 8C6.1 8 5 6.9 5 5.5S6.1 3 7.5 3C10 3 12 8 12 8\"><\/path><path d=\"M16.5 8C17.9 8 19 6.9 19 5.5S17.9 3 16.5 3C14 3 12 8 12 8\"><\/path><\/symbol>\n  <\/svg>\n\n  <button class=\"interdata-carousel-arrow interdata-carousel-prev\" type=\"button\" aria-label=\"Xem 3 g\u00f3i tr\u01b0\u1edbc\" onclick=\"var r=this.closest('[data-interdata-carousel]');if(!r)return false;var t=r.querySelector('.interdata-plan-track'),c=t?t.querySelectorAll('.interdata-plan-card'):[];if(!t||!c.length)return false;var v=window.matchMedia('(max-width:480px)').matches?1:(window.matchMedia('(max-width:800px)').matches?2:3),m=Math.max(0,c.length-Math.min(v,c.length||1)),s=[],i=0;while(i&lt;m){s.push(i);i+=v}if(!s.length||s[s.length-1]!==m)s.push(m);var p=parseInt(r.getAttribute('data-inline-page')||'0',10);p=(p-1+s.length)%s.length;r.setAttribute('data-inline-page',p);var g=parseFloat(window.getComputedStyle(t).gap)||12,w=c[0].getBoundingClientRect().width;t.style.transition='transform .45s ease';t.style.transform='translate3d('+(-(w+g)*s[p])+'px,0,0)';return false;\">\n    <svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M15 18l-6-6 6-6\"><\/path><\/svg>\n    <span class=\"interdata-carousel-mark\" aria-hidden=\"true\">&#8249;<\/span>\n  <\/button>\n\n  <div class=\"interdata-plan-viewport\">\n    <div class=\"interdata-plan-track\">\n      <!-- 7 card d\u1ef1 ph\u00f2ng: JavaScript s\u1ebd \u0111\u1ed3ng b\u1ed9 l\u1ea1i t\u1eeb API portal khi trang t\u1ea3i. -->\n      <article class=\"interdata-plan-card\" data-plan-pid=\"490\">\n        <h3 class=\"interdata-plan-title\">Premium Base<\/h3>\n        <div class=\"interdata-plan-price\">299.000 \u0111<span>\/3 th\u00e1ng<\/span><\/div>\n        <div class=\"interdata-plan-badge\">GIA H\u1ea0N KH\u00d4NG \u0110\u1ed4I GI\u00c1<\/div>\n        <ul class=\"interdata-plan-features\">\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-cpu\"><\/use><\/svg><\/span>2 vCore Intel Xeon Scalable<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-ram\"><\/use><\/svg><\/span>2 GB <a href=\"https:\/\/interdata.vn\/blog\/ram-server\/\">RAM<\/a><\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-storage\"><\/use><\/svg><\/span>30 GB SSD NVMe<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>1 IPv4 Private<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>300Mbps Network Port<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>Unlimited Bandwidth<\/li>\n        <\/ul>\n\n        <a class=\"interdata-plan-button\" href=\"https:\/\/support.interdata.vn\/index.php?rp=\/store\/best-value-plans-2026\/best-value-plans-premium-base\" target=\"_blank\" rel=\"noopener\">\u0110\u0103ng k\u00fd ngay<\/a>\n      <\/article>\n\n      <article class=\"interdata-plan-card\" data-plan-pid=\"529\">\n        <h3 class=\"interdata-plan-title\">INTER PLATINUM 1<\/h3>\n        <div class=\"interdata-plan-price\">998.000 \u0111<span>\/n\u0103m<\/span><\/div>\n        <div class=\"interdata-plan-badge\">GIA H\u1ea0N KH\u00d4NG \u0110\u1ed4I GI\u00c1<\/div>\n        <ul class=\"interdata-plan-features\">\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-cpu\"><\/use><\/svg><\/span>2 vCore<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-ram\"><\/use><\/svg><\/span>3 GB RAM<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-storage\"><\/use><\/svg><\/span>30 GB SSD NVMe<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>1 IPv4 Private<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>300Mbps Network Port<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>Unlimited Bandwidth<\/li>\n        <\/ul>\n\n        <a class=\"interdata-plan-button\" href=\"https:\/\/support.interdata.vn\/index.php?rp=\/store\/inter-platinum-series-2026\/inter-platinum-1\" target=\"_blank\" rel=\"noopener\">\u0110\u0103ng k\u00fd ngay<\/a>\n      <\/article>\n\n      <article class=\"interdata-plan-card\" data-plan-pid=\"530\">\n        <h3 class=\"interdata-plan-title\">INTER PLATINUM 2<\/h3>\n        <div class=\"interdata-plan-price\">2.666.000 \u0111<span>\/n\u0103m<\/span><\/div>\n        <div class=\"interdata-plan-badge\">GIA H\u1ea0N KH\u00d4NG \u0110\u1ed4I GI\u00c1<\/div>\n        <ul class=\"interdata-plan-features\">\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-cpu\"><\/use><\/svg><\/span>5 vCore<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-ram\"><\/use><\/svg><\/span>8 GB RAM<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-storage\"><\/use><\/svg><\/span>70 GB SSD NVMe<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>1 IPv4 Private<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>300Mbps Network Port<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>Unlimited Bandwidth<\/li>\n        <\/ul>\n\n        <a class=\"interdata-plan-button\" href=\"https:\/\/support.interdata.vn\/index.php?rp=\/store\/inter-platinum-series-2026\/inter-platinum-2\" target=\"_blank\" rel=\"noopener\">\u0110\u0103ng k\u00fd ngay<\/a>\n      <\/article>\n\n      <article class=\"interdata-plan-card\" data-plan-pid=\"531\">\n        <h3 class=\"interdata-plan-title\">INTER PLATINUM 3<\/h3>\n        <div class=\"interdata-plan-price\">5.888.000 \u0111<span>\/n\u0103m<\/span><\/div>\n        <div class=\"interdata-plan-badge\">GIA H\u1ea0N KH\u00d4NG \u0110\u1ed4I GI\u00c1<\/div>\n        <ul class=\"interdata-plan-features\">\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-cpu\"><\/use><\/svg><\/span>9 vCore<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-ram\"><\/use><\/svg><\/span>16 GB RAM<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-storage\"><\/use><\/svg><\/span>140 GB SSD NVMe<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>1 IPv4 Private<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>300Mbps Network Port<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>Unlimited Bandwidth<\/li>\n        <\/ul>\n\n        <a class=\"interdata-plan-button\" href=\"https:\/\/support.interdata.vn\/index.php?rp=\/store\/inter-platinum-series-2026\/inter-platinum-3\" target=\"_blank\" rel=\"noopener\">\u0110\u0103ng k\u00fd ngay<\/a>\n      <\/article>\n\n      <article class=\"interdata-plan-card\" data-plan-pid=\"521\">\n        <h3 class=\"interdata-plan-title\">BD-Cloud 1<\/h3>\n        <div class=\"interdata-plan-price\">988.000 \u0111<span>\/n\u0103m<\/span><\/div>\n        <div class=\"interdata-plan-badge\">GIA H\u1ea0N KH\u00d4NG \u0110\u1ed4I GI\u00c1<\/div>\n        <ul class=\"interdata-plan-features\">\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-cpu\"><\/use><\/svg><\/span>3 vCore<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-ram\"><\/use><\/svg><\/span>3 GB RAM<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-storage\"><\/use><\/svg><\/span>30 GB SSD NVMe<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>1 IPv4 Private<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>300Mbps Network Port<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>Unlimited Bandwidth<\/li>\n        <\/ul>\n\n        <a class=\"interdata-plan-button\" href=\"https:\/\/support.interdata.vn\/index.php?rp=\/store\/best-plan-real-cloud\/bd-cloud-1\" target=\"_blank\" rel=\"noopener\">\u0110\u0103ng k\u00fd ngay<\/a>\n      <\/article>\n\n      <article class=\"interdata-plan-card\" data-plan-pid=\"522\">\n        <h3 class=\"interdata-plan-title\">BD-Cloud 2<\/h3>\n        <div class=\"interdata-plan-price\">2.988.000 \u0111<span>\/n\u0103m<\/span><\/div>\n        <div class=\"interdata-plan-badge\">GIA H\u1ea0N KH\u00d4NG \u0110\u1ed4I GI\u00c1<\/div>\n        <ul class=\"interdata-plan-features\">\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-cpu\"><\/use><\/svg><\/span>4 vCore<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-ram\"><\/use><\/svg><\/span>8 GB RAM<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-storage\"><\/use><\/svg><\/span>80 GB SSD NVMe<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>1 IPv4 Private<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>300 Mbps Network Port<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>Unlimited Bandwidth<\/li>\n        <\/ul>\n\n        <a class=\"interdata-plan-button\" href=\"https:\/\/support.interdata.vn\/index.php?rp=\/store\/best-plan-real-cloud\/bd-cloud-2\" target=\"_blank\" rel=\"noopener\">\u0110\u0103ng k\u00fd ngay<\/a>\n      <\/article>\n\n      <article class=\"interdata-plan-card\" data-plan-pid=\"523\">\n        <h3 class=\"interdata-plan-title\">BD-Cloud 3<\/h3>\n        <div class=\"interdata-plan-price\">5.999.000 \u0111<span>\/n\u0103m<\/span><\/div>\n        <div class=\"interdata-plan-badge\">GIA H\u1ea0N KH\u00d4NG \u0110\u1ed4I GI\u00c1<\/div>\n        <ul class=\"interdata-plan-features\">\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-cpu\"><\/use><\/svg><\/span>8 vCore<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-ram\"><\/use><\/svg><\/span>16 GB RAM<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-storage\"><\/use><\/svg><\/span>140 GB SSD NVMe<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>1 IPv4 Private<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>400 Mbps Network Port<\/li>\n          <li><span class=\"interdata-plan-icon\"><svg><use href=\"#id-icon-network\"><\/use><\/svg><\/span>Unlimited Bandwidth<\/li>\n        <\/ul>\n\n        <a class=\"interdata-plan-button\" href=\"https:\/\/support.interdata.vn\/index.php?rp=\/store\/best-plan-real-cloud\/bd-cloud-3\" target=\"_blank\" rel=\"noopener\">\u0110\u0103ng k\u00fd ngay<\/a>\n      <\/article>\n    <\/div>\n  <\/div>\n\n  <button class=\"interdata-carousel-arrow interdata-carousel-next\" type=\"button\" aria-label=\"Xem 3 g\u00f3i ti\u1ebfp theo\" onclick=\"var r=this.closest('[data-interdata-carousel]');if(!r)return false;var t=r.querySelector('.interdata-plan-track'),c=t?t.querySelectorAll('.interdata-plan-card'):[];if(!t||!c.length)return false;var v=window.matchMedia('(max-width:480px)').matches?1:(window.matchMedia('(max-width:800px)').matches?2:3),m=Math.max(0,c.length-Math.min(v,c.length||1)),s=[],i=0;while(i&lt;m){s.push(i);i+=v}if(!s.length||s[s.length-1]!==m)s.push(m);var p=parseInt(r.getAttribute('data-inline-page')||'0',10);p=(p+1)%s.length;r.setAttribute('data-inline-page',p);var g=parseFloat(window.getComputedStyle(t).gap)||12,w=c[0].getBoundingClientRect().width;t.style.transition='transform .45s ease';t.style.transform='translate3d('+(-(w+g)*s[p])+'px,0,0)';return false;\">\n    <svg viewBox=\"0 0 24 24\" aria-hidden=\"true\"><path d=\"M9 18l6-6-6-6\"><\/path><\/svg>\n    <span class=\"interdata-carousel-mark\" aria-hidden=\"true\">&#8250;<\/span>\n  <\/button>\n<\/div>\n\n<script>\n(function(){\n  var API_GROUPS=[\n    {url:'https:\/\/support.interdata.vn\/packages.php?gid=89&module',pids:[490]},\n    {url:'https:\/\/support.interdata.vn\/packages.php?gid=100&module',pids:[529,530,531]},\n    {url:'https:\/\/support.interdata.vn\/packages.php?gid=97&module',pids:[521,522,523]}\n  ];\n  var PLAN_CYCLES={\n    490:{key:'quarterly',label:'3 th\u00e1ng'},\n    529:{key:'annually',label:'n\u0103m'},\n    530:{key:'annually',label:'n\u0103m'},\n    531:{key:'annually',label:'n\u0103m'},\n    521:{key:'annually',label:'n\u0103m'},\n    522:{key:'annually',label:'n\u0103m'},\n    523:{key:'annually',label:'n\u0103m'}\n  };\n\n  function fetchPlanData(){\n    if(window.interdataPlanApiPromise)return window.interdataPlanApiPromise;\n\n    window.interdataPlanApiPromise=Promise.all(API_GROUPS.map(function(group){\n      return fetch(group.url,{method:'GET',mode:'cors',cache:'no-store'})\n        .then(function(response){\n          if(!response.ok)throw new Error('API '+response.status);\n          return response.json();\n        })\n        .then(function(data){\n          if(!data||data.success!==true||!Array.isArray(data.products))return [];\n          return data.products.filter(function(product){\n            return group.pids.indexOf(Number(product.pid))!==-1;\n          });\n        })\n        .catch(function(error){\n          console.warn('Kh\u00f4ng th\u1ec3 c\u1eadp nh\u1eadt nh\u00f3m g\u00f3i InterData:',group.url,error);\n          return [];\n        });\n    })).then(function(groups){\n      return groups.reduce(function(all,products){return all.concat(products);},[]);\n    });\n\n    return window.interdataPlanApiPromise;\n  }\n\n  function parseDescription(html){\n    var source=String(html||'')\n      .replace(\/<brs*\/?>\/gi,'n')\n      .replace(\/<\/(p|div|li)>\/gi,'n');\n    var holder=document.createElement('div');\n    holder.innerHTML=source;\n    var strong=holder.querySelector('strong');\n    var badge=strong?strong.textContent.trim():'';\n    var lines=(holder.textContent||'').split(\/r?n\/).map(function(line){\n      return line.trim();\n    }).filter(Boolean);\n    if(badge&&lines[0]===badge)lines.shift();\n    return {badge:badge,features:lines};\n  }\n\n  function iconForFeature(feature){\n    if(\/ram\/i.test(feature))return 'id-icon-ram';\n    if(\/ssd|nvme|storage|disk\/i.test(feature))return 'id-icon-storage';\n    if(\/vcore|vcpu|cpu|xeon|amd\/i.test(feature))return 'id-icon-cpu';\n    if(\/ipv4|network|mbps|gbps|bandwidth\/i.test(feature))return 'id-icon-network';\n    return 'id-icon-gift';\n  }\n\n  function createFeatureItem(feature){\n    var item=document.createElement('li');\n    var icon=document.createElement('span');\n    var svg=document.createElementNS('http:\/\/www.w3.org\/2000\/svg','svg');\n    var use=document.createElementNS('http:\/\/www.w3.org\/2000\/svg','use');\n    icon.className='interdata-plan-icon';\n    use.setAttribute('href','#'+iconForFeature(feature));\n    svg.appendChild(use);\n    icon.appendChild(svg);\n    item.appendChild(icon);\n    item.appendChild(document.createTextNode(feature));\n    return item;\n  }\n\n  function updateCardFromApi(root,product){\n    var pid=Number(product.pid);\n    var cycle=PLAN_CYCLES[pid];\n    var card=root.querySelector('[data-plan-pid=\"'+pid+'\"]');\n    if(!card||!cycle)return;\n\n    var title=card.querySelector('.interdata-plan-title');\n    var priceBox=card.querySelector('.interdata-plan-price');\n    var badgeBox=card.querySelector('.interdata-plan-badge');\n    var featureList=card.querySelector('.interdata-plan-features');\n    var button=card.querySelector('.interdata-plan-button');\n    var description=parseDescription(product.description);\n    var pricing=product.pricing&&product.pricing.VND;\n    var price=pricing?Number(pricing[cycle.key]):-1;\n\n    if(title&&product.name)title.textContent=product.name;\n    if(priceBox&&Number.isFinite(price)&&price>=0){\n      priceBox.textContent=Math.round(price).toLocaleString('vi-VN')+' \u0111';\n      var suffix=document.createElement('span');\n      suffix.textContent='\/'+cycle.label;\n      priceBox.appendChild(suffix);\n    }\n    if(badgeBox&&description.badge)badgeBox.textContent=description.badge;\n    if(featureList&&description.features.length){\n      featureList.textContent='';\n      description.features.forEach(function(feature){\n        featureList.appendChild(createFeatureItem(feature));\n      });\n    }\n    if(button&&product.product_url)button.href=product.product_url;\n  }\n\n  function setupInterDataCarousel(root){\n    var track=root.querySelector('.interdata-plan-track');\n    var prev=root.querySelector('.interdata-carousel-prev');\n    var next=root.querySelector('.interdata-carousel-next');\n    if(!track||!prev||!next||track.dataset.ready==='1')return;\n    track.dataset.ready='1';\n    prev.disabled=false;\n    next.disabled=false;\n    var activePage=0;\n    var touchStartX=null;\n\n    function visibleCards(){\n      if(window.matchMedia&&window.matchMedia('(max-width:480px)').matches)return 1;\n      if(window.matchMedia&&window.matchMedia('(max-width:800px)').matches)return 2;\n      return 3;\n    }\n\n    function pageStarts(){\n      var total=track.querySelectorAll('.interdata-plan-card').length;\n      var visible=Math.min(visibleCards(),total||1);\n      var maxStart=Math.max(0,total-visible);\n      var starts=[];\n      var start=0;\n      while(start<maxStart){\n        starts.push(start);\n        start+=visible;\n      }\n      if(!starts.length||starts[starts.length-1]!==maxStart)starts.push(maxStart);\n      return starts;\n    }\n\n    function renderSlide(animate){\n      var cards=track.querySelectorAll('.interdata-plan-card');\n      var starts=pageStarts();\n      if(!cards.length||!starts.length)return;\n      if(activePage>=starts.length)activePage=starts.length-1;\n      if(activePage<0)activePage=0;\n\n      var cardWidth=cards[0].getBoundingClientRect().width;\n      var trackStyle=window.getComputedStyle?window.getComputedStyle(track):null;\n      var gap=trackStyle?parseFloat(trackStyle.columnGap||trackStyle.gap):12;\n      if(!Number.isFinite(gap))gap=12;\n      if(cardWidth<=0)return;\n\n      track.style.transition=animate?'transform .45s ease':'none';\n      track.style.transform='translate3d('+(-(cardWidth+gap)*starts[activePage])+'px,0,0)';\n      prev.setAttribute('aria-disabled',starts.length>1?'false':'true');\n      next.setAttribute('aria-disabled',starts.length>1?'false':'true');\n    }\n\n    function move(direction){\n      var starts=pageStarts();\n      if(starts.length<=1)return;\n      activePage=parseInt(root.getAttribute('data-inline-page')||activePage,10)||0;\n      activePage=(activePage+direction+starts.length)%starts.length;\n      root.setAttribute('data-inline-page',activePage);\n      renderSlide(true);\n    }\n\n    track.addEventListener('touchstart',function(event){\n      touchStartX=event.touches&&event.touches[0]?event.touches[0].clientX:null;\n    },{passive:true});\n    track.addEventListener('touchend',function(event){\n      if(touchStartX===null)return;\n      var endX=event.changedTouches&&event.changedTouches[0]?event.changedTouches[0].clientX:touchStartX;\n      var distance=endX-touchStartX;\n      touchStartX=null;\n      if(Math.abs(distance)>=40)move(distance<0?1:-1);\n    },{passive:true});\n\n    function resetAfterResize(){\n      activePage=0;\n      root.setAttribute('data-inline-page','0');\n      renderSlide(false);\n    }\n\n    window.addEventListener('resize',resetAfterResize);\n    window.addEventListener('load',resetAfterResize);\n    if('ResizeObserver' in window){\n      var resizeObserver=new ResizeObserver(function(){renderSlide(false);});\n      resizeObserver.observe(root);\n    }\n    window.requestAnimationFrame(function(){renderSlide(false);});\n    window.setTimeout(function(){renderSlide(false);},250);\n    window.setTimeout(function(){renderSlide(false);},1000);\n\n    fetchPlanData().then(function(products){\n      products.forEach(function(product){updateCardFromApi(root,product);});\n      renderSlide(false);\n    });\n  }\n\n  function initInterDataCarousels(){\n    document.querySelectorAll('[data-interdata-carousel]').forEach(setupInterDataCarousel);\n  }\n\n  if(document.readyState==='loading'){\n    document.addEventListener('DOMContentLoaded',initInterDataCarousels);\n  }else{\n    initInterDataCarousels();\n  }\n\n  if('MutationObserver' in window){\n    var initQueued=false;\n    new MutationObserver(function(){\n      if(initQueued)return;\n      initQueued=true;\n      window.requestAnimationFrame(function(){\n        initQueued=false;\n        initInterDataCarousels();\n      });\n    }).observe(document.documentElement,{childList:true,subtree:true});\n  }\n})();\n<\/script>\n\n\t<div id=\"gap-1991453306\" class=\"gap-element clearfix\" style=\"display:block; height:auto;\">\n\t\t\n<style>\n#gap-1991453306 {\n  padding-top: 15px;\n}\n<\/style>\n\t<\/div>\n\t\n<p><!-- ========== SECTION 1 ========== --><\/p>\n<h2 id=\"section1\" style=\"color: #1e3a8a; font-size: 24px; font-weight: bold; text-align: left; border-left: 5px solid #2563EB; padding-left: 15px; margin: 40px 0 20px; line-height: 1.4;\">Nextcloud l\u00e0 g\u00ec? V\u00ec sao n\u00ean t\u1ef1 host thay Google Drive?<\/h2>\n<p style=\"text-align: justify;\">Nextcloud l\u00e0 n\u1ec1n t\u1ea3ng l\u01b0u tr\u1eef \u0111\u00e1m m\u00e2y m\u00e3 ngu\u1ed3n m\u1edf, cho ph\u00e9p b\u1ea1n d\u1ef1ng m\u1ed9t &#8220;Google Drive ri\u00eang&#8221; tr\u00ean ch\u00ednh <a href=\"https:\/\/interdata.vn\/blog\/vps-la-gi\/\">m\u00e1y ch\u1ee7 \u1ea3o VPS<\/a> c\u1ee7a m\u00ecnh. To\u00e0n b\u1ed9 file, l\u1ecbch, danh b\u1ea1 v\u00e0 t\u00e0i li\u1ec7u n\u1eb1m tr\u00ean server do b\u1ea1n ki\u1ec3m so\u00e1t \u2014 kh\u00f4ng qua b\u1ea5t k\u1ef3 b\u00ean th\u1ee9 ba n\u00e0o.<\/p>\n<p style=\"text-align: justify;\">So v\u1edbi Google Drive hay Dropbox, Nextcloud kh\u00e1c \u1edf ba \u0111i\u1ec3m c\u1ed1t l\u00f5i. M\u1ed9t: d\u1eef li\u1ec7u n\u1eb1m tr\u00ean server c\u1ee7a b\u1ea1n, kh\u00f4ng ai qu\u00e9t n\u1ed9i dung hay thay \u0111\u1ed5i ch\u00ednh s\u00e1ch l\u01b0u tr\u1eef. Hai: kh\u00f4ng gi\u1edbi h\u1ea1n dung l\u01b0\u1ee3ng \u2014 b\u1ea1n c\u00f3 bao nhi\u00eau \u1ed5 c\u1ee9ng th\u00ec d\u00f9ng b\u1ea5y nhi\u00eau. Ba: m\u00e3 ngu\u1ed3n m\u1edf, c\u1ed9ng \u0111\u1ed3ng l\u1edbn, c\u00f3 h\u1ec7 sinh th\u00e1i app m\u1edf r\u1ed9ng (Collabora Online, OnlyOffice, Talk, Calendar, Mail) bi\u1ebfn Nextcloud th\u00e0nh b\u1ed9 c\u00f4ng c\u1ee5 l\u00e0m vi\u1ec7c nh\u00f3m ho\u00e0n ch\u1ec9nh.<\/p>\n<p style=\"text-align: justify;\">Nextcloud Hub \u2014 phi\u00ean b\u1ea3n hi\u1ec7n t\u1ea1i \u2014 t\u00edch h\u1ee3p s\u1eb5n ch\u1ec9nh s\u1eeda t\u00e0i li\u1ec7u, h\u1ecdp video, qu\u1ea3n l\u00fd d\u1ef1 \u00e1n v\u00e0 AI assistant. \u0110\u00e2y kh\u00f4ng ch\u1ec9 l\u00e0 n\u01a1i ch\u1ee9a file m\u00e0 l\u00e0 workspace n\u1ed9i b\u1ed9 ch\u1ea1y tr\u00ean h\u1ea1 t\u1ea7ng ri\u00eang.<\/p>\n<p style=\"text-align: justify;\">V\u1edbi c\u00e1 nh\u00e2n, freelancer ho\u1eb7c doanh nghi\u1ec7p nh\u1ecf mu\u1ed1n ki\u1ec3m so\u00e1t d\u1eef li\u1ec7u v\u00e0 kh\u00f4ng mu\u1ed1n tr\u1ea3 ph\u00ed theo \u0111\u1ea7u ng\u01b0\u1eddi m\u1ed7i th\u00e1ng, t\u1ef1 host Nextcloud tr\u00ean VPS l\u00e0 ph\u01b0\u01a1ng \u00e1n h\u1ee3p l\u00fd nh\u1ea5t.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-43124\" src=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Nextcloud-la-gi.jpg\" alt=\"Nextcloud l\u00e0 g\u00ec\" width=\"700\" height=\"339\" title=\"\" srcset=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Nextcloud-la-gi.jpg 1000w, https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Nextcloud-la-gi-300x145.jpg 300w, https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Nextcloud-la-gi-768x372.jpg 768w\" sizes=\"auto, (max-width: 700px) 100vw, 700px\" \/><\/p>\n<p><!-- ========== SECTION 2 ========== --><\/p>\n<h2 id=\"section2\" style=\"color: #1e3a8a; font-size: 24px; font-weight: bold; text-align: left; border-left: 5px solid #2563EB; padding-left: 15px; margin: 40px 0 20px; line-height: 1.4;\">Y\u00eau c\u1ea7u h\u1ec7 th\u1ed1ng \u0111\u1ec3 c\u00e0i \u0111\u1eb7t Nextcloud tr\u00ean VPS<\/h2>\n<p style=\"text-align: justify;\">Tr\u01b0\u1edbc khi b\u1eaft tay c\u00e0i \u0111\u1eb7t, b\u1ea1n c\u1ea7n \u0111\u1ea3m b\u1ea3o VPS \u0111\u00e1p \u1ee9ng y\u00eau c\u1ea7u ph\u1ea7n c\u1ee9ng v\u00e0 ph\u1ea7n m\u1ec1m theo <a href=\"https:\/\/docs.nextcloud.com\/server\/stable\/admin_manual\/installation\/system_requirements.html\" target=\"_blank\" rel=\"noopener nofollow\">t\u00e0i li\u1ec7u ch\u00ednh th\u1ee9c Nextcloud<\/a>. B\u1ea3ng d\u01b0\u1edbi \u0111\u00e2y t\u1ed5ng h\u1ee3p c\u00e1c th\u00e0nh ph\u1ea7n b\u1eaft bu\u1ed9c.<\/p>\n<table style=\"width: 100%; border-collapse: collapse; margin: 20px 0; font-size: 15px;\">\n<thead>\n<tr style=\"background-color: #1e3a8a; color: white;\">\n<th style=\"padding: 12px 15px; text-align: left;\">Th\u00e0nh ph\u1ea7n<\/th>\n<th style=\"padding: 12px 15px; text-align: left;\">Y\u00eau c\u1ea7u t\u1ed1i thi\u1ec3u<\/th>\n<th style=\"padding: 12px 15px; text-align: left;\">Khuy\u1ebfn ngh\u1ecb cho production<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr style=\"border-bottom: 1px solid #E5E7EB;\">\n<td style=\"padding: 12px 15px;\">CPU<\/td>\n<td style=\"padding: 12px 15px;\">1 vCPU (64-bit b\u1eaft bu\u1ed9c)<\/td>\n<td style=\"padding: 12px 15px;\">2 vCPU tr\u1edf l\u00ean<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #E5E7EB; background-color: #f9fafb;\">\n<td style=\"padding: 12px 15px;\">RAM<\/td>\n<td style=\"padding: 12px 15px;\">512MB\/process<\/td>\n<td style=\"padding: 12px 15px;\">2GB+ (4GB n\u1ebfu d\u00f9ng Collabora\/OnlyOffice)<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #E5E7EB;\">\n<td style=\"padding: 12px 15px;\">H\u1ec7 \u0111i\u1ec1u h\u00e0nh<\/td>\n<td style=\"padding: 12px 15px;\"><a href=\"https:\/\/interdata.vn\/blog\/ubuntu-server-la-gi\/\">Ubuntu Server<\/a> 22.04\/24.04 LTS (64-bit)<\/td>\n<td style=\"padding: 12px 15px;\">Ubuntu 24.04 LTS<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #E5E7EB; background-color: #f9fafb;\">\n<td style=\"padding: 12px 15px;\">PHP<\/td>\n<td style=\"padding: 12px 15px;\">PHP 8.1+<\/td>\n<td style=\"padding: 12px 15px;\">PHP 8.2 ho\u1eb7c 8.3 (ki\u1ec3m tra theo phi\u00ean b\u1ea3n Nextcloud)<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #E5E7EB;\">\n<td style=\"padding: 12px 15px;\">Database<\/td>\n<td style=\"padding: 12px 15px;\">MySQL 8.0+ \/ MariaDB 10.6+ \/ PostgreSQL 13+<\/td>\n<td style=\"padding: 12px 15px;\">MariaDB 10.11+ ho\u1eb7c PostgreSQL 16+<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #E5E7EB; background-color: #f9fafb;\">\n<td style=\"padding: 12px 15px;\">Web server<\/td>\n<td style=\"padding: 12px 15px;\"><a href=\"https:\/\/interdata.vn\/blog\/apache-la-gi\/\">Apache<\/a> 2.4+ ho\u1eb7c <a href=\"https:\/\/interdata.vn\/blog\/nginx-la-gi\/\">Nginx<\/a> 1.18+<\/td>\n<td style=\"padding: 12px 15px;\"><a href=\"https:\/\/interdata.vn\/blog\/nginx-la-gi\/\">Nginx<\/a> (nh\u1eb9 h\u01a1n, x\u1eed l\u00fd static file nhanh h\u01a1n)<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #E5E7EB;\">\n<td style=\"padding: 12px 15px;\">\u1ed4 c\u1ee9ng<\/td>\n<td style=\"padding: 12px 15px;\">20GB SSD<\/td>\n<td style=\"padding: 12px 15px;\">40GB+ SSD NVMe (t\u00f9y dung l\u01b0\u1ee3ng l\u01b0u tr\u1eef)<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #E5E7EB; background-color: #f9fafb;\">\n<td style=\"padding: 12px 15px;\">Kh\u00e1c<\/td>\n<td style=\"padding: 12px 15px;\">Domain tr\u1ecf v\u1ec1 IP VPS, SSL certificate<\/td>\n<td style=\"padding: 12px 15px;\">Domain + <a href=\"https:\/\/interdata.vn\/blog\/lets-encrypt-la-gi\/\">Let&#8217;s Encrypt<\/a> SSL mi\u1ec5n ph\u00ed<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p style=\"text-align: justify;\">L\u01b0u \u00fd: n\u1ebfu c\u00e0i b\u1eb1ng <a href=\"https:\/\/interdata.vn\/blog\/docker-la-gi\/\">Docker<\/a> AIO, b\u1ea1n ch\u1ec9 c\u1ea7n VPS c\u00f3 Docker \u2014 AIO t\u1ef1 qu\u1ea3n l\u00fd web server, PHP, database b\u00ean trong container. N\u1ebfu c\u00e0i tay t\u1eeb source, b\u1ea1n ph\u1ea3i t\u1ef1 c\u00e0i v\u00e0 c\u1ea5u h\u00ecnh t\u1eebng th\u00e0nh ph\u1ea7n trong b\u1ea3ng tr\u00ean.<\/p>\n<p><!-- BOX CTA #1 \u2014 VPS --><\/p>\n<div style=\"display: flex; flex-wrap: wrap; background-color: #fff; border: 1.5px solid #BFDBFE; box-shadow: 0 8px 20px rgba(37,99,235,0.08); border-radius: 12px; overflow: hidden; margin: 35px 0;\">\n<div style=\"flex: 1; min-width: 250px; background: linear-gradient(135deg, #1E3A8A 0%, #2563EB 100%); display: flex; align-items: center; justify-content: center; padding: 30px; text-align: center;\">\n<div>\n<p style=\"color: #fff; font-size: 34px; font-family: 'Be Vietnam Pro', sans-serif; font-weight: bold; margin: 0; line-height: 1.1;\">Thu\u00ea VPS InterData<\/p>\n<p style=\"color: #dbeafe; font-size: 15px; font-weight: 600; margin-top: 12px;\">CPU th\u1ebf h\u1ec7 m\u1edbi, SSD NVMe U.2, h\u1ed7 tr\u1ee3 k\u1ef9 thu\u1eadt 24\/7<\/p>\n<\/div>\n<\/div>\n<div style=\"flex: 2; padding: 25px; min-width: 300px;\">\n<h3 style=\"font-family: 'Be Vietnam Pro', sans-serif; color: #1e3a8a; margin-top: 0; font-size: 20px;\">C\u1ea7n VPS c\u00f3 quy\u1ec1n root \u0111\u1ec3 c\u00e0i Nextcloud?<\/h3>\n<p style=\"text-align: justify; font-size: 15px; margin-bottom: 15px;\">C\u00e0i Nextcloud y\u00eau c\u1ea7u quy\u1ec1n root \u0111\u1ec3 ch\u1ea1y Docker, c\u1ea5u h\u00ecnh Nginx\/Apache v\u00e0 qu\u1ea3n l\u00fd database. VPS InterData cung c\u1ea5p full root access, SSD NVMe U.2 cho t\u1ed1c \u0111\u1ed9 \u0111\u1ecdc\/ghi file nhanh khi nhi\u1ec1u user truy c\u1eadp \u0111\u1ed3ng th\u1eddi, k\u00e8m b\u0103ng th\u00f4ng l\u1edbn v\u00e0 h\u1ed7 tr\u1ee3 k\u1ef9 thu\u1eadt 24\/7 gi\u00fap b\u1ea1n x\u1eed l\u00fd s\u1ef1 c\u1ed1 nhanh trong qu\u00e1 tr\u00ecnh c\u00e0i \u0111\u1eb7t.<\/p>\n<p><a style=\"background: linear-gradient(90deg, #2563EB 0%, #1E3A8A 100%); color: #fff; padding: 12px 25px; text-decoration: none; font-weight: 600; border-radius: 8px; font-size: 15px; display: inline-block; box-shadow: 0 5px 15px rgba(37,99,235,0.3);\" href=\"https:\/\/interdata.vn\/thue-vps\/\" target=\"_blank\" rel=\"noopener\">Xem g\u00f3i VPS ch\u1ea1y Nextcloud \u27f6<\/a><\/p>\n<\/div>\n<\/div>\n<p><!-- ========== SECTION 3 ========== --><\/p>\n<h2 id=\"section3\" style=\"color: #1e3a8a; font-size: 24px; font-weight: bold; text-align: left; border-left: 5px solid #2563EB; padding-left: 15px; margin: 40px 0 20px; line-height: 1.4;\">So s\u00e1nh 2 ph\u01b0\u01a1ng ph\u00e1p c\u00e0i \u0111\u1eb7t Nextcloud: Docker AIO vs c\u00e0i tay LEMP<\/h2>\n<p style=\"text-align: justify;\">C\u00f3 hai c\u00e1ch ph\u1ed5 bi\u1ebfn \u0111\u1ec3 c\u00e0i \u0111\u1eb7t Nextcloud tr\u00ean VPS: d\u00f9ng <a href=\"https:\/\/interdata.vn\/blog\/docker-la-gi\/\">Docker<\/a> All-in-One (AIO) \u2014 ph\u01b0\u01a1ng ph\u00e1p \u0111\u01b0\u1ee3c Nextcloud ch\u00ednh th\u1ee9c khuy\u1ebfn ngh\u1ecb t\u1eeb 2024 \u2014 ho\u1eb7c c\u00e0i tay t\u1eeb source code tr\u00ean <a href=\"https:\/\/interdata.vn\/blog\/lemp-stack-la-gi\/\">LEMP Stack<\/a> (Nginx + PHP + MariaDB\/MySQL). B\u1ea3ng d\u01b0\u1edbi gi\u00fap b\u1ea1n ch\u1ecdn nhanh.<\/p>\n<table style=\"width: 100%; border-collapse: collapse; margin: 20px 0; font-size: 15px;\">\n<thead>\n<tr style=\"background-color: #1e3a8a; color: white;\">\n<th style=\"padding: 12px 15px; text-align: left;\">Ti\u00eau ch\u00ed<\/th>\n<th style=\"padding: 12px 15px; text-align: left;\">Docker AIO<\/th>\n<th style=\"padding: 12px 15px; text-align: left;\">C\u00e0i tay t\u1eeb source (LEMP)<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr style=\"border-bottom: 1px solid #E5E7EB;\">\n<td style=\"padding: 12px 15px;\">\u0110\u1ed9 kh\u00f3<\/td>\n<td style=\"padding: 12px 15px;\">Th\u1ea5p \u2014 ch\u1ea1y 1 l\u1ec7nh Docker<\/td>\n<td style=\"padding: 12px 15px;\">Trung b\u00ecnh\u2013cao \u2014 c\u00e0i t\u1eebng component<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #E5E7EB; background-color: #f9fafb;\">\n<td style=\"padding: 12px 15px;\">Th\u1eddi gian c\u00e0i<\/td>\n<td style=\"padding: 12px 15px;\">10\u201315 ph\u00fat<\/td>\n<td style=\"padding: 12px 15px;\">30\u201360 ph\u00fat<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #E5E7EB;\">\n<td style=\"padding: 12px 15px;\">Qu\u1ea3n l\u00fd update<\/td>\n<td style=\"padding: 12px 15px;\">T\u1ef1 \u0111\u1ed9ng qua AIO interface<\/td>\n<td style=\"padding: 12px 15px;\">Th\u1ee7 c\u00f4ng (t\u1ea3i source m\u1edbi, ch\u1ea1y occ upgrade)<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #E5E7EB; background-color: #f9fafb;\">\n<td style=\"padding: 12px 15px;\">T\u00f9y ch\u1ec9nh s\u00e2u<\/td>\n<td style=\"padding: 12px 15px;\">H\u1ea1n ch\u1ebf (theo container preset)<\/td>\n<td style=\"padding: 12px 15px;\">To\u00e0n quy\u1ec1n c\u1ea5u h\u00ecnh Nginx, PHP, DB<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #E5E7EB;\">\n<td style=\"padding: 12px 15px;\">Backup t\u00edch h\u1ee3p<\/td>\n<td style=\"padding: 12px 15px;\">C\u00f3 s\u1eb5n trong AIO<\/td>\n<td style=\"padding: 12px 15px;\">T\u1ef1 thi\u1ebft l\u1eadp (rsync, cron, mysqldump)<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #E5E7EB; background-color: #f9fafb;\">\n<td style=\"padding: 12px 15px;\">Collabora\/OnlyOffice<\/td>\n<td style=\"padding: 12px 15px;\">B\u1eadt 1 click trong AIO<\/td>\n<td style=\"padding: 12px 15px;\">T\u1ef1 c\u00e0i container ri\u00eang ho\u1eb7c g\u00f3i native<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #E5E7EB;\">\n<td style=\"padding: 12px 15px;\">Ph\u00f9 h\u1ee3p v\u1edbi<\/td>\n<td style=\"padding: 12px 15px;\">Ng\u01b0\u1eddi m\u1edbi, team nh\u1ecf, mu\u1ed1n nhanh g\u1ecdn<\/td>\n<td style=\"padding: 12px 15px;\">Sysadmin, ng\u01b0\u1eddi c\u1ea7n t\u1ed1i \u01b0u t\u1eebng chi ti\u1ebft<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p style=\"text-align: justify;\"><strong>Khuy\u1ebfn ngh\u1ecb:<\/strong> N\u1ebfu b\u1ea1n ch\u01b0a c\u00f3 kinh nghi\u1ec7m qu\u1ea3n tr\u1ecb Linux, ch\u1ecdn Docker AIO. Ph\u01b0\u01a1ng ph\u00e1p n\u00e0y gi\u1ea3m thi\u1ec3u l\u1ed7i c\u1ea5u h\u00ecnh, t\u1ef1 c\u1eadp nh\u1eadt v\u00e0 t\u00edch h\u1ee3p s\u1eb5n backup + Collabora. Ch\u1ec9 ch\u1ecdn c\u00e0i tay khi b\u1ea1n c\u1ea7n ki\u1ec3m so\u00e1t chi ti\u1ebft t\u1eebng component (v\u00ed d\u1ee5: d\u00f9ng Nginx v\u1edbi c\u1ea5u h\u00ecnh reverse proxy ph\u1ee9c t\u1ea1p, ho\u1eb7c ch\u1ea1y nhi\u1ec1u \u1ee9ng d\u1ee5ng kh\u00e1c tr\u00ean c\u00f9ng VPS).<\/p>\n<p><!-- ========== SECTION 4 ========== --><\/p>\n<h2 id=\"section4\" style=\"color: #1e3a8a; font-size: 24px; font-weight: bold; text-align: left; border-left: 5px solid #2563EB; padding-left: 15px; margin: 40px 0 20px; line-height: 1.4;\">C\u00e1ch c\u00e0i \u0111\u1eb7t Nextcloud b\u1eb1ng Docker All-in-One (AIO)<\/h2>\n<p style=\"text-align: justify;\">Docker AIO l\u00e0 ph\u01b0\u01a1ng ph\u00e1p c\u00e0i \u0111\u1eb7t ch\u00ednh th\u1ee9c \u0111\u01b0\u1ee3c Nextcloud khuy\u1ebfn ngh\u1ecb. B\u1ea1n ch\u1ec9 c\u1ea7n m\u1ed9t VPS c\u00f3 Docker, <a href=\"https:\/\/interdata.vn\/blog\/cach-tro-ten-mien-ve-hosting\/\">tr\u1ecf domain<\/a> v\u1ec1 IP server, r\u1ed3i ch\u1ea1y m\u1ed9t l\u1ec7nh duy nh\u1ea5t. AIO t\u1ef1 t\u1ea1o v\u00e0 qu\u1ea3n l\u00fd t\u1ea5t c\u1ea3 container: web server, database, Redis, Collabora, Imaginary v\u00e0 backup.<\/p>\n<p style=\"text-align: justify;\">C\u00e1c l\u1ec7nh d\u01b0\u1edbi \u0111\u00e2y \u00e1p d\u1ee5ng cho Ubuntu 22.04\/24.04 LTS. Tham kh\u1ea3o th\u00eam t\u1ea1i <a href=\"https:\/\/github.com\/nextcloud\/all-in-one\" target=\"_blank\" rel=\"noopener nofollow\">GitHub Nextcloud AIO<\/a>.<\/p>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">B\u01b0\u1edbc 1: C\u00e0i Docker tr\u00ean VPS<\/h3>\n<p style=\"text-align: justify;\">C\u1eadp nh\u1eadt h\u1ec7 th\u1ed1ng v\u00e0 c\u00e0i Docker b\u1eb1ng script ch\u00ednh th\u1ee9c:<\/p>\n<pre><code># C\u1eadp nh\u1eadt package list\r\nsudo apt update &amp;&amp; sudo apt upgrade -y\r\n\r\n# C\u00e0i Docker b\u1eb1ng script ch\u00ednh th\u1ee9c\r\ncurl -fsSL https:\/\/get.docker.com | sudo sh\r\n\r\n# Th\u00eam user hi\u1ec7n t\u1ea1i v\u00e0o group docker (kh\u00f4ng c\u1ea7n sudo m\u1ed7i l\u1ea7n ch\u1ea1y)\r\nsudo usermod -aG docker $USER\r\n\r\n# \u0110\u0103ng xu\u1ea5t r\u1ed3i \u0111\u0103ng nh\u1eadp l\u1ea1i \u0111\u1ec3 group c\u00f3 hi\u1ec7u l\u1ef1c\r\n# Ki\u1ec3m tra Docker \u0111\u00e3 ch\u1ea1y\r\ndocker --version<\/code><\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-43111\" src=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Kiem-tra-phien-ban-Docker.png\" alt=\"Ki\u1ec3m tra phi\u00ean b\u1ea3n Docker\" width=\"417\" height=\"86\" title=\"\" srcset=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Kiem-tra-phien-ban-Docker.png 417w, https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Kiem-tra-phien-ban-Docker-300x62.png 300w\" sizes=\"auto, (max-width: 417px) 100vw, 417px\" \/><\/p>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">B\u01b0\u1edbc 2: Tr\u1ecf domain v\u1ec1 IP VPS<\/h3>\n<p style=\"text-align: justify;\">T\u1ea1i DNS provider (Cloudflare, Google Domains, ho\u1eb7c n\u01a1i b\u1ea1n qu\u1ea3n l\u00fd domain), t\u1ea1o b\u1ea3n ghi A Record tr\u1ecf domain (v\u00ed d\u1ee5: <code>cloud.example.com<\/code>) v\u1ec1 \u0111\u1ecba ch\u1ec9 IPv4 c\u1ee7a VPS. N\u1ebfu d\u00f9ng Cloudflare, t\u1eaft proxy (chuy\u1ec3n sang DNS only) \u0111\u1ec3 AIO t\u1ef1 c\u1ea5p SSL qua Let&#8217;s Encrypt.<\/p>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">B\u01b0\u1edbc 3: M\u1edf port tr\u00ean firewall<\/h3>\n<pre><code># M\u1edf port 80 (HTTP) v\u00e0 443 (HTTPS)\r\nsudo ufw allow 80\/tcp\r\nsudo ufw allow 443\/tcp\r\n\r\n# M\u1edf port 8080 cho AIO admin interface\r\nsudo ufw allow 8080\/tcp\r\n\r\n# M\u1edf port 3478 cho Nextcloud Talk (n\u1ebfu d\u00f9ng)\r\nsudo ufw allow 3478\/tcp\r\nsudo ufw allow 3478\/udp<\/code><\/pre>\n<p>N\u1ebfu b\u1ea1n v\u1eeba mua m\u1ed9t VPS tr\u1eafng th\u00ec s\u1eed d\u1ee5ng l\u1ec7nh <code>apt install ufw -y<\/code> \u0111\u1ec3 c\u00e0i \u0111\u1eb7t UFW. Sau \u0111\u00f3 h\u00e3y m\u1edf c\u00e1c port.<\/p>\n<p><em>L\u01b0u \u00fd: N\u1ebfu b\u1ea1n \u0111ang SSH v\u00e0o VPS, b\u1ea1n c\u1ea7n m\u1edf port OpenSSH tr\u01b0\u1edbc khi b\u1eadt UFW, tr\u00e1nh t\u1ef1 kh\u00f3a m\u00ecnh kh\u1ecfi VPS b\u1eb1ng l\u1ec7nh <code>ufw allow OpenSSH<\/code>. R\u1ed3i b\u1eadt firewall <code>ufw enable<\/code>.<\/em><\/p>\n<p>Ki\u1ec3m tra tr\u1ea1ng th\u00e1i UFW b\u1eb1ng l\u1ec7nh <code>ufw status<\/code>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-43112\" src=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Kiem-tra-trang-thai-UFW.png\" alt=\"Ki\u1ec3m tra tr\u1ea1ng th\u00e1i UFW\" width=\"495\" height=\"326\" title=\"\" srcset=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Kiem-tra-trang-thai-UFW.png 495w, https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Kiem-tra-trang-thai-UFW-300x198.png 300w\" sizes=\"auto, (max-width: 495px) 100vw, 495px\" \/><\/p>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">B\u01b0\u1edbc 4: Ch\u1ea1y Nextcloud AIO mastercontainer<\/h3>\n<pre><code># Ch\u1ea1y Nextcloud AIO (l\u1ec7nh ch\u00ednh th\u1ee9c t\u1eeb GitHub)\r\nsudo docker run \\\r\n--init \\\r\n--sig-proxy=false \\\r\n--name nextcloud-aio-mastercontainer \\\r\n--restart always \\\r\n--publish 80:80 \\\r\n--publish 8080:8080 \\\r\n--publish 8443:8443 \\\r\n--volume nextcloud_aio_mastercontainer:\/mnt\/docker-aio-config \\\r\n--volume \/var\/run\/docker.sock:\/var\/run\/docker.sock:ro \\\r\nnextcloud\/all-in-one:latest<\/code><\/pre>\n<p style=\"text-align: justify;\">L\u1ec7nh n\u00e0y pull image m\u1edbi nh\u1ea5t v\u00e0 kh\u1edfi ch\u1ea1y mastercontainer. Qu\u00e1 tr\u00ecnh pull l\u1ea7n \u0111\u1ea7u m\u1ea5t 2\u20135 ph\u00fat t\u00f9y t\u1ed1c \u0111\u1ed9 m\u1ea1ng VPS.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-43114\" src=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Cai-dat-Nextcloud-thanh-cong.png\" alt=\"C\u00e0i \u0111\u1eb7t Nextcloud th\u00e0nh c\u00f4ng\" width=\"1000\" height=\"655\" title=\"\" srcset=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Cai-dat-Nextcloud-thanh-cong.png 1568w, https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Cai-dat-Nextcloud-thanh-cong-300x196.png 300w, https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Cai-dat-Nextcloud-thanh-cong-1024x671.png 1024w, https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Cai-dat-Nextcloud-thanh-cong-768x503.png 768w, https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Cai-dat-Nextcloud-thanh-cong-1536x1006.png 1536w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/p>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">B\u01b0\u1edbc 5: Truy c\u1eadp AIO admin interface v\u00e0 ho\u00e0n t\u1ea5t c\u00e0i \u0111\u1eb7t<\/h3>\n<ol>\n<li style=\"margin-bottom: 8px;\">M\u1edf tr\u00ecnh duy\u1ec7t, truy c\u1eadp <code>https:\/\/IP-VPS:8080<\/code>.<\/li>\n<li style=\"margin-bottom: 8px;\">Giao di\u1ec7n hi\u1ec3n th\u1ecb m\u1eadt kh\u1ea9u admin (passphrase). <strong>L\u01b0u l\u1ea1i ngay<\/strong> \u2014 m\u1ea5t l\u00e0 ph\u1ea3i reset container.<\/li>\n<li style=\"margin-bottom: 8px;\">Nh\u1eadp domain \u0111\u00e3 tr\u1ecf DNS (v\u00ed d\u1ee5: <code>cloud.example.com<\/code>).<\/li>\n<li style=\"margin-bottom: 8px;\">AIO t\u1ef1 c\u1ea5p SSL Let&#8217;s Encrypt, kh\u1edfi t\u1ea1o database, c\u00e0i Nextcloud v\u00e0 c\u00e1c container ph\u1ee5 tr\u1ee3.<\/li>\n<li style=\"margin-bottom: 8px;\">Ch\u1edd 3\u201310 ph\u00fat \u0111\u1ec3 t\u1ea5t c\u1ea3 container chuy\u1ec3n sang tr\u1ea1ng th\u00e1i &#8220;running&#8221;.<\/li>\n<li style=\"margin-bottom: 8px;\">Click &#8220;Open your Nextcloud&#8221; \u0111\u1ec3 truy c\u1eadp Nextcloud qua domain. \u0110\u0103ng nh\u1eadp b\u1eb1ng t\u00e0i kho\u1ea3n admin \u0111\u01b0\u1ee3c AIO cung c\u1ea5p.<\/li>\n<\/ol>\n<p style=\"text-align: justify;\">Xong. Nextcloud \u0111\u00e3 ch\u1ea1y v\u1edbi SSL, Redis cache, cron job t\u1ef1 \u0111\u1ed9ng v\u00e0 s\u1eb5n s\u00e0ng s\u1eed d\u1ee5ng. B\u1ea1n c\u00f3 th\u1ec3 b\u1eadt th\u00eam Collabora, OnlyOffice, Imaginary ho\u1eb7c ClamAV ngay trong giao di\u1ec7n AIO.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-43115\" src=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Cai-dat-Nextcloud-thanh-cong-1.png\" alt=\"C\u00e0i \u0111\u1eb7t Nextcloud th\u00e0nh c\u00f4ng\" width=\"700\" height=\"433\" title=\"\" srcset=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Cai-dat-Nextcloud-thanh-cong-1.png 1184w, https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Cai-dat-Nextcloud-thanh-cong-1-300x185.png 300w, https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Cai-dat-Nextcloud-thanh-cong-1-1024x633.png 1024w, https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Cai-dat-Nextcloud-thanh-cong-1-768x475.png 768w\" sizes=\"auto, (max-width: 700px) 100vw, 700px\" \/><\/p>\n<p><!-- BOX CTA #2 \u2014 CANH ME --><\/p>\n<div style=\"background: linear-gradient(135deg, #EFF6FF 0%, #DBEAFE 100%); border: 1.5px solid #2563EB; border-radius: 12px; padding: 28px; margin: 35px 0; text-align: center;\">\n<p style=\"font-family: 'Be Vietnam Pro', sans-serif; font-size: 22px; font-weight: bold; color: #1e3a8a; margin: 0 0 8px;\">S\u0103n deal VPS &amp; Cloud Server tr\u01b0\u1edbc khi ch\u1ed1t g\u00f3i<\/p>\n<p style=\"font-size: 15px; color: #4b5563; margin-bottom: 20px;\">Canh Me t\u1ed5ng h\u1ee3p khuy\u1ebfn m\u00e3i, m\u00e3 gi\u1ea3m gi\u00e1 v\u00e0 hot deal VPS\/Cloud Server m\u1edbi nh\u1ea5t t\u1eeb InterData \u2014 k\u00e8m th\u1eddi gian \u00e1p d\u1ee5ng v\u00e0 \u0111i\u1ec1u ki\u1ec7n. Xem tr\u01b0\u1edbc \u0111\u1ec3 ch\u1ecdn c\u1ea5u h\u00ecnh ch\u1ea1y Nextcloud v\u1edbi chi ph\u00ed t\u1ed1t nh\u1ea5t.<\/p>\n<p><a style=\"background: #2563EB; color: #fff; padding: 12px 30px; text-decoration: none; font-weight: 600; border-radius: 8px; display: inline-block;\" href=\"https:\/\/interdata.vn\/canhme\/\" target=\"_blank\" rel=\"noopener\">Xem hot deal t\u1ea1i Canh Me \u27f6<\/a><\/p>\n<\/div>\n<p><!-- ========== SECTION 5 ========== --><\/p>\n<h2 id=\"section5\" style=\"color: #1e3a8a; font-size: 24px; font-weight: bold; text-align: left; border-left: 5px solid #2563EB; padding-left: 15px; margin: 40px 0 20px; line-height: 1.4;\">C\u00e1ch c\u00e0i \u0111\u1eb7t Nextcloud t\u1eeb source tr\u00ean LEMP Stack (Nginx + PHP + MariaDB)<\/h2>\n<p style=\"text-align: justify;\">Ph\u01b0\u01a1ng ph\u00e1p n\u00e0y d\u00e0nh cho b\u1ea1n mu\u1ed1n ki\u1ec3m so\u00e1t chi ti\u1ebft t\u1eebng component ho\u1eb7c \u0111ang ch\u1ea1y nhi\u1ec1u \u1ee9ng d\u1ee5ng kh\u00e1c tr\u00ean c\u00f9ng VPS. B\u1ea1n c\u1ea7n t\u1ef1 <a href=\"https:\/\/interdata.vn\/blog\/cai-dat-nginx-php-mysql-tren-ubuntu-vps\/\">c\u00e0i \u0111\u1eb7t Nginx + PHP + MySQL (LEMP Stack) tr\u00ean Ubuntu VPS<\/a> tr\u01b0\u1edbc khi t\u1ea3i Nextcloud.<\/p>\n<p style=\"text-align: justify;\">C\u00e1c l\u1ec7nh \u00e1p d\u1ee5ng cho Ubuntu 22.04\/24.04 LTS, Nextcloud 29+ (phi\u00ean b\u1ea3n m\u1edbi nh\u1ea5t t\u1ea1i th\u1eddi \u0111i\u1ec3m vi\u1ebft). Tham kh\u1ea3o <a href=\"https:\/\/docs.nextcloud.com\/server\/stable\/admin_manual\/installation\/index.html\" target=\"_blank\" rel=\"noopener nofollow\">Nextcloud Admin Manual<\/a> \u0111\u1ec3 ki\u1ec3m tra phi\u00ean b\u1ea3n PHP v\u00e0 database t\u01b0\u01a1ng th\u00edch.<\/p>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">B\u01b0\u1edbc 1: C\u00e0i Nginx, PHP v\u00e0 MariaDB<\/h3>\n<p style=\"text-align: justify;\">N\u1ebfu repository Ubuntu m\u1eb7c \u0111\u1ecbnh ch\u01b0a c\u00f3 PHP 8.3, th\u00eam PPA <code>ppa:ondrej\/php<\/code> tr\u01b0\u1edbc khi c\u00e0i:<\/p>\n<pre><code>sudo add-apt-repository ppa:ondrej\/php -y<\/code><\/pre>\n<pre><code># C\u00e0i Nginx\r\nsudo apt update\r\nsudo apt install nginx -y\r\n\r\n# C\u00e0i PHP 8.3 v\u00e0 c\u00e1c module b\u1eaft bu\u1ed9c cho Nextcloud\r\nsudo apt install php8.3-fpm php8.3-cli php8.3-mysql php8.3-xml \\\r\nphp8.3-mbstring php8.3-gd php8.3-curl php8.3-zip php8.3-intl \\\r\nphp8.3-bcmath php8.3-gmp php8.3-imagick php8.3-opcache \\\r\nphp8.3-redis php8.3-apcu php8.3-bz2 -y\r\n\r\n# C\u00e0i MariaDB\r\nsudo apt install mariadb-server -y\r\n\r\n# B\u1ea3o m\u1eadt MariaDB\r\nsudo mysql_secure_installation<\/code><\/pre>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">B\u01b0\u1edbc 2: T\u1ea1o database cho Nextcloud<\/h3>\n<pre><code>sudo mysql -u root -p<\/code><\/pre>\n<p style=\"text-align: justify;\">Trong MySQL shell, ch\u1ea1y:<\/p>\n<pre><code>CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;\r\nCREATE USER 'nextclouduser'@'localhost' IDENTIFIED BY 'MAT_KHAU_MANH';\r\nGRANT ALL PRIVILEGES ON nextcloud.* TO 'nextclouduser'@'localhost';\r\nFLUSH PRIVILEGES;\r\n\r\n-- C\u1ea5u h\u00ecnh b\u1eaft bu\u1ed9c theo t\u00e0i li\u1ec7u Nextcloud\r\nSET GLOBAL binlog_format = 'ROW';\r\nSET GLOBAL transaction_isolation = 'READ-COMMITTED';\r\nEXIT;<\/code><\/pre>\n<p style=\"text-align: justify;\">Thay <code>MAT_KHAU_MANH<\/code> b\u1eb1ng m\u1eadt kh\u1ea9u th\u1ef1c t\u1ebf. \u0110\u1ec3 c\u1ea5u h\u00ecnh <code>binlog_format<\/code> v\u00e0 <code>transaction_isolation<\/code> v\u0129nh vi\u1ec5n, th\u00eam 2 d\u00f2ng n\u00e0y v\u00e0o <code>\/etc\/mysql\/mariadb.conf.d\/50-server.cnf<\/code> trong section <code>[mysqld]<\/code>:<\/p>\n<pre><code>binlog_format = ROW\r\ntransaction_isolation = READ-COMMITTED<\/code><\/pre>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">B\u01b0\u1edbc 3: T\u1ea3i v\u00e0 gi\u1ea3i n\u00e9n Nextcloud<\/h3>\n<pre><code># T\u1ea3i phi\u00ean b\u1ea3n m\u1edbi nh\u1ea5t (ki\u1ec3m tra t\u1ea1i nextcloud.com\/install)\r\ncd \/tmp\r\nwget https:\/\/download.nextcloud.com\/server\/releases\/latest.tar.bz2\r\n\r\n# Gi\u1ea3i n\u00e9n v\u00e0o web root\r\nsudo tar -xjf latest.tar.bz2 -C \/var\/www\/\r\n\r\n# Ph\u00e2n quy\u1ec1n cho web server\r\nsudo chown -R www-data:www-data \/var\/www\/nextcloud\/<\/code><\/pre>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">B\u01b0\u1edbc 4: C\u1ea5u h\u00ecnh Nginx virtual host<\/h3>\n<p style=\"text-align: justify;\">T\u1ea1o file c\u1ea5u h\u00ecnh:<\/p>\n<pre><code>sudo nano \/etc\/nginx\/sites-available\/nextcloud<\/code><\/pre>\n<p style=\"text-align: justify;\">N\u1ed9i dung (thay <code>cloud.example.com<\/code> b\u1eb1ng domain th\u1eadt):<\/p>\n<pre><code>upstream php-handler {\r\n    server unix:\/var\/run\/php\/php8.3-fpm.sock;\r\n}\r\n\r\nserver {\r\n    listen 80;\r\n    server_name cloud.example.com;\r\n\r\n    return 301 https:\/\/$server_name$request_uri;\r\n}\r\n\r\nserver {\r\n    listen 443 ssl http2;\r\n    server_name cloud.example.com;\r\n\r\n    ssl_certificate \/etc\/letsencrypt\/live\/cloud.example.com\/fullchain.pem;\r\n    ssl_certificate_key \/etc\/letsencrypt\/live\/cloud.example.com\/privkey.pem;\r\n\r\n    root \/var\/www\/nextcloud;\r\n    index index.php index.html;\r\n\r\n    client_max_body_size 512M;\r\n    fastcgi_buffers 64 4K;\r\n\r\n    location = \/robots.txt {\r\n        allow all;\r\n        log_not_found off;\r\n        access_log off;\r\n    }\r\n\r\n    location ^~ \/.well-known {\r\n        location = \/.well-known\/carddav { return 301 \/remote.php\/dav\/; }\r\n        location = \/.well-known\/caldav  { return 301 \/remote.php\/dav\/; }\r\n        location \/.well-known\/acme-challenge { try_files $uri $uri\/ =404; }\r\n        location \/.well-known\/pki-validation { try_files $uri $uri\/ =404; }\r\n        return 301 \/index.php$request_uri;\r\n    }\r\n\r\n    location ~ ^\/(?:build|tests|config|lib|3rdparty|templates|data)(?:$|\/) { return 404; }\r\n    location ~ ^\/(?:\\.|autotest|occ|issue|indie|db_|console) { return 404; }\r\n\r\n    location ~ \\.php(?:$|\/) {\r\n        rewrite ^\/(?!index|remote|public|cron|core\\\/ajax\\\/update|status|ocs\\\/v[12]|updater\\\/.+|ocs-provider\\\/.+|.+\\.php)\/ \/index.php$request_uri;\r\n        fastcgi_split_path_info ^(.+?\\.php)(\/.*)$;\r\n        set $path_info $fastcgi_path_info;\r\n        try_files $fastcgi_script_name =404;\r\n        include fastcgi_params;\r\n        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;\r\n        fastcgi_param PATH_INFO $path_info;\r\n        fastcgi_param HTTPS on;\r\n        fastcgi_param modHeadersAvailable true;\r\n        fastcgi_param front_controller_active true;\r\n        fastcgi_pass php-handler;\r\n        fastcgi_intercept_errors on;\r\n        fastcgi_request_buffering off;\r\n    }\r\n\r\n    location ~ \\.(?:css|js|svg|gif|png|jpg|ico|wasm|tflite|map|ogg|flac)$ {\r\n        try_files $uri \/index.php$request_uri;\r\n        expires 6M;\r\n        access_log off;\r\n    }\r\n\r\n    location ~ \\.woff2?$ {\r\n        try_files $uri \/index.php$request_uri;\r\n        expires 7d;\r\n        access_log off;\r\n    }\r\n\r\n    location \/remote {\r\n        return 301 \/remote.php$request_uri;\r\n    }\r\n\r\n    location \/ {\r\n        try_files $uri $uri\/ \/index.php$request_uri;\r\n    }\r\n}<\/code><\/pre>\n<p><em><strong>Xem th\u00eam: <a href=\"#section-certbot-install\">H\u01b0\u1edbng d\u1eabn c\u1ea5u h\u00ecnh SSL b\u1eb1ng Certbot<\/a><\/strong><\/em><\/p>\n<pre><code># K\u00edch ho\u1ea1t site v\u00e0 ki\u1ec3m tra c\u1ea5u h\u00ecnh\r\nsudo ln -s \/etc\/nginx\/sites-available\/nextcloud \/etc\/nginx\/sites-enabled\/\r\nsudo nginx -t\r\nsudo systemctl reload nginx<\/code><\/pre>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">B\u01b0\u1edbc 5: Ho\u00e0n t\u1ea5t c\u00e0i \u0111\u1eb7t qua tr\u00ecnh duy\u1ec7t<\/h3>\n<p style=\"text-align: justify;\">M\u1edf tr\u00ecnh duy\u1ec7t, truy c\u1eadp <code>https:\/\/cloud.example.com<\/code> (ho\u1eb7c <code>http:\/\/<\/code> n\u1ebfu ch\u01b0a c\u00e0i SSL). Nextcloud hi\u1ec3n th\u1ecb wizard c\u00e0i \u0111\u1eb7t:<\/p>\n<ol>\n<li style=\"margin-bottom: 8px;\">T\u1ea1o t\u00e0i kho\u1ea3n admin (username + password).<\/li>\n<li style=\"margin-bottom: 8px;\">Th\u01b0 m\u1ee5c data: gi\u1eef m\u1eb7c \u0111\u1ecbnh <code>\/var\/www\/nextcloud\/data<\/code> ho\u1eb7c ch\u1ec9 sang ph\u00e2n v\u00f9ng ri\u00eang n\u1ebfu c\u1ea7n.<\/li>\n<li style=\"margin-bottom: 8px;\">Database: ch\u1ecdn MySQL\/MariaDB, nh\u1eadp database name (<code>nextcloud<\/code>), user (<code>nextclouduser<\/code>), password v\u00e0 host (<code>localhost<\/code>).<\/li>\n<li style=\"margin-bottom: 8px;\">Click &#8220;Install&#8221; v\u00e0 ch\u1edd 1\u20132 ph\u00fat.<\/li>\n<\/ol>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-43120\" src=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Cai-dat-Nextcloud-bang-LEMP-2.jpg\" alt=\"C\u00e0i \u0111\u1eb7t Nextcloud b\u1eb1ng LEMP\" width=\"1000\" height=\"480\" title=\"\" srcset=\"https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Cai-dat-Nextcloud-bang-LEMP-2.jpg 1000w, https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Cai-dat-Nextcloud-bang-LEMP-2-300x144.jpg 300w, https:\/\/interdata.vn\/blog\/wp-content\/uploads\/2026\/08\/Cai-dat-Nextcloud-bang-LEMP-2-768x369.jpg 768w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/p>\n<p style=\"text-align: justify;\">Sau khi c\u00e0i xong, Nextcloud chuy\u1ec3n v\u00e0o dashboard. B\u01b0\u1edbc ti\u1ebfp theo l\u00e0 c\u1ea5u h\u00ecnh SSL, cron v\u00e0 t\u1ed1i \u01b0u PHP \u2014 xem ph\u1ea7n d\u01b0\u1edbi.<\/p>\n<p><!-- ========== SECTION 6 ========== --><\/p>\n<h2 id=\"section6\" style=\"color: #1e3a8a; font-size: 24px; font-weight: bold; text-align: left; border-left: 5px solid #2563EB; padding-left: 15px; margin: 40px 0 20px; line-height: 1.4;\">C\u1ea5u h\u00ecnh sau c\u00e0i \u0111\u1eb7t Nextcloud: SSL, trusted domain, PHP tuning, cron<\/h2>\n<p style=\"text-align: justify;\">C\u00e0i xong Nextcloud m\u1edbi ch\u1ec9 l\u00e0 b\u01b0\u1edbc \u0111\u1ea7u. \u0110\u1ec3 ch\u1ea1y \u1ed5n \u0111\u1ecbnh tr\u00ean production, b\u1ea1n c\u1ea7n th\u1ef1c hi\u1ec7n th\u00eam c\u00e1c c\u1ea5u h\u00ecnh b\u00ean d\u01b0\u1edbi. Ph\u1ea7n n\u00e0y \u00e1p d\u1ee5ng chung cho c\u1ea3 Docker AIO (m\u1ed9t s\u1ed1 m\u1ee5c AIO \u0111\u00e3 t\u1ef1 x\u1eed l\u00fd \u2014 s\u1ebd ghi ch\u00fa c\u1ee5 th\u1ec3) v\u00e0 c\u00e0i tay.<\/p>\n<h3 id=\"section-certbot-install\" style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">C\u00e0i SSL Let&#8217;s Encrypt b\u1eb1ng Certbot (c\u00e0i tay)<\/h3>\n<p style=\"text-align: justify;\">SSL\/HTTPS l\u00e0 b\u1eaft bu\u1ed9c cho Nextcloud production. <a href=\"https:\/\/interdata.vn\/blog\/lets-encrypt-la-gi\/\">Let&#8217;s Encrypt<\/a> cung c\u1ea5p certificate mi\u1ec5n ph\u00ed, t\u1ef1 \u0111\u1ed9ng gia h\u1ea1n. N\u1ebfu d\u00f9ng Docker AIO, b\u01b0\u1edbc n\u00e0y \u0111\u00e3 \u0111\u01b0\u1ee3c x\u1eed l\u00fd t\u1ef1 \u0111\u1ed9ng \u2014 b\u1ecf qua.<\/p>\n<pre><code># C\u00e0i Certbot\r\nsudo apt install certbot python3-certbot-nginx -y\r\n\r\n# C\u1ea5p SSL cho domain\r\nsudo certbot --nginx -d cloud.example.com\r\n\r\n# Certbot t\u1ef1 th\u00eam c\u1ea5u h\u00ecnh SSL v\u00e0o Nginx v\u00e0 thi\u1ebft l\u1eadp t\u1ef1 \u0111\u1ed9ng gia h\u1ea1n\r\n# Ki\u1ec3m tra gia h\u1ea1n t\u1ef1 \u0111\u1ed9ng\r\nsudo certbot renew --dry-run<\/code><\/pre>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">C\u1ea5u h\u00ecnh trusted domain<\/h3>\n<p style=\"text-align: justify;\">Nextcloud ch\u1ec9 cho ph\u00e9p truy c\u1eadp t\u1eeb domain \u0111\u00e3 khai b\u00e1o trong <code>config.php<\/code>. N\u1ebfu b\u1ea1n truy c\u1eadp b\u1eb1ng IP ho\u1eb7c domain kh\u00e1c, s\u1ebd g\u1eb7p l\u1ed7i &#8220;Access through untrusted domain&#8221;.<\/p>\n<pre><code>sudo nano \/var\/www\/nextcloud\/config\/config.php<\/code><\/pre>\n<p style=\"text-align: justify;\">T\u00ecm m\u1ea3ng <code>'trusted_domains'<\/code> v\u00e0 th\u00eam domain, IP c\u1ea7n thi\u1ebft:<\/p>\n<pre><code>'trusted_domains' =&gt;\r\n  array (\r\n    0 =&gt; 'cloud.example.com',\r\n    1 =&gt; '103.xxx.xxx.xxx',    \/\/ IP VPS (n\u1ebfu c\u1ea7n truy c\u1eadp b\u1eb1ng IP)\r\n  ),<\/code><\/pre>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">T\u1ed1i \u01b0u PHP cho Nextcloud (c\u00e0i tay)<\/h3>\n<p style=\"text-align: justify;\">Ch\u1ec9nh file <code>\/etc\/php\/8.3\/fpm\/php.ini<\/code> theo <a href=\"https:\/\/docs.nextcloud.com\/server\/stable\/admin_manual\/installation\/php_configuration.html\" target=\"_blank\" rel=\"noopener nofollow\">khuy\u1ebfn ngh\u1ecb c\u1ee7a Nextcloud<\/a>:<\/p>\n<pre><code>memory_limit = 512M\r\nupload_max_filesize = 512M\r\npost_max_size = 512M\r\nmax_execution_time = 3600\r\nmax_input_time = 3600\r\n\r\n# B\u1eadt OPcache\r\nopcache.enable = 1\r\nopcache.interned_strings_buffer = 16\r\nopcache.max_accelerated_files = 10000\r\nopcache.memory_consumption = 128\r\nopcache.save_comments = 1\r\nopcache.revalidate_freq = 1<\/code><\/pre>\n<pre><code># Restart PHP-FPM sau khi ch\u1ec9nh\r\nsudo systemctl restart php8.3-fpm<\/code><\/pre>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">Chuy\u1ec3n background job sang cron (c\u00e0i tay)<\/h3>\n<p style=\"text-align: justify;\">M\u1eb7c \u0111\u1ecbnh Nextcloud d\u00f9ng AJAX \u0111\u1ec3 ch\u1ea1y background task \u2014 ch\u1eadm v\u00e0 kh\u00f4ng \u0111\u00e1ng tin. Chuy\u1ec3n sang system cron:<\/p>\n<pre><code># M\u1edf crontab c\u1ee7a user www-data\r\nsudo crontab -u www-data -e\r\n\r\n# Th\u00eam d\u00f2ng sau (ch\u1ea1y m\u1ed7i 5 ph\u00fat)\r\n*\/5 * * * * php \/var\/www\/nextcloud\/cron.php<\/code><\/pre>\n<p style=\"text-align: justify;\">Sau \u0111\u00f3 v\u00e0o <strong>Settings \u2192 Administration \u2192 Basic settings<\/strong> trong Nextcloud, ch\u1ecdn &#8220;Cron&#8221; thay v\u00ec &#8220;AJAX&#8221;.<\/p>\n<p><!-- ========== SECTION 7 ========== --><\/p>\n<h2 id=\"section7\" style=\"color: #1e3a8a; font-size: 24px; font-weight: bold; text-align: left; border-left: 5px solid #2563EB; padding-left: 15px; margin: 40px 0 20px; line-height: 1.4;\">L\u1ed7i th\u01b0\u1eddng g\u1eb7p khi c\u00e0i \u0111\u1eb7t Nextcloud v\u00e0 c\u00e1ch x\u1eed l\u00fd<\/h2>\n<p style=\"text-align: justify;\">D\u01b0\u1edbi \u0111\u00e2y l\u00e0 c\u00e1c l\u1ed7i ph\u1ed5 bi\u1ebfn nh\u1ea5t khi c\u00e0i Nextcloud tr\u00ean VPS, k\u00e8m c\u00e1ch kh\u1eafc ph\u1ee5c nhanh.<\/p>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">Permission denied \u2014 th\u01b0 m\u1ee5c data ho\u1eb7c config<\/h3>\n<p style=\"text-align: justify;\">Nguy\u00ean nh\u00e2n: th\u01b0 m\u1ee5c Nextcloud kh\u00f4ng thu\u1ed9c quy\u1ec1n s\u1edf h\u1eefu c\u1ee7a web server user (<code>www-data<\/code>).<\/p>\n<pre><code># S\u1eeda quy\u1ec1n s\u1edf h\u1eefu\r\nsudo chown -R www-data:www-data \/var\/www\/nextcloud\/\r\n\r\n# Ki\u1ec3m tra quy\u1ec1n th\u01b0 m\u1ee5c data\r\nsudo chmod 750 \/var\/www\/nextcloud\/data<\/code><\/pre>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">Access through untrusted domain<\/h3>\n<p style=\"text-align: justify;\">B\u1ea1n \u0111ang truy c\u1eadp b\u1eb1ng domain ho\u1eb7c IP ch\u01b0a khai b\u00e1o trong <code>config.php<\/code>. Th\u00eam domain\/IP v\u00e0o m\u1ea3ng <code>trusted_domains<\/code> nh\u01b0 h\u01b0\u1edbng d\u1eabn \u1edf ph\u1ea7n tr\u00ean.<\/p>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">PHP module thi\u1ebfu<\/h3>\n<p style=\"text-align: justify;\">Nextcloud hi\u1ec3n th\u1ecb c\u1ea3nh b\u00e1o trong trang Admin khi thi\u1ebfu module PHP. C\u00e0i b\u1ed5 sung module b\u1ecb thi\u1ebfu:<\/p>\n<pre><code># V\u00ed d\u1ee5: thi\u1ebfu module intl v\u00e0 gmp\r\nsudo apt install php8.3-intl php8.3-gmp -y\r\nsudo systemctl restart php8.3-fpm<\/code><\/pre>\n<p style=\"text-align: justify;\">Danh s\u00e1ch module PHP b\u1eaft bu\u1ed9c: ctype, curl, dom, fileinfo, GD, iconv, JSON, libxml, mbstring, openssl, posix, session, SimpleXML, XMLReader, XMLWriter, zip, zlib, PDO (pdo_mysql ho\u1eb7c pdo_pgsql), intl, opcache.<\/p>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">Upload file b\u1ecb gi\u1edbi h\u1ea1n dung l\u01b0\u1ee3ng<\/h3>\n<p style=\"text-align: justify;\">M\u1eb7c \u0111\u1ecbnh PHP gi\u1edbi h\u1ea1n upload 2MB. Ch\u1ec9nh 3 gi\u00e1 tr\u1ecb trong <code>php.ini<\/code> v\u00e0 Nginx:<\/p>\n<pre><code># Trong \/etc\/php\/8.3\/fpm\/php.ini\r\nupload_max_filesize = 512M\r\npost_max_size = 512M\r\n\r\n# Trong \/etc\/nginx\/sites-available\/nextcloud\r\nclient_max_body_size 512M;\r\n\r\n# Restart c\u1ea3 hai\r\nsudo systemctl restart php8.3-fpm\r\nsudo systemctl reload nginx<\/code><\/pre>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">Database connection failed<\/h3>\n<p style=\"text-align: justify;\">Ki\u1ec3m tra l\u1ea1i th\u00f4ng tin k\u1ebft n\u1ed1i trong <code>\/var\/www\/nextcloud\/config\/config.php<\/code>: t\u00ean database, user, password, host. \u0110\u1ea3m b\u1ea3o MariaDB \u0111ang ch\u1ea1y:<\/p>\n<pre><code>sudo systemctl status mariadb\r\n\r\n# N\u1ebfu kh\u00f4ng ch\u1ea1y\r\nsudo systemctl start mariadb<\/code><\/pre>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">Port 80\/443 b\u1ecb chi\u1ebfm (Docker AIO)<\/h3>\n<p style=\"text-align: justify;\">N\u1ebfu VPS \u0111ang ch\u1ea1y Nginx ho\u1eb7c Apache tr\u00ean port 80\/443, Docker AIO kh\u00f4ng th\u1ec3 bind port. Hai c\u00e1ch x\u1eed l\u00fd: (1) d\u1eebng web server hi\u1ec7n t\u1ea1i n\u1ebfu kh\u00f4ng d\u00f9ng, ho\u1eb7c (2) d\u00f9ng reverse proxy \u2014 tham kh\u1ea3o m\u1ee5c &#8220;reverse proxy&#8221; trong <a href=\"https:\/\/github.com\/nextcloud\/all-in-one\/blob\/main\/reverse-proxy.md\" target=\"_blank\" rel=\"noopener nofollow\">t\u00e0i li\u1ec7u AIO<\/a>.<\/p>\n<p><!-- ========== SECTION 8 ========== --><\/p>\n<h2 id=\"section8\" style=\"color: #1e3a8a; font-size: 24px; font-weight: bold; text-align: left; border-left: 5px solid #2563EB; padding-left: 15px; margin: 40px 0 20px; line-height: 1.4;\">Ch\u1ecdn VPS hay Cloud Server \u0111\u1ec3 ch\u1ea1y Nextcloud?<\/h2>\n<p style=\"text-align: justify;\">C\u1ea3 VPS v\u00e0 Cloud Server \u0111\u1ec1u ch\u1ea1y \u0111\u01b0\u1ee3c Nextcloud. Kh\u00e1c bi\u1ec7t n\u1eb1m \u1edf kh\u1ea3 n\u0103ng m\u1edf r\u1ed9ng v\u00e0 m\u00f4 h\u00ecnh t\u00e0i nguy\u00ean. B\u1ea3ng d\u01b0\u1edbi gi\u00fap b\u1ea1n quy\u1ebft \u0111\u1ecbnh d\u1ef1a tr\u00ean quy m\u00f4 s\u1eed d\u1ee5ng th\u1ef1c t\u1ebf. Tham kh\u1ea3o th\u00eam b\u00e0i <a href=\"https:\/\/interdata.vn\/blog\/cloud-server-va-vps\/\">so s\u00e1nh Cloud Server v\u00e0 VPS<\/a> \u0111\u1ec3 hi\u1ec3u r\u00f5 s\u1ef1 kh\u00e1c nhau.<\/p>\n<table style=\"width: 100%; border-collapse: collapse; margin: 20px 0; font-size: 15px;\">\n<thead>\n<tr style=\"background-color: #1e3a8a; color: white;\">\n<th style=\"padding: 12px 15px; text-align: left;\">Ti\u00eau ch\u00ed<\/th>\n<th style=\"padding: 12px 15px; text-align: left;\">VPS<\/th>\n<th style=\"padding: 12px 15px; text-align: left;\">Cloud Server<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr style=\"border-bottom: 1px solid #E5E7EB;\">\n<td style=\"padding: 12px 15px;\">S\u1ed1 user Nextcloud<\/td>\n<td style=\"padding: 12px 15px;\">1\u201350 user<\/td>\n<td style=\"padding: 12px 15px;\">50+ user<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #E5E7EB; background-color: #f9fafb;\">\n<td style=\"padding: 12px 15px;\">Dung l\u01b0\u1ee3ng l\u01b0u tr\u1eef<\/td>\n<td style=\"padding: 12px 15px;\">D\u01b0\u1edbi 500GB<\/td>\n<td style=\"padding: 12px 15px;\">500GB\u2013v\u00e0i TB, c\u1ea7n m\u1edf r\u1ed9ng nhanh<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #E5E7EB;\">\n<td style=\"padding: 12px 15px;\">N\u00e2ng\/h\u1ea1 t\u00e0i nguy\u00ean<\/td>\n<td style=\"padding: 12px 15px;\">Thay \u0111\u1ed5i g\u00f3i, c\u00f3 th\u1ec3 c\u1ea7n migrate<\/td>\n<td style=\"padding: 12px 15px;\">Scale n\u00f3ng RAM\/CPU, kh\u00f4ng downtime<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #E5E7EB; background-color: #f9fafb;\">\n<td style=\"padding: 12px 15px;\">Chi ph\u00ed<\/td>\n<td style=\"padding: 12px 15px;\">C\u1ed1 \u0111\u1ecbnh, d\u1ec5 d\u1ef1 tr\u00f9 ng\u00e2n s\u00e1ch<\/td>\n<td style=\"padding: 12px 15px;\">Theo t\u00e0i nguy\u00ean th\u1ef1c d\u00f9ng, cao h\u01a1n VPS c\u00f9ng spec<\/td>\n<\/tr>\n<tr style=\"border-bottom: 1px solid #E5E7EB;\">\n<td style=\"padding: 12px 15px;\">Ph\u00f9 h\u1ee3p<\/td>\n<td style=\"padding: 12px 15px;\">C\u00e1 nh\u00e2n, freelancer, startup, team nh\u1ecf<\/td>\n<td style=\"padding: 12px 15px;\">Doanh nghi\u1ec7p, t\u1ed5 ch\u1ee9c nhi\u1ec1u ph\u00f2ng ban<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p style=\"text-align: justify;\"><strong>G\u1ee3i \u00fd th\u1ef1c t\u1ebf:<\/strong> B\u1eaft \u0111\u1ea7u v\u1edbi VPS 2 vCPU \/ 2GB RAM \/ 40GB SSD cho Nextcloud ph\u1ee5c v\u1ee5 d\u01b0\u1edbi 20 user. Khi s\u1ed1 user ho\u1eb7c dung l\u01b0\u1ee3ng t\u0103ng, chuy\u1ec3n sang Cloud Server \u0111\u1ec3 n\u00e2ng t\u00e0i nguy\u00ean m\u00e0 kh\u00f4ng c\u1ea7n c\u00e0i l\u1ea1i t\u1eeb \u0111\u1ea7u.<\/p>\n<p><!-- BOX CTA #3 \u2014 CLOUD SERVER --><\/p>\n<div style=\"display: flex; flex-wrap: wrap; background-color: #fff; border: 1.5px solid #BFDBFE; box-shadow: 0 8px 20px rgba(37,99,235,0.08); border-radius: 12px; overflow: hidden; margin: 35px 0;\">\n<div style=\"flex: 1; min-width: 250px; background: linear-gradient(135deg, #1E3A8A 0%, #2563EB 100%); display: flex; align-items: center; justify-content: center; padding: 30px; text-align: center;\">\n<div>\n<p style=\"color: #fff; font-size: 34px; font-family: 'Be Vietnam Pro', sans-serif; font-weight: bold; margin: 0; line-height: 1.1;\">Cloud Server InterData<\/p>\n<p style=\"color: #dbeafe; font-size: 15px; font-weight: 600; margin-top: 12px;\">N\u00e2ng\/h\u1ea1 t\u00e0i nguy\u00ean nhanh, m\u1ea1ng t\u1ed1c \u0111\u1ed9 cao, ch\u1ed1ng DDoS<\/p>\n<\/div>\n<\/div>\n<div style=\"flex: 2; padding: 25px; min-width: 300px;\">\n<h3 style=\"font-family: 'Be Vietnam Pro', sans-serif; color: #1e3a8a; margin-top: 0; font-size: 20px;\">Nextcloud cho nhi\u1ec1u user, l\u01b0u tr\u1eef h\u00e0ng tr\u0103m GB?<\/h3>\n<p style=\"text-align: justify; font-size: 15px; margin-bottom: 15px;\">Khi Nextcloud ph\u1ee5c v\u1ee5 team tr\u00ean 50 ng\u01b0\u1eddi, l\u01b0u tr\u1eef v\u01b0\u1ee3t 500GB ho\u1eb7c ch\u1ea1y th\u00eam Collabora\/OnlyOffice \u0111\u1ec3 so\u1ea1n t\u00e0i li\u1ec7u online, b\u1ea1n c\u1ea7n n\u00e2ng RAM v\u00e0 CPU m\u00e0 kh\u00f4ng ph\u1ea3i migrate to\u00e0n b\u1ed9 server. Cloud Server InterData cho ph\u00e9p scale t\u00e0i nguy\u00ean nhanh, k\u00e8m h\u1ec7 th\u1ed1ng ch\u1ed1ng DDoS v\u00e0 backup \u0111\u1ecbnh k\u1ef3 gi\u00fap b\u1ea3o v\u1ec7 d\u1eef li\u1ec7u doanh nghi\u1ec7p.<\/p>\n<p><a style=\"background: linear-gradient(90deg, #2563EB 0%, #1E3A8A 100%); color: #fff; padding: 12px 25px; text-decoration: none; font-weight: 600; border-radius: 8px; font-size: 15px; display: inline-block; box-shadow: 0 5px 15px rgba(37,99,235,0.3);\" href=\"https:\/\/interdata.vn\/cloud-server\/\" target=\"_blank\" rel=\"noopener\">Xem g\u00f3i Cloud Server \u27f6<\/a><\/p>\n<\/div>\n<\/div>\n<p><!-- ========== FAQ ========== --><\/p>\n<h2 id=\"section-faq\" style=\"color: #1e3a8a; font-size: 24px; font-weight: bold; text-align: left; border-left: 5px solid #2563EB; padding-left: 15px; margin: 40px 0 20px; line-height: 1.4;\">C\u00e2u h\u1ecfi th\u01b0\u1eddng g\u1eb7p v\u1ec1 c\u00e1ch c\u00e0i \u0111\u1eb7t Nextcloud<\/h2>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">Nextcloud c\u00f3 mi\u1ec5n ph\u00ed kh\u00f4ng?<\/h3>\n<p style=\"text-align: justify;\">C\u00f3. Nextcloud l\u00e0 ph\u1ea7n m\u1ec1m m\u00e3 ngu\u1ed3n m\u1edf, mi\u1ec5n ph\u00ed ho\u00e0n to\u00e0n cho m\u1ecdi m\u1ee5c \u0111\u00edch s\u1eed d\u1ee5ng \u2014 c\u00e1 nh\u00e2n l\u1eabn doanh nghi\u1ec7p. B\u1ea1n ch\u1ec9 tr\u1ea3 chi ph\u00ed VPS ho\u1eb7c Cloud Server \u0111\u1ec3 ch\u1ea1y Nextcloud. Nextcloud c\u0169ng c\u00f3 g\u00f3i Enterprise tr\u1ea3 ph\u00ed d\u00e0nh cho t\u1ed5 ch\u1ee9c c\u1ea7n h\u1ed7 tr\u1ee3 k\u1ef9 thu\u1eadt chuy\u00ean s\u00e2u v\u00e0 t\u00ednh n\u0103ng qu\u1ea3n tr\u1ecb n\u00e2ng cao.<\/p>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">C\u00e0i Nextcloud c\u1ea7n VPS c\u1ea5u h\u00ecnh bao nhi\u00eau?<\/h3>\n<p style=\"text-align: justify;\">T\u1ed1i thi\u1ec3u 1 vCPU, 1GB RAM v\u00e0 20GB SSD cho d\u01b0\u1edbi 10 user. V\u1edbi 10\u201350 user, n\u00ean d\u00f9ng 2 vCPU, 2\u20134GB RAM v\u00e0 40GB+ SSD NVMe. N\u1ebfu b\u1eadt Collabora ho\u1eb7c OnlyOffice \u0111\u1ec3 so\u1ea1n t\u00e0i li\u1ec7u online, c\u1ea7n th\u00eam \u00edt nh\u1ea5t 2GB RAM. Dung l\u01b0\u1ee3ng \u1ed5 c\u1ee9ng ph\u1ee5 thu\u1ed9c v\u00e0o l\u01b0\u1ee3ng file l\u01b0u tr\u1eef th\u1ef1c t\u1ebf.<\/p>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">Nextcloud v\u00e0 ownCloud kh\u00e1c g\u00ec nhau?<\/h3>\n<p style=\"text-align: justify;\">Nextcloud \u0111\u01b0\u1ee3c fork t\u1eeb ownCloud n\u0103m 2016 b\u1edfi ch\u00ednh ng\u01b0\u1eddi s\u00e1ng l\u1eadp ownCloud. Hi\u1ec7n t\u1ea1i Nextcloud ph\u00e1t tri\u1ec3n nhanh h\u01a1n, c\u00f3 c\u1ed9ng \u0111\u1ed3ng l\u1edbn h\u01a1n, t\u00edch h\u1ee3p nhi\u1ec1u t\u00ednh n\u0103ng c\u1ed9ng t\u00e1c (Talk, Calendar, Mail, Office) trong b\u1ea3n mi\u1ec5n ph\u00ed. ownCloud chuy\u1ec3n sang m\u00f4 h\u00ecnh th\u01b0\u01a1ng m\u1ea1i nhi\u1ec1u h\u01a1n. V\u1edbi self-host mi\u1ec5n ph\u00ed, Nextcloud l\u00e0 l\u1ef1a ch\u1ecdn ph\u1ed5 bi\u1ebfn h\u01a1n.<\/p>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">C\u00f3 n\u00ean c\u00e0i Nextcloud b\u1eb1ng Docker kh\u00f4ng?<\/h3>\n<p style=\"text-align: justify;\">N\u00ean, \u0111\u1eb7c bi\u1ec7t n\u1ebfu b\u1ea1n ch\u01b0a c\u00f3 kinh nghi\u1ec7m qu\u1ea3n tr\u1ecb Linux. Docker AIO l\u00e0 ph\u01b0\u01a1ng ph\u00e1p \u0111\u01b0\u1ee3c Nextcloud ch\u00ednh th\u1ee9c khuy\u1ebfn ngh\u1ecb \u2014 t\u1ef1 qu\u1ea3n l\u00fd web server, database, SSL, backup v\u00e0 c\u1eadp nh\u1eadt. B\u1ea1n ch\u1ec9 c\u1ea7n c\u00e0i Docker v\u00e0 ch\u1ea1y 1 l\u1ec7nh. Ch\u1ecdn c\u00e0i tay khi mu\u1ed1n ki\u1ec3m so\u00e1t chi ti\u1ebft c\u1ea5u h\u00ecnh ho\u1eb7c ch\u1ea1y nhi\u1ec1u \u1ee9ng d\u1ee5ng kh\u00e1c tr\u00ean c\u00f9ng VPS.<\/p>\n<h3 style=\"color: #1e3a8a; font-size: 19px; font-weight: 600; margin: 30px 0 15px;\">Nextcloud c\u00f3 th\u1ec3 thay th\u1ebf Google Drive kh\u00f4ng?<\/h3>\n<p style=\"text-align: justify;\">V\u1ec1 ch\u1ee9c n\u0103ng l\u01b0u tr\u1eef, \u0111\u1ed3ng b\u1ed9 file v\u00e0 chia s\u1ebb: ho\u00e0n to\u00e0n thay th\u1ebf \u0111\u01b0\u1ee3c. Nextcloud c\u00f3 client cho Windows, macOS, Linux, Android v\u00e0 iOS. V\u1edbi t\u00ednh n\u0103ng c\u1ed9ng t\u00e1c (so\u1ea1n t\u00e0i li\u1ec7u, b\u1ea3ng t\u00ednh online), c\u1ea7n c\u00e0i th\u00eam Collabora ho\u1eb7c OnlyOffice. \u0110i\u1ec3m kh\u00e1c bi\u1ec7t l\u1edbn nh\u1ea5t: d\u1eef li\u1ec7u n\u1eb1m tr\u00ean server c\u1ee7a b\u1ea1n, kh\u00f4ng ph\u1ee5 thu\u1ed9c ch\u00ednh s\u00e1ch c\u1ee7a b\u00ean th\u1ee9 ba.<\/p>\n<p><!-- ========== K\u1ebeT B\u00c0I ========== --><\/p>\n<div style=\"border-top: 2px dashed #BFDBFE; margin-top: 50px; padding-top: 30px;\">\n<h3 style=\"font-family: 'Be Vietnam Pro', sans-serif; color: #1e3a8a; font-size: 22px; font-weight: bold; margin-bottom: 15px;\">B\u1eaft \u0111\u1ea7u t\u1ef1 host Nextcloud \u2014 ch\u1ecdn \u0111\u00fang ph\u01b0\u01a1ng ph\u00e1p v\u00e0 c\u1ea5u h\u00ecnh<\/h3>\n<p style=\"text-align: justify;\">C\u00e1ch c\u00e0i \u0111\u1eb7t Nextcloud tr\u00ean VPS kh\u00f4ng ph\u1ee9c t\u1ea1p n\u1ebfu b\u1ea1n ch\u1ecdn \u0111\u00fang ph\u01b0\u01a1ng ph\u00e1p ph\u00f9 h\u1ee3p v\u1edbi tr\u00ecnh \u0111\u1ed9 v\u00e0 nhu c\u1ea7u. Docker AIO ph\u00f9 h\u1ee3p nh\u1ea5t cho ng\u01b0\u1eddi m\u1edbi \u2014 m\u1ed9t l\u1ec7nh Docker, AIO lo ph\u1ea7n c\u00f2n l\u1ea1i. C\u00e0i tay t\u1eeb source tr\u00ean LEMP Stack d\u00e0nh cho b\u1ea1n mu\u1ed1n ki\u1ec3m so\u00e1t t\u1eebng chi ti\u1ebft c\u1ea5u h\u00ecnh. D\u00f9 ch\u1ecdn c\u00e1ch n\u00e0o, h\u00e3y \u0111\u1ea3m b\u1ea3o VPS c\u00f3 \u0111\u1ee7 RAM (t\u1ed1i thi\u1ec3u 2GB cho production), SSD NVMe \u0111\u1ec3 Nextcloud \u0111\u1ecdc\/ghi file nhanh, v\u00e0 domain \u0111\u00e3 tr\u1ecf DNS k\u00e8m SSL. Ch\u1ea1y th\u1eed tr\u00ean staging tr\u01b0\u1edbc, backup d\u1eef li\u1ec7u \u0111\u1ea7y \u0111\u1ee7, r\u1ed3i m\u1edbi \u0111\u01b0a l\u00ean production.<\/p>\n<div style=\"background: #EFF6FF; border: 1px solid #2563EB; padding: 30px; margin-top: 25px; border-radius: 12px; text-align: center;\">\n<p style=\"font-family: 'Be Vietnam Pro', sans-serif; font-size: 20px; font-weight: bold; color: #1e3a8a; margin-top: 0;\">S\u1eb5n s\u00e0ng t\u1ef1 host Nextcloud tr\u00ean m\u00e1y ch\u1ee7 ri\u00eang<\/p>\n<p style=\"font-size: 15px; margin-bottom: 20px; color: #4b5563;\">B\u1eaft \u0111\u1ea7u v\u1edbi VPS \u0111\u1ec3 c\u00e0i \u0111\u1eb7t nhanh, n\u00e2ng l\u00ean Cloud Server khi s\u1ed1 user v\u00e0 dung l\u01b0\u1ee3ng t\u0103ng \u2014 v\u00e0 gh\u00e9 <a href=\"https:\/\/interdata.vn\/canhme\/\" target=\"_blank\" rel=\"noopener\">Canh Me<\/a> \u0111\u1ec3 s\u0103n deal tr\u01b0\u1edbc khi ch\u1ed1t g\u00f3i.<\/p>\n<p><a style=\"background: #2563EB; color: #fff; padding: 12px 30px; text-decoration: none; font-weight: 600; border-radius: 6px; display: inline-block;\" href=\"https:\/\/interdata.vn\/thue-vps\/\" target=\"_blank\" rel=\"noopener\">Ch\u1ecdn VPS ch\u1ea1y Nextcloud \u27f6<\/a><\/p>\n<\/div>\n<\/div>\n<p style=\"text-align: justify; font-size: 13px; font-style: italic; color: #6b7280; margin-top: 30px; border-top: 1px solid #E5E7EB; padding-top: 15px;\"><span style=\"font-size: 100%;\"><em>N\u1ed9i dung mang t\u00ednh tham kh\u1ea3o. C\u00e1c l\u1ec7nh v\u00e0 c\u1ea5u h\u00ecnh trong b\u00e0i \u00e1p d\u1ee5ng cho Ubuntu 22.04\/24.04 LTS v\u1edbi Nextcloud phi\u00ean b\u1ea3n m\u1edbi nh\u1ea5t t\u1ea1i th\u1eddi \u0111i\u1ec3m vi\u1ebft. Phi\u00ean b\u1ea3n PHP, database, web server v\u00e0 c\u1ea5u h\u00ecnh m\u1ea1ng c\u00f3 th\u1ec3 kh\u00e1c theo m\u00f4i tr\u01b0\u1eddng th\u1ef1c t\u1ebf. N\u00ean ki\u1ec3m th\u1eed tr\u00ean staging, sao l\u01b0u d\u1eef li\u1ec7u \u0111\u1ea7y \u0111\u1ee7 v\u00e0 \u0111\u00e1nh gi\u00e1 r\u1ee7i ro tr\u01b0\u1edbc khi \u00e1p d\u1ee5ng cho production. Tham kh\u1ea3o t\u00e0i li\u1ec7u ch\u00ednh th\u1ee9c t\u1ea1i <a href=\"https:\/\/docs.nextcloud.com\/\" target=\"_blank\" rel=\"noopener nofollow\">docs.nextcloud.com<\/a> \u0111\u1ec3 c\u1eadp nh\u1eadt th\u00f4ng tin m\u1edbi nh\u1ea5t.<\/em><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>C\u00e1ch c\u00e0i \u0111\u1eb7t Nextcloud tr\u00ean VPS l\u00e0 b\u01b0\u1edbc \u0111\u1ea7u ti\u00ean \u0111\u1ec3 b\u1ea1n s\u1edf h\u1eefu h\u1ec7 th\u1ed1ng l\u01b0u tr\u1eef \u0111\u00e1m m\u00e2y ri\u00eang, thay th\u1ebf Google Drive hay Dropbox m\u00e0 kh\u00f4ng ph\u1ee5 thu\u1ed9c b\u00ean th\u1ee9 ba. B\u00e0i vi\u1ebft n\u00e0y t\u1eeb InterData h\u01b0\u1edbng d\u1eabn t\u1eebng b\u01b0\u1edbc \u2014 t\u1eeb chu\u1ea9n b\u1ecb VPS, ch\u1ecdn ph\u01b0\u01a1ng ph\u00e1p c\u00e0i \u0111\u1eb7t \u0111\u1ebfn c\u1ea5u<\/p>\n","protected":false},"author":2,"featured_media":43126,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[161],"tags":[],"class_list":["post-43101","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-huong-dan-chung"],"_links":{"self":[{"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/posts\/43101","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/comments?post=43101"}],"version-history":[{"count":9,"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/posts\/43101\/revisions"}],"predecessor-version":[{"id":43125,"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/posts\/43101\/revisions\/43125"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/media\/43126"}],"wp:attachment":[{"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/media?parent=43101"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/categories?post=43101"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/interdata.vn\/blog\/wp-json\/wp\/v2\/tags?post=43101"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}