วิธีการติดตั้ง Directus 6.4 CMS บน Fedora 26 LAMP VPS
ใช้ระบบที่แตกต่างกันอย่างไร Directus 6.4 CMS เป็นระบบการจัดการเนื้อหาแบบไม่มีหัว (Headless Content Management: CMS) ที่ทรงพลังและยืดหยุ่นซึ่งให้ผู้พัฒนา
dotCMS เป็นระบบจัดการเนื้อหาระดับองค์กรโอเพนซอร์สที่เขียนด้วยภาษาจาวา มันมีคุณสมบัติเกือบทุกอย่างที่จำเป็นในการสร้างเว็บไซต์สำหรับธุรกิจของคุณ มันมี RESTful API เพื่อรวมเข้ากับบริการอื่น ๆ เช่น CRM แอปพลิเคชันมือถือและอื่น ๆ มันใช้ Elasticsearch สำหรับการจัดทำดัชนีเนื้อหาแบบเรียลไทม์และ Redis สำหรับการใช้แคชหลายชั้น
บทความนี้เขียนขึ้นสำหรับ dotCMS 4.2.2 อย่างไรก็ตามคำแนะนำที่ให้ไว้อาจใช้ได้กับเวอร์ชันที่ใหม่กว่าเช่นกัน
สำหรับบทช่วยสอนนี้เราจะใช้192.168.0.1
เป็นที่อยู่ IP สาธารณะและcms.example.com
เป็นชื่อโดเมนที่ชี้ไปยังอินสแตนซ์ Vultr โปรดตรวจสอบให้แน่ใจว่าได้แทนที่ชื่อโดเมนตัวอย่างและที่อยู่ IP สาธารณะทั้งหมดด้วยชื่อจริง
ปรับปรุงระบบฐานของคุณใช้คู่มือวิธีการปรับปรุง CentOS 7 เมื่อระบบของคุณอัปเดตแล้วให้ดำเนินการติดตั้ง Java
สามารถติดตั้ง OpenJDK ได้อย่างง่ายดายเนื่องจากแพ็คเกจนี้มีอยู่ในที่เก็บ YUM เริ่มต้น
sudo yum -y install java-1.8.0-openjdk-devel
หากติดตั้ง Java อย่างถูกต้องแล้วคุณจะสามารถตรวจสอบเวอร์ชั่นของมันได้
java -version
คุณจะได้ผลลัพธ์ที่คล้ายกัน
[user@vultr ~]$ java -version
openjdk version "1.8.0_151"
OpenJDK Runtime Environment (build 1.8.0_151-b12)
OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode)
ก่อนที่เราจะสามารถดำเนินการต่อไปเราจะต้องตั้งค่าJAVA_HOME
และJRE_HOME
ตัวแปรสภาพแวดล้อม ค้นหาพา ธ สัมบูรณ์ของ Java executable บนระบบของคุณ
readlink -f $(which java)
คุณจะเห็นผลลัพธ์ที่คล้ายกัน
[user@vultr ~]$ readlink -f $(which java)
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64/jre/bin/java
ตอนนี้ตั้งค่าตัวแปรJAVA_HOME
และJRE_HOME
สภาพแวดล้อมตามเส้นทางของไดเรกทอรี Java
echo "export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64" >> ~/.bash_profile
echo "export JRE_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64/jre" >> ~/.bash_profile
ดำเนินการbash_profile
ไฟล์
source ~/.bash_profile
ตอนนี้คุณสามารถรันecho $JAVA_HOME
คำสั่งเพื่อให้แน่ใจว่าตัวแปรสภาพแวดล้อมถูกตั้งค่า
[user@vultr ~]$ echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.151-1.b12.el7_4.x86_64
โดยค่าเริ่มต้น dotCMS ถูกกำหนดค่าให้ใช้เอ็นจิ้นฐานข้อมูล H2 เอ็นจินฐานข้อมูล H2 เป็นเอ็นจินฐานข้อมูลแบบแฟล็ตไฟล์ ไม่แนะนำให้ใช้ในการผลิต ในบทช่วยสอนนี้เราจะใช้เซิร์ฟเวอร์ PostgreSQL เพื่อจัดเก็บฐานข้อมูล dotCMS
PostgreSQL เป็นระบบฐานข้อมูลเชิงวัตถุและเป็นที่รู้จักในด้านเสถียรภาพและความเร็ว เพิ่มที่เก็บของรุ่นล่าสุดของ PostgreSQL ลงในระบบ
sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm
ติดตั้งเซิร์ฟเวอร์ฐานข้อมูล PostgreSQL
sudo yum -y install postgresql10-server postgresql10-contrib postgresql10
เริ่มต้นฐานข้อมูล
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
เริ่มต้นเซิร์ฟเวอร์ PostgreSQL และเปิดใช้งานให้เริ่มโดยอัตโนมัติเมื่อบูตเครื่อง
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
เปลี่ยนรหัสผ่านสำหรับผู้ใช้ PostgreSQL เริ่มต้น
sudo passwd postgres
เข้าสู่ระบบในฐานะผู้ใช้ PostgreSQL เริ่มต้น
sudo su - postgres
สร้างผู้ใช้ PostgreSQL ใหม่สำหรับ dotCMS
createuser dotcms
PostgreSQL จัดเตรียมpsql
เชลล์เพื่อรันเคียวรีบนเซิร์ฟเวอร์ฐานข้อมูล สลับไปที่เชลล์ PostgreSQL
psql
ตั้งรหัสผ่านสำหรับผู้ใช้ที่สร้างขึ้นใหม่สำหรับฐานข้อมูล dotCMS
ALTER USER dotcms WITH ENCRYPTED password 'DBPassword';
แทนที่รหัสผ่านผู้ใช้ฐานข้อมูลDBPassword
ด้วยรหัสผ่านที่ปลอดภัย สร้างฐานข้อมูลใหม่สำหรับการติดตั้ง dotCMS
CREATE DATABASE dotcms OWNER dotcms;
ออกจากpsql
เปลือก
\q
เปลี่ยนเป็นsudo
ผู้ใช้
exit
ดาวน์โหลดไฟล์เก็บถาวร dotCMS
wget https://dotcms.com/physical_downloads/release_builds/dotcms_4.2.2.tar.gz
คุณสามารถพบการเชื่อมโยงให้เป็นเวอร์ชั่นล่าสุดของโปรแกรมประยุกต์บนที่หน้าดาวน์โหลด dotCMS
สร้างไดเรกทอรีใหม่เพื่อจัดเก็บไฟล์ dotCMS และแตกออกมา
sudo mkdir /opt/dotcms
sudo tar -zxf dotcms*.tar.gz -C /opt/dotcms
เปิดไฟล์คอนฟิกูเรชันฐานข้อมูล
cd /opt/dotcms
sudo nano dotserver/tomcat-*/webapps/ROOT/META-INF/context.xml
ค้นหาH2
บล็อก
<!-- H2 -->
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
ใส่ความคิดเห็นในH2
ส่วนทั้งหมดโดยแทนที่ตัวคั่นความคิดเห็น-->
จากจุดเริ่มต้นของส่วนไปยังจุดสิ้นสุดของส่วน ควรมีลักษณะดังต่อไปนี้
<!-- H2
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
-->
uncomment ส่วน PostgreSQL โดยการลบความคิดเห็นคั่นจากจุดสิ้นสุดของส่วนและวางไว้บนห่อด้านบน-->
POSTGRESQL
ค้นหาusername=
และpassword=
แทนที่ค่าที่มีอยู่ด้วยชื่อผู้ใช้และรหัสผ่านของผู้ใช้ฐานข้อมูล PostgreSQL ของคุณ ถ้าคุณได้ใช้ชื่อฐานข้อมูลอื่นที่ไม่ใช่แล้วคุณจะต้องเปลี่ยนชื่อฐานข้อมูลในdotcms
url=
เมื่อกำหนดค่าแล้วบล็อก PostgreSQL ในไฟล์ควรมีลักษณะดังต่อไปนี้
<!-- POSTGRESQL -->
<Resource name="jdbc/dotCMSPool" auth="Container"
type="javax.sql.DataSource"
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
driverClassName="org.postgresql.Driver"
url="jdbc:postgresql://localhost/dotcms"
username="dotcms" password="DBPassword" maxTotal="60" maxIdle="10" maxWaitMillis="60000"
removeAbandonedOnBorrow="true" removeAbandonedOnMaintenance="true" removeAbandonedTimeout="60" logAbandoned="true"
timeBetweenEvictionRunsMillis="30000" validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
จัดเตรียมสิทธิ์การเรียกใช้งานสำหรับไฟล์เรียกทำงานทั้งหมด
sudo chmod 755 ./bin/*.sh
sudo chmod 755 dotserver/tomcat-*/bin/*.sh
dotCMS ได้รับการติดตั้งบนเซิร์ฟเวอร์ของคุณแล้ว ในการเรียกใช้แอปพลิเคชั่นในทันที
cd /opt/dotcms
sudo bin/startup.sh
คุณจะเห็นผลลัพธ์ต่อไปนี้เมื่อเซิร์ฟเวอร์เริ่มต้นได้สำเร็จ
[user@vultr dotcms]$ sudo bin/startup.sh
Using DOTCMS_HOME = /opt/dotcms/dotserver/tomcat-8.0.18/webapps/ROOT
Using DOTSERVER = dotcms
Using CATALINA_PID = /tmp/dotcms.pid
Using JAVA_OPTS = -Djava.awt.headless=true -Xverify:none -Dfile.encoding=UTF8 -server -XX:+DisableExplicitGC -XX:MaxMetaspaceSize=512m -Xmx1G -XX:+UseG1GC -javaagent:/opt/dotcms/dotserver/tomcat-8.0.18/webapps/ROOT/WEB-INF/lib/byte-buddy-agent-1.6.12.jar -Ddotserver=dotcms
Using CATALINA_BASE: /opt/dotcms/dotserver/tomcat-8.0.18
Using CATALINA_HOME: /opt/dotcms/dotserver/tomcat-8.0.18
Using CATALINA_TMPDIR: /opt/dotcms/dotserver/tomcat-8.0.18/temp
Using JRE_HOME: /
Using CLASSPATH: /opt/dotcms/dotserver/tomcat-8.0.18/bin/bootstrap.jar:/opt/dotcms/dotserver/tomcat-8.0.18/bin/tomcat-juli.jar
Using CATALINA_PID: /tmp/dotcms.pid
Tomcat started.
คำสั่งดังกล่าวจะเริ่มต้นเว็บเซิร์ฟเวอร์ Tomcat 8080
ที่จะให้บริการโปรแกรมประยุกต์บนพอร์ต ในการตรวจสอบว่าเว็บไซต์ dotCMS ใช้งานได้หรือไม่ให้พอร์ตที่ต้องการ8080
ผ่านไฟร์วอลล์ระบบ
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
http://192.168.0.1:8080
เปิดเบราว์เซอร์ที่คุณชื่นชอบและเรียกดู คุณควรเห็นว่าแอปพลิเคชั่นนั้นรันเว็บไซต์ตัวอย่าง หากคุณไม่เห็นเว็บไซต์ของคุณโปรดรอเมื่อการเริ่มต้นครั้งแรกของเซิร์ฟเวอร์ dotCMS ใช้เวลาสองสามนาทีในการเขียนข้อมูลลงในฐานข้อมูล PostgreSQL และสร้างแคช คุณยังสามารถตรวจสอบบันทึกการเริ่มต้น
tail -n 1000 -f /opt/dotcms/dotserver/tomcat-*/webapps/ROOT/dotsecure/logs/dotcms.log
เซิร์ฟเวอร์ dotCMS สามารถเริ่มต้นได้โดยตรงโดยใช้สคริปต์เริ่มต้นที่ระบุในแพ็คเกจตัวติดตั้ง ตามความสะดวกคุณควรตั้งค่าไฟล์ Systemd unit สำหรับเซิร์ฟเวอร์ dotCMS สิ่งนี้จะช่วยให้มั่นใจได้ว่าแอ็พพลิเคชันเซิร์ฟเวอร์จะเริ่มต้นโดยอัตโนมัติเมื่อระบบรีสตาร์ทและล้มเหลว
หยุดการทำงานเซิร์ฟเวอร์ dotCMS โดยใช้สคริปต์การปิดระบบ
sudo bin/shutdown.sh
สร้างผู้ใช้ที่ไม่มีสิทธิใช้งานสำหรับการเรียกใช้เซิร์ฟเวอร์ dotCMS เพื่อเหตุผลด้านความปลอดภัย
sudo adduser -d /opt/dotcms -s /sbin/nologin dotcms
มอบความเป็นเจ้าของไฟล์ให้กับผู้ใช้ dotCMS
sudo chown -R dotcms:dotcms /opt/dotcms
สร้างบริการ Systemd ใหม่
sudo nano /etc/systemd/system/dotcms.service
เติมไฟล์
[Unit]
Description=dotCMS service
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/opt/dotcms/bin/startup.sh
ExecStop=/opt/dotcms/bin/shutdown.sh
User=dotcms
Group=dotcms
Restart=always
[Install]
WantedBy=multi-user.target
เริ่มแอปพลิเคชันและเปิดใช้งานให้เริ่มโดยอัตโนมัติในเวลาบูต
sudo systemctl start dotcms
sudo systemctl enable dotcms
ตรวจสอบให้แน่ใจว่าบริการกำลังทำงานอยู่
sudo systemctl status dotcms
โดยค่าเริ่มต้นเซิร์ฟเวอร์ dotCMS 8080
ฟังบนพอร์ต เราจะกำหนดค่า Nginx เป็น reverse proxy เพื่อให้แอปพลิเคชันสามารถเข้าถึงได้ผ่านมาตรฐานHTTP
และHTTPS
พอร์ต นอกจากนี้เรายังจะกำหนดค่า Nginx ให้ใช้ SSL ที่สร้างขึ้นด้วย Let's Encrypt SSL ฟรี
ติดตั้งเว็บเซิร์ฟเวอร์ Nginx
sudo yum -y install nginx
เริ่มเว็บเซิร์ฟเวอร์และเปิดใช้งานให้เริ่มโดยอัตโนมัติในเวลาบูต
sudo systemctl start nginx
sudo systemctl enable nginx
ติดตั้ง Certbot ซึ่งเป็นแอปพลิเคชันไคลเอนต์สำหรับ Let's Encrypt CA
sudo yum -y install certbot
ก่อนที่คุณจะสามารถขอใบรับรองได้คุณจะต้องอนุญาตให้ใช้พอร์ต80
และ443
หรือมาตรฐานHTTP
และHTTPS
บริการผ่านไฟร์วอลล์ นอกจากนี้ให้ลบพอร์ตออก8080
จากรายการข้อยกเว้นไฟร์วอลล์เนื่องจากไม่จำเป็นต้องใช้อีกต่อไป
sudo firewall-cmd --zone=public --remove-port=8080/tcp --permanent
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload
หมายเหตุ: ในการรับใบรับรองจาก Let's Encrypt CA โดเมนที่จะสร้างใบรับรองนั้นจะต้องชี้ไปที่เซิร์ฟเวอร์ หากไม่มีให้ทำการเปลี่ยนแปลงที่จำเป็นกับระเบียน DNS ของโดเมนและรอให้ DNS เผยแพร่ก่อนทำการขอใบรับรองอีกครั้ง Certbot ตรวจสอบอำนาจโดเมนก่อนที่จะให้ใบรับรอง
สร้างใบรับรอง SSL
sudo certbot certonly --webroot -w /usr/share/nginx/html -d cms.example.com
/etc/letsencrypt/live/cms.example.com/
ใบรับรองที่สร้างขึ้นมีแนวโน้มที่จะถูกเก็บไว้ใน ลองเข้ารหัสใบรับรองหมดอายุใน 90 วันดังนั้นขอแนะนำให้ตั้งค่าการต่ออายุใบรับรองโดยอัตโนมัติโดยใช้งาน Cron
เปิดไฟล์งาน cron
sudo crontab -e
เพิ่มบรรทัดต่อไปนี้ที่ท้ายไฟล์
30 5 * * * /usr/bin/certbot renew --quiet
งาน cron ข้างต้นจะทำงานทุกวันเวลา 5.30 น. หากใบรับรองถึงกำหนดหมดอายุจะมีการต่ออายุโดยอัตโนมัติ
สร้างไฟล์บล็อกเซิร์ฟเวอร์ใหม่สำหรับเว็บไซต์ dotCMS
sudo nano /etc/nginx/conf.d/cms.example.com.conf
เติมไฟล์
server {
listen 80;
server_name cms.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name cms.example.com;
ssl_certificate /etc/letsencrypt/live/cms.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/cms.example.com/privkey.pem;
ssl on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/dotcms.access.log;
location / {
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_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:8080;
proxy_read_timeout 90;
proxy_redirect http://localhost:8080 https://cms.example.com;
}
}
รีสตาร์ทเว็บเซิร์ฟเวอร์ Nginx เพื่อให้การเปลี่ยนแปลงมีผล
sudo systemctl restart nginx
แอปพลิเคชัน dotCMS ได้รับการติดตั้งบนเซิร์ฟเวอร์ของคุณเพื่อใช้งานจริง เข้าถึงแดชบอร์ดการดูแลระบบตามที่อยู่ต่อไปนี้
https://cms.example.com/dotAdmin
เข้าสู่ระบบโดยใช้บัญชีผู้ดูแลระบบเริ่มต้นและ[email protected]
admin
เปลี่ยนรหัสผ่านเริ่มต้นทันทีหลังจากเข้าสู่ระบบ
ขอแสดงความยินดีระบบจัดการเนื้อหา dotCMS ได้รับการติดตั้งบนเซิร์ฟเวอร์ของคุณแล้ว คุณสามารถปรับเปลี่ยนไซต์ตัวอย่างหรือเริ่มสร้างเว็บไซต์ของคุณเองได้
ใช้ระบบที่แตกต่างกันอย่างไร Directus 6.4 CMS เป็นระบบการจัดการเนื้อหาแบบไม่มีหัว (Headless Content Management: CMS) ที่ทรงพลังและยืดหยุ่นซึ่งให้ผู้พัฒนา
ใช้ระบบที่แตกต่างกันอย่างไร Pagekit เป็น CMS โอเพนซอร์สที่เขียนด้วย PHP ซอร์สโค้ดของ Pagekit นั้นโฮสต์บน GitHub คำแนะนำนี้จะแสดงให้คุณเห็นว่า
ใช้ระบบที่แตกต่างกันอย่างไร Fuel CMS เป็นระบบจัดการเนื้อหาที่ใช้ CodeIgniter ซอร์สโค้ดของมันถูกโฮสต์บน GitHub คำแนะนำนี้จะแสดงให้คุณเห็นว่า
ใช้ระบบที่แตกต่างกันอย่างไร Omeka Classic 2.4 CMS เป็นแพลตฟอร์มเผยแพร่ดิจิตอลฟรีและโอเพ่นซอร์สและระบบการจัดการเนื้อหา (CMS) สำหรับการแบ่งปันดิจิต้า
ใช้ระบบที่แตกต่างกันอย่างไร Thelia เป็นเครื่องมือโอเพ่นซอร์สสำหรับการสร้างเว็บไซต์ e-business และการจัดการเนื้อหาออนไลน์ที่เขียนด้วย PHP รหัสแหล่งที่มา Thelia i
ใช้ระบบที่แตกต่างกันอย่างไร Automad เป็นระบบจัดการเนื้อหาแบบโอเพนซอร์ซ (CMS) และเทมเพลตเอนจินที่เขียนด้วย PHP รหัสที่มา Automad ฉัน
ใช้ระบบที่แตกต่างกันอย่างไร 1.0 ตุลาคม CMS เป็นระบบจัดการเนื้อหา (CMS) ที่ง่ายและเชื่อถือได้ฟรีและโอเพ่นซอร์สที่สร้างขึ้นบนเฟรมเวิร์ก Laravel
ใช้ระบบที่แตกต่างกันอย่างไร Redaxscript 3.2 CMS เป็นระบบจัดการเนื้อหา (CMS) ที่ทันสมัยและมีน้ำหนักเบาฟรีและโอเพนซอร์สที่มี rocket-fas
ใช้ระบบที่แตกต่างกันอย่างไร Bolt เป็น CMS โอเพ่นซอร์สที่เขียนด้วย PHP ซอร์สโค้ดของ Bolts นั้นโฮสต์บน GitHub คู่มือนี้จะแสดงวิธีการติดตั้ง Bolt CM
ใช้ระบบที่แตกต่างกันอย่างไร Alfresco Community Edition เป็นเวอร์ชั่นโอเพ่นซอร์สของ Alfresco Content Services มันเขียนใน Java และใช้ PostgreSQL t
ใช้ระบบที่แตกต่างกันอย่างไร WonderCMS เป็นโอเพนซอร์ซ CMS แบบเร็วและเล็กเขียนด้วย PHP รหัสที่มาของ WonderCMS นั้นโฮสต์บน Github คู่มือนี้จะ
ใช้ระบบที่แตกต่างกันอย่างไร Neos เป็นแพลตฟอร์มแอปพลิเคชันเนื้อหาที่มี CMS และกรอบแอปพลิเคชันเป็นหลัก คู่มือนี้จะแสดงวิธีติดตั้ง
ใช้ระบบที่แตกต่างกันอย่างไร PyroCMS เป็น CMS โอเพ่นซอร์สที่เขียนด้วย PHP รหัสที่มา PyroCMS โฮสต์บน GitHub ในคู่มือนี้ให้เดินผ่าน entir
ใช้ระบบที่แตกต่างกันอย่างไร Alfresco Community Edition เป็นเวอร์ชั่นโอเพ่นซอร์สของ Alfresco Content Services มันเขียนใน Java และใช้ PostgreSQL t
ใช้ระบบที่แตกต่างกันอย่างไร เกริ่นนำ Tiki Wiki CMS Groupware หรือที่รู้จักกันในชื่อ Tiki เป็นระบบจัดการเนื้อหาวิกิฟรีและโอเพ่นซอร์ส คุณสมบัติติ๊ก
ใช้ระบบที่แตกต่างกันอย่างไร Introduction BoltWire เป็นระบบจัดการเนื้อหาที่ฟรีและมีน้ำหนักเบาที่เขียนด้วย PHP เมื่อเทียบกับการจัดการเนื้อหาอื่น ๆ ส่วนใหญ่
ใช้ระบบที่แตกต่างกันอย่างไร TextPattern CMS 4.6.2 เป็นระบบจัดการเนื้อหา (CMS) ที่ง่ายยืดหยุ่นและฟรีและโอเพ่นซอร์สที่ช่วยให้นักออกแบบเว็บไซต์
ใช้ระบบที่แตกต่างกันอย่างไร Redaxscript 3.2 CMS เป็นระบบจัดการเนื้อหา (CMS) ที่ทันสมัยและมีน้ำหนักเบาฟรีและโอเพนซอร์สที่มี rocket-fas
ใช้ระบบที่แตกต่างกันอย่างไร TextPattern CMS 4.6.2 เป็นระบบจัดการเนื้อหา (CMS) ที่ง่ายยืดหยุ่นและฟรีและโอเพ่นซอร์สที่ช่วยให้นักออกแบบเว็บไซต์
ใช้ระบบที่แตกต่างกันอย่างไร ProcessWire CMS 3.0 เป็นระบบจัดการเนื้อหา (CMS) ที่ง่ายยืดหยุ่นและมีประสิทธิภาพฟรีและโอเพนซอร์ส ProcessWire CMS 3
ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน
การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane
ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+
อ่านข้อมูลนี้เพื่อทราบว่าปัญญาประดิษฐ์กำลังได้รับความนิยมในหมู่บริษัทขนาดเล็กอย่างไร และเพิ่มโอกาสในการทำให้พวกเขาเติบโตและทำให้คู่แข่งได้เปรียบ
เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม
13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data
คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true
ในขณะที่วิทยาศาสตร์มีวิวัฒนาการไปอย่างรวดเร็ว โดยรับช่วงต่อความพยายามของเราอย่างมาก ความเสี่ยงในการทำให้ตัวเองตกอยู่ในภาวะภาวะเอกฐานที่อธิบายไม่ได้ก็เพิ่มขึ้นเช่นกัน อ่านว่าภาวะเอกฐานอาจมีความหมายสำหรับเราอย่างไร
ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1
AI ในการดูแลสุขภาพได้ก้าวกระโดดอย่างมากจากทศวรรษที่ผ่านมา ดังนั้นอนาคตของ AI ในการดูแลสุขภาพจึงยังคงเติบโตทุกวัน