วิธีการติดตั้ง GitBucket บน Ubuntu 16.04

คู่มือนี้ครอบคลุมถึงการติดตั้งและตั้งค่าพื้นฐานของ GitBucket สำหรับอินสแตนซ์ Vultr ที่ใช้งาน Ubuntu 16.04 และถือว่าคุณใช้คำสั่งในฐานะnon-rootผู้ใช้

ข้อกำหนดเบื้องต้น

  • อินสแตนซ์ของเซิร์ฟเวอร์ Vultr ที่มีRAM อย่างน้อย 1GB (อินสแตนซ์ขนาดเล็กอาจทำงานได้แม้ว่าจะช้า)
  • openjdk-8-jre จำเป็นรุ่นที่เก่ากว่าจะไม่ทำงาน
  • wget ใช้เพื่อดาวน์โหลดแพ็คเกจ GitBucket
  • nginx ทางเลือกจัดเตรียม reverse proxy ให้กับ GitBucket
  • systemd จัดการเริ่มต้นและหยุดกระบวนการ GitBucket

การติดตั้งข้อกำหนดเบื้องต้น

GitBucket ต้องการให้ติดตั้ง Java 8 หรือใหม่กว่าบนเซิร์ฟเวอร์ของคุณ หากคุณยังไม่ได้ติดตั้ง Java 8 ให้อัปเดตรายการแพคเกจท้องถิ่นของคุณก่อน

sudo apt update

จากนั้นติดตั้งแพ็คเกจรันไทม์ Java 8

sudo apt install openjdk-8-jre

กำลังติดตั้ง GitBucket

การสร้างผู้ใช้ที่ไม่มีสิทธิพิเศษ

เราจะต้องสร้างผู้ใช้ที่ไม่มีสิทธิพิเศษเพื่อเรียกใช้ GitBucket ก่อนดำเนินการเพิ่มเติม การเรียกใช้ GitBucket ภายใต้ผู้ใช้ที่ไม่มีสิทธิ์ จำกัด การติดตั้งของเราจากการเขียนนอกไดเรกทอรีข้อมูลของตนเองเสริมความปลอดภัยให้กับเซิร์ฟเวอร์ของคุณ gitbucketเรียกใช้คำสั่งต่อไปนี้เพื่อสร้างผู้ใช้ระบบที่เรียกว่า

sudo adduser --system gitbucket

เพราะเราได้สร้างระบบการใช้เปลือกเริ่มต้นเป็นและเราจะเตะกลับไปยังเปลือกปัจจุบันของเราถ้าเราให้การโต้แย้งเปลือกเพิ่มเติมเมื่อทำงาน/bin/false suเข้าสู่ระบบไปยังผู้ใช้ที่สร้างขึ้นใหม่

sudo su - gitbucket -s /bin/bash

ข้อความแจ้งของเชลล์ควรเปลี่ยนและคุณจะเข้าสู่ระบบของผู้ใช้ใหม่

กำลังดาวน์โหลด / อัปเดต GitBucket

นำทางไปยังหน้าเปิดตัว GitBucketและค้นหาเวอร์ชันล่าสุดที่มี คัดลอก URL สำหรับแพคเกจตรวจสอบคุณอยู่ในไดเรกทอรีบ้านของผู้ใช้ใหม่และดาวน์โหลดได้ด้วยgitbucket.warwget

cd ~/
wget https://github.com/gitbucket/gitbucket/releases/download/4.18.0/gitbucket.war

คุณจะต้องทำซ้ำขั้นตอนนี้ทุกครั้งที่คุณต้องการอัพเดทแพ็คเกจ GitBucket

การกำหนดค่า GitBucket เริ่มต้น

เมื่อดาวน์โหลดแพคเกจแล้วเราจะต้องเริ่ม GitBucket ด้วยตนเองเพื่อดำเนินการกำหนดค่าเริ่มต้น

java -jar gitbucket.war --port 8080

หาก8080กระบวนการอื่นดำเนินการพอร์ตอยู่แล้วคุณสามารถเปลี่ยนพอร์ต GitBucket ที่จะรับฟังได้ทันที คำแนะนำนี้จะถือว่า GitBucket กำลังฟังพอร์ต8080อยู่

นี่จะเริ่ม GitBucket บนอินเทอร์เฟซเครือข่ายสาธารณะของเซิร์ฟเวอร์ของคุณฟังที่พอร์ตที่ระบุ คุณควรเห็นหลังจากข้อความสักครู่ข้อความต่อไปนี้

INFO:oejs.Server:main: Started @15891ms

หากคุณกำลังใช้ไฟร์วอลล์ของ Vultrคุณจะต้องเปิดพอร์ตที่ GitBucket กำลังฟังอยู่เนื่องจากไฟร์วอลล์ของ Vultr ทำงานเป็นรายการขาวปฏิเสธการรับส่งข้อมูลเพื่ออนุญาตพอร์ตเว้นแต่จะระบุไว้เป็นอย่างอื่น

การติดตั้ง GitBucket ของคุณควรออนไลน์และสามารถเข้าถึงได้จากอินเทอร์เน็ต ใช้เว็บเบราว์เซอร์เชื่อมต่อกับที่อยู่สาธารณะของเซิร์ฟเวอร์ของคุณ (ต้องแน่ใจว่าระบุพอร์ตที่ GitBucket กำลังทำงานอยู่ (เช่นhttp://203.0.113.0:8080หรือhttp://example.com:8080) และคุณจะเข้าสู่หน้าแรกของ GitBucket

อย่างไรก็ตามรหัสผ่านของบัญชีผู้ดูแลระบบเริ่มต้นจะต้องมีการเปลี่ยนแปลง ในการดำเนินการดังกล่าวให้ลงชื่อเข้าใช้บัญชีผู้ดูแลระบบผ่านSign inปุ่มที่มุมขวาบนของเว็บอินเตอร์เฟส เข้าสู่ระบบเริ่มต้นสำหรับบัญชีผู้ดูแลระบบเป็นrootชื่อผู้ใช้แล้วrootอีกครั้งสำหรับรหัสผ่าน เมื่อเข้าสู่ระบบปุ่มจะถูกแทนที่ด้วยไอคอนโปรไฟล์และเมนูแบบเลื่อนลง ขยายรายการแบบหล่นลงและเลือกAccount Settingsจากนั้นตั้งรหัสผ่านใหม่ที่ปลอดภัยยิ่งขึ้นในตัวช่วยสร้างการตั้งค่าบัญชี

หลังจากที่คุณได้อัปเดตข้อมูลประจำตัวของบัญชีผู้ดูแลระบบเริ่มต้นและสอบว่า GitBucket เริ่มต้นในการกำหนดค่าน้อยที่สุดนี้ฆ่ากระบวนการ Java ด้วย " CTRL+C" exitและปิดเปลือกปัจจุบันด้วย

การสร้างบริการ Systemd

ปัจจุบันเราสามารถเรียกใช้ GitBucket ได้โดยการเข้าถึงเซิร์ฟเวอร์ของเราผ่าน SSH และเริ่มต้นกระบวนการจากเชลล์ด้วยตนเอง โชคดีที่ Ubuntu มาพร้อมกับSystemdแพ็กเกจล่วงหน้าทำให้เราสามารถสร้างบริการที่ GitBucket จะเริ่มทำงานอัตโนมัติและดูแลโดยระบบ

ใช้nanoสร้างไฟล์หน่วยใหม่ใน/etc/systemd/systemไดเรกทอรี

sudo nano /etc/systemd/system/gitbucket.service

จากนั้นคัดลอกเนื้อหาต่อไปนี้ลงในไฟล์

[Unit]
Description=GitBucket
After=network.target
[Service]
ExecStart=/usr/bin/java -jar /home/gitbucket/gitbucket.war --port 8080
ExecStop=/bin/kill -SIGINT $MAINPID
Type=simple
User=gitbucket
[Install]
WantedBy=multi-user.target

ไฟล์หน่วยนี้จะกำหนดการเริ่มต้นและการปิดเครื่องขั้นพื้นฐานสำหรับ GitBucket และเรียกใช้บริการภายใต้ผู้ใช้ระบบที่ไม่มีสิทธิพิเศษของเราบนอินเทอร์เฟซเครือข่ายเฉพาะที่

หากคุณเปลี่ยนหมายเลขพอร์ต GitBucket จะฟังให้เปลี่ยน--portอาร์กิวเมนต์สำหรับExecStartคำสั่ง

บันทึก (" CTRL+O") ไฟล์หน่วยใหม่แล้วออกจากตัวแก้ไข (" CTRL+X") คุณจะต้องโหลด Systemd ใหม่เพื���อให้ไฟล์ยูนิตใหม่ถูกค้นพบ

sudo systemctl daemon-reload

หลังจาก Systemd โหลดใหม่แล้วให้ตรวจสอบว่าหน่วยใหม่ถูกค้นพบและโหลดแล้ว

sudo systemctl status gitbucket

คุณควรเห็นผลลัพธ์ต่อไปนี้

gitbucket.service - GitBucket
   Loaded: loaded (/etc/systemd/system/gitbucket.service; disabled; vendor preset: enabled)
   Active: inactive (dead)

สุดท้ายให้เปิดใช้งานหน่วยใหม่โดยอัตโนมัติเมื่อเซิร์ฟเวอร์ของคุณบูทจากนั้นเริ่มบริการเป็นครั้งแรก

sudo systemctl enable gitbucket
sudo systemctl start gitbucket

เมื่อบริการเริ่มต้นขึ้นคุณจะสามารถเข้าถึง GitBucket จากเบราว์เซอร์ของคุณโดยใช้ที่อยู่ IP และหมายเลขพอร์ตอีกครั้ง

การกำหนดค่าพร็อกซี Nginx ย้อนกลับ

ในขณะที่หนึ่งสามารถเปิดเผย GitBucket โดยตรงผ่านพอร์ต8080คุณสามารถปรับปรุงประสิทธิภาพและกำหนดค่าคุณลักษณะต่างๆเช่น HTTP / 2, การเข้ารหัส TLS และกฎการแคชโดยเปิดเผย GitBucket ผ่าน Nginx

การติดตั้ง Nginx เริ่มต้น

หากคุณยังไม่ได้ติดตั้ง Nginx ให้อัปเดตรายชื่อแพ็คเกจของคุณ

sudo apt update

จากนั้นติดตั้งแพคเกจ Nginx

sudo apt install nginx

เมื่อติดตั้ง Nginx แล้วให้ตรวจสอบว่าคุณสามารถเข้าถึงเว็บเซิร์ฟเวอร์ผ่านที่อยู่ IP ของเซิร์ฟเวอร์โดยไม่มีหมายเลขพอร์ต (เช่นhttp://203.0.113.0หรือhttp://example.com) หากประสบความสำเร็จคุณจะเห็นหน้า Landing Page เริ่มต้นของ Nginx สำหรับ Ubuntu

การสร้าง reverse proxy

เราจะคัดลอกการกำหนดค่าไซต์เริ่มต้น/etc/nginx/sites-availableเป็นจุดเริ่มต้นสำหรับ reverse proxy

sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/gitbucket

nanoเปิดแฟ้มการกำหนดค่าที่สร้างขึ้นใหม่ด้วย

sudo nano /etc/nginx/sites-available/gitbucket

ค้นหาlocation /บล็อกที่มีอยู่ในบรรทัดที่ 43

location / {
  # First attempt to serve request as file, then
  # as directory, then fall back to displaying a 404.
  try_files $uri $uri/ =404;
}

ปัจจุบัน Nginx จะพยายามส่งคืนไฟล์ที่อยู่/var/www/htmlที่ตรงกับHTTPคำขอที่เข้ามา เราจะต้องเปลี่ยนพฤติกรรมนี้โดยการกำหนดค่าพร็อกซีย้อนกลับในบล็อกนี้ซึ่งจะส่งคำขอ HTTP ทั้งหมดที่ส่งไปยังเซิร์ฟเวอร์ Nginx ของเราไปยังอินสแตนซ์ GitBucket แทน อัปเดตlocation /บล็อกเพื่อให้ตรงกับต่อไปนี้

location / {
    proxy_pass              http://localhost:8080; # The address GitBucket is listening on
    proxy_set_header        Host $host;
    proxy_set_header        X-Real-IP $remote_addr;
    proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_connect_timeout   150;
    proxy_send_timeout      100;
    proxy_read_timeout      100;
    proxy_buffers           4 32k;

    client_max_body_size    512m; # Needed for large Git operations over HTTP
    client_body_buffer_size 128k;
}

หากคุณเปลี่ยนหมายเลขพอร์ตที่ GitBucket จะฟังให้อัปเดตproxy_passตัวเลือกเพื่อแสดงถึงสิ่งนี้

ในการเปิดใช้งานการกำหนดค่าใหม่ของเราคุณจะต้องปิดการใช้งานการกำหนดค่าเริ่มต้นที่มีอยู่ใน/etc/nginx/sites-enabledแล้วเชื่อมโยงการกำหนดค่าใหม่ของเรา/etc/nginx/sites-enabledผ่านทางต่อไปนี้

sudo rm /etc/nginx/sites-enabled/default
sudo ln -s /etc/nginx/sites-available/gitbucket /etc/nginx/sites-enabled/gitbucket

เมื่อเปิดใช้งานไฟล์กำหนดค่าแล้วให้ตรวจสอบข้อผิดพลาดทางไวยากรณ์ใด ๆ

sudo nginx -t

จากนั้นรีสตาร์ทเซิร์ฟเวอร์ Nginx เพื่อเปิดใช้งานการกำหนดค่าไซต์ใหม่ของเรา

sudo systemctl restart nginx

ตอนนี้คุณควรจะสามารถเข้าถึงการติดตั้ง GitBucket บนที่อยู่สาธารณะของเซิร์ฟเวอร์โดยไม่มีหมายเลขพอร์ต

การรักษาความปลอดภัยของกระบวนการ GitBucket จากอินเทอร์เน็ตสาธารณะ

ปัจจุบันอินสแตนซ์ GitBucket ของเรากำลังฟังบนอินเทอร์เฟซเครือข่ายสาธารณะของเซิร์ฟเวอร์ของเรา วิธีนี้จะช่วยให้ผู้ใช้สามารถหลีกเลี่ยงพร็อกซี Nginx ได้โดยเชื่อมต่อไปยังที่อยู่ที่ GitBucket กำลังฟังอยู่ในปัจจุบันซึ่งเป็นสิ่งที่ไม่พึงประสงค์ เราจะต้องแก้ไขไฟล์หน่วยที่เราสร้างไว้ก่อนหน้านี้เพื่อแก้ไขปัญหานี้ nanoเปิดแฟ้มหน่วยที่มี

sudo nano /etc/systemd/system/gitbucket.service

ผนวก--host 127.0.0.1กับExecStartคำสั่งเช่นดังนั้น

...
ExecStart=/usr/bin/java -jar /home/gitbucket/gitbucket.war --port 8080 --host 127.0.0.1
...

สิ่งนี้จะทำให้ GitBucket ยอมรับเฉพาะการเชื่อมต่อบนอินเทอร์เฟซเครือข่ายท้องถิ่นของเซิร์ฟเวอร์ของเรา อีกครั้งบันทึก (" CTRL+O") ไฟล์ปิด (" CTRL+X") ตัวแก้ไขรีโหลด Systemd และรีสตาร์ทหน่วย GitBucket ของเรา

sudo systemctl daemon-reload
sudo systemctl restart gitbucket

หากคุณใช้ไฟร์วอลล์ของ Vultr คุณควรลบกฎพอร์ตใด ๆ ที่คุณเพิ่มเพื่อเข้าถึงเซิร์ฟเวอร์ GitBucket ระหว่างการตั้งค่าเริ่มต้น



Leave a Comment

ตั้งค่า NFS Share บน Debian

ตั้งค่า NFS Share บน Debian

NFS เป็นระบบไฟล์บนเครือข่ายที่อนุญาตให้คอมพิวเตอร์เข้าถึงไฟล์ผ่านเครือข่ายคอมพิวเตอร์ คู่มือนี้จะอธิบายวิธีการเปิดเผยโฟลเดอร์ผ่าน NF

วิธีการติดตั้ง Directus 6.4 CMS บน Fedora 26 LAMP VPS

วิธีการติดตั้ง Directus 6.4 CMS บน Fedora 26 LAMP VPS

ใช้ระบบที่แตกต่างกันอย่างไร Directus 6.4 CMS เป็นระบบการจัดการเนื้อหาแบบไม่มีหัว (Headless Content Management: CMS) ที่ทรงพลังและยืดหยุ่นซึ่งให้ผู้พัฒนา

ติดตั้งเซิร์ฟเวอร์ TeamTalk บน Linux

ติดตั้งเซิร์ฟเวอร์ TeamTalk บน Linux

TeamTalk เป็นระบบการประชุมที่ช่วยให้ผู้ใช้สามารถสนทนาด้วยเสียง / วิดีโอคุณภาพสูงสนทนาผ่านข้อความถ่ายโอนไฟล์และแชร์หน้าจอ มันฉัน

การติดตั้ง Pagekit CMS บน CentOS 7

การติดตั้ง Pagekit CMS บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร Pagekit เป็น CMS โอเพนซอร์สที่เขียนด้วย PHP ซอร์สโค้ดของ Pagekit นั้นโฮสต์บน GitHub คำแนะนำนี้จะแสดงให้คุณเห็นว่า

วิธีการติดตั้ง Sphinx Search Engine บน CentOS 7

วิธีการติดตั้ง Sphinx Search Engine บน CentOS 7

สฟิงซ์เป็นเครื่องมือค้นหาข้อความแบบโอเพนซอร์ซฟรีและโอเพนซอร์สซึ่งสามารถรวมเข้ากับเว็บแอปพลิเคชั่นต่าง ๆ เพื่อให้ได้คุณภาพที���รวดเร็วและสูง

การใช้คีย์ SSH ของคุณเพื่อเข้าสู่ผู้ใช้ที่ไม่ใช่รูท

การใช้คีย์ SSH ของคุณเพื่อเข้าสู่ผู้ใช้ที่ไม่ใช่รูท

Vultr มีคุณสมบัติที่อนุญาตให้คุณติดตั้งคีย์ SSH ล่วงหน้าเมื่อสร้างอินสแตนซ์ใหม่ สิ่งนี้อนุญาตให้คุณเข้าถึงผู้ใช้รูทเซิร์ฟเวอร์อย่างไรก็ตาม

สร้างเครือข่ายสังคมด้วย Diaspora บน Debian 9

สร้างเครือข่ายสังคมด้วย Diaspora บน Debian 9

ใช้ระบบที่แตกต่างกันอย่างไร Diaspora เป็นเครือข่ายโซเชียลที่ตระหนักถึงความเป็นส่วนตัวและเป็นโอเพ่นซอร์ส ในบทช่วยสอนนี้คุณจะได้เรียนรู้วิธีการตั้งค่าและกำหนดค่า po Diaspora

การติดตั้ง Fuel CMS บน Debian 9

การติดตั้ง Fuel CMS บน Debian 9

ใช้ระบบที่แตกต่างกันอย่างไร Fuel CMS เป็นระบบจัดการเนื้อหาที่ใช้ CodeIgniter ซอร์สโค้ดของมันถูกโฮสต์บน GitHub คำแนะนำนี้จะแสดงให้คุณเห็นว่า

วิธีการติดตั้ง Snipe-IT บน Ubuntu 16.10

วิธีการติดตั้ง Snipe-IT บน Ubuntu 16.10

ใช้ระบบที่แตกต่างกันอย่างไร Snipe-IT เป็นเว็บแอปพลิเคชั่นฟรีและโอเพนซอร์สสำหรับการจัดการสินทรัพย์ด้านไอที มันถูกเขียนบนกรอบงาน Laravel 5.2 และการใช้งาน

วิธีการติดตั้งเครื่องมือจัดการโครงการไทก้าบน Ubuntu 16.04

วิธีการติดตั้งเครื่องมือจัดการโครงการไทก้าบน Ubuntu 16.04

ใช้ระบบที่แตกต่างกันอย่างไร ไทกะเป็นแอปพลิเคชั่นฟรีและโอเพ่นซอร์สสำหรับการจัดการโครงการ ซึ่งแตกต่างจากเครื่องมือการจัดการโครงการอื่น ๆ ไทก้าใช้ส่วนเพิ่ม

วิธีการที่ปลอดภัย vsFTPd ด้วย SSL / TLS

วิธีการที่ปลอดภัย vsFTPd ด้วย SSL / TLS

FTP ที่ปลอดภัยมากหรือเพียงแค่ vsFTPd เป็นซอฟต์แวร์น้ำหนักเบาที่มีความสามารถในการปรับแต่ง ในบทช่วยสอนนี้เราจะรักษาความปลอดภัยของข้อความ

วิธีการติดตั้ง GCC บน CentOS 6

วิธีการติดตั้ง GCC บน CentOS 6

CentOS ติดตามการพัฒนา Red Hat Enterprise Linux (RHEL) RHEL พยายามที่จะเป็นแพลตฟอร์มเซิร์ฟเวอร์ที่มั่นคงซึ่งหมายความว่าจะไม่รีบเร่งในการรวม

วิธีการติดตั้ง Ranger Terminal File Manager บน Linux

วิธีการติดตั้ง Ranger Terminal File Manager บน Linux

Ranger เป็นตัวจัดการไฟล์แบบบรรทัดคำสั่งที่มีการเชื่อมโยงคีย์ VI มันจัดเตรียมอินเตอร์เฟส curses ที่เรียบง่ายและดีพร้อมมุมมองบนลำดับชั้นไดเร็กทอรี

วิธีการสร้าง Brotli จากซอร์สบน Ubuntu 18.04 LTS

วิธีการสร้าง Brotli จากซอร์สบน Ubuntu 18.04 LTS

ใช้ระบบที่แตกต่างกันอย่างไร Brotli เป็นวิธีการบีบอัดแบบใหม่ที่มีอัตราการบีบอัดที่ดีกว่า GZIP ซอร์สโค้ดของมันถูกโฮสต์แบบสาธารณะบน Githu นี้

ตั้งค่าบัญชีผู้ใช้ SFTP เท่านั้นบน CentOS 7

ตั้งค่าบัญชีผู้ใช้ SFTP เท่านั้นบน CentOS 7

ในบางโอกาสผู้ดูแลระบบอาจต้องสร้างบัญชีผู้ใช้และ จำกัด การเข้าถึงเพื่อจัดการไฟล์ของตัวเองผ่าน sFTP เท่านั้น

วิธีการติดตั้ง Omeka Classic 2.4 CMS บน Ubuntu 16.04 LAMP VPS

วิธีการติดตั้ง Omeka Classic 2.4 CMS บน Ubuntu 16.04 LAMP VPS

ใช้ระบบที่แตกต่างกันอย่างไร Omeka Classic 2.4 CMS เป็นแพลตฟอร์มเผยแพร่ดิจิตอลฟรีและโอเพ่นซอร์สและระบบการจัดการเนื้อหา (CMS) สำหรับการแบ่งปันดิจิต้า

ปิดใช้งานหรือ จำกัด การล็อกอินรูทผ่าน SSH บน Linux

ปิดใช้งานหรือ จำกัด การล็อกอินรูทผ่าน SSH บน Linux

การอนุญาตให้ล็อกอินรูทผ่าน SSH นั้นถือว่าเป็นการปฏิบัติด้านความปลอดภัยที่ไม่ดีทั่วทั้งอุตสาหกรรมเทคโนโลยี คุณสามารถดำเนินการที่ละเอียดอ่อนแทน

วิธีการติดตั้ง Moodle บน CentOS 7

วิธีการติดตั้ง Moodle บน CentOS 7

ใช้ระบบที่แตกต่างกันอย่างไร Moodle เป็นแพลตฟอร์มการเรียนรู้โอเพนซอร์ซหรือระบบจัดการหลักสูตร (CMS) - ชุดซอฟต์แวร์โอเพ่นซอร์สฟรีที่ออกแบบมาเพื่อช่วย

วิธีการติดตั้ง RabbitMQ บน Ubuntu 16.04

วิธีการติดตั้ง RabbitMQ บน Ubuntu 16.04

ใช้ระบบที่แตกต่างกันอย่างไร RabbitMQ เป็นนายหน้าข้อความโอเพ่นซอร์สที่ใช้กันอย่างแพร่หลายเขียนในภาษาการเขียนโปรแกรม Erlang เป็นมิดเดิลแวร์ที่มุ่งเน้นข้อความ

ติดตั้ง NGINX พร้อม ModSecurity บน CentOS 6

ติดตั้ง NGINX พร้อม ModSecurity บน CentOS 6

ในบทความนี้ฉันจะอธิบายวิธีสร้าง LEMP สแต็คที่ได้รับการป้องกันโดย ModSecurity ModSecurity เป็นไฟร์วอลล์เว็บแอพพลิเคชันแบบโอเพนซอร์สที่มีประโยชน์

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

เรียนรู้วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7; ระบบการจัดการเนื้อหา Headless ที่มีความยืดหยุ่นสูงและปลอดภัย

ตั้งค่า Nginx บน Ubuntu เพื่อสตรีมวิดีโอสด HLS

ตั้งค่า Nginx บน Ubuntu เพื่อสตรีมวิดีโอสด HLS

เรียนรู้วิธีการตั้งค่า Nginx บน Ubuntu สำหรับการสตรีมวิดีโอสด HLS ด้วยคำแนะนำที่ชัดเจนและเป็นประโยชน์

การสำรองข้อมูลยอดนิยมด้วย Percona XtraBackup บนแอพ WordPress แบบคลิกเดียว

การสำรองข้อมูลยอดนิยมด้วย Percona XtraBackup บนแอพ WordPress แบบคลิกเดียว

เรียนรู้การใช้ Percona XtraBackup สำหรับการสำรองข้อมูลด้วยวิธีที่เป็นระบบและง่ายดายบน WordPress ออนไลน์ของคุณ

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

อ่านข้อมูลนี้เพื่อทราบว่าปัญญาประดิษฐ์กำลังได้รับความนิยมในหมู่บริษัทขนาดเล็กอย่างไร และเพิ่มโอกาสในการทำให้พวกเขาเติบโตและทำให้คู่แข่งได้เปรียบ

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true