ใช้งาน WordPress บน OpenBSD 6.5 ด้วย OpenBSDs HTTPD

บทนำ

ยิ่งคุณติดตั้ง OpenBSD ของคุณเป็นค่าเริ่มต้นมากขึ้นเท่านั้นและหากไม่มีแพ็คเกจเพิ่มเติมจำนวนมากก็จะยิ่งปลอดภัยมากขึ้นเท่านั้น ในขณะที่การตั้งค่าทั่วไปสำหรับ WordPress คือการใช้ Apache และ PHP เป็นไปได้แน่นอน (และเป็นที่ต้องการ) เพื่อใช้ httpd ในตัวของ OpenBSD บทช่วยสอนนี้จะช่วยให้คุณเริ่มต้นด้วยการตั้งค่าใบรับรอง Let's Encrypt เว็บเซิร์ฟเวอร์และ WordPress อย่างสมบูรณ์ คุณจะต้องเข้าถึงรูทเพื่อที่จะทำสิ่งนี้ได้

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

หากคุณยังไม่ได้ดำเนินการคุณจะต้องสร้าง/etc/doas.confไฟล์ doasคำสั่งจะเปลี่ยนง่าย OpenBSD sudoสำหรับ

su -
echo "permit nopass keepenv :wheel" > /etc/doas.conf

เราต้องบอก OpenBSD ว่าบรรจุภัณฑ์นั้นอยู่ที่ไหน สิ่งนี้เกิดขึ้นใน/etc/installurlไฟล์

doas su
echo "https://cdn.openbsd.org/pub/OpenBSD" > /etc/installurl
exit

ตอนนี้เราต้องเพิ่ม PHP และโมดูลพิเศษบางอย่างที่ WordPress ต้องการเพื่อจัดการกับสิ่งต่าง ๆ เช่นรูปภาพและการเข้ารหัส เมื่อได้รับแจ้งให้เลือกติดตั้งแพ็คเกจใหม่ล่าสุดของ PHP สิ่งหนึ่งที่คุณต้องทำคือคัดลอกiniไฟล์โมดูลจากไดเรกทอรีตัวอย่างไปยังไฟล์หลัก สิ่งนี้จะต้องทำเพื่อเปิดใช้งานโมดูล PHP เพิ่มเติม

doas pkg_add -r mariadb-client mariadb-server php php-curl php-mysqli pecl73-mcrypt pecl73-imagick 
doas su -
cp /etc/php-7.3.sample/* /etc/php-7.3/.

รับ Let's Encrypt Certificates

OpenBSD มีแอปพลิเคชั่นที่ยอดเยี่ยมที่เรียกว่า acme-client นวัตกรรมเล็กน้อยนี้คือสิ่งที่จะสร้างรหัสบัญชีของคุณรหัสส่วนตัวและรับใบรับรองสำหรับคุณ acme-client ขึ้นอยู่กับการมีเว็บเซิร์ฟเวอร์อยู่ดังนั้นเราจึงกำหนดนิยามเซิร์ฟเวอร์เริ่มต้นอย่างรวดเร็ว

/etc/httpd.confด้วยการแก้ไขที่คุณชื่นชอบสร้าง เราจะเพิ่มคำจำกัดความเซิร์ฟเวอร์อื่น ๆ ลงในไฟล์ในภายหลัง สิ่งที่เราต้องทำตอนนี้คือเตรียม httpd เพื่อดำเนินการตอบสนองต่อความท้าทายเพื่อรับใบรับรอง SSL ฟรีที่ถูกต้อง

prefork 5
types { include "/usr/share/misc/mime.types" }

server "default" {
    listen on egress port 80
    root "/htdocs"
    directory index "index.html"

    location "/.well-known/acme-challenge/*" {
        request strip 2
        root "/acme"
    }
}

/etc/acme-client.confนอกจากนี้ยังใช้โปรแกรมแก้ไขที่คุณชื่นชอบสร้าง

authority letsencrypt {
    api url "https://acme-v01.api.letsencrypt.org/directory"
    account key "/etc/acme/letsencrypt-privkey.pem"
}

authority letsencrypt-staging {
    api url "https://acme-staging.api.letsencrypt.org/directory"
    account key "/etc/acme/letsencrypt-staging-privkey.pem"
}

domain example.com {
    alternative names { www.example.com }
    domain key "/etc/ssl/private/example.com.key"
    domain full chain certificate "/etc/ssl/example.com.fullchain.pem"
    sign with letsencrypt
}

เปิดใช้งานและเริ่ม httpd จากนั้นรับใบรับรองที่ออกให้ คุณจะเห็นว่ามีการออกใบรับรอง

doas rcctl enable httpd php73_fpm
doas rcctl start httpd
doas acme-client -ADFv example.com
doas rcctl stop httpd

การเพิ่มคำจำกัดความเซิร์ฟเวอร์

เพิ่มบรรทัดการกำหนดค่าต่อไปนี้/etc/httpd.confหลังจากกำหนด Let's Encrypt ตั้งค่า httpd เพื่อดำเนินการเปลี่ยนเส้นทางจาก http ไปยัง https เนื่องจากคุณมีใบรับรอง SSL ฟรีและคุณไม่ต้องการเสี่ยงที่จะส่งการเข้าสู่ระบบและรหัสผ่านผ่านลิงค์ที่ไม่ปลอดภัย จดบรรทัดlocation "/posts/*"นี่คือส่วนที่ทำให้ WordPress permalinks ดูสวย นอกจากนี้การกำหนดค่านี้ยังมีวิธีที่จะช่วยป้องกันความพยายามในการเข้าสู่เว็บไซต์ WordPress admin

server "example.com" {
    listen on egress port 80
    alias "www.example.com"
    block return 302 "https://$SERVER_NAME$REQUEST_URI"
}

server "example.com" {
    listen on egress tls port 443
    alias "www.example.com"
    root "/htdocs/example.com
    directory index "index.php"

     location "/posts/*" {
        fastcgi {
             param SCRIPT_FILENAME "/htdocs/example.com/index.php"
             socket "/run/php-fpm.sock"
        }
     }

     location "/wp-json/*" {
        fastcgi {
           param SCRIPT_FILENAME "/htdocs/example.com/index.php"
            socket "/run/php-fpm.sock"
        }
     }

    location "/wp-login.php*" {
        authenticate "WordPress" with "/htdocs/htpasswd"
        fastcgi socket "/run/php-fpm.sock"
     }

    #Uncomment the following lines to disable xmlrpc. You increase security 
    #at the expense of being able to use to use 
    #the Android and iPhone WordPress App.
    #location "xmlrpc.php*" {
    #    block return 404
    #}        

    location "*.php*" {
        fastcgi socket "/run/php-fpm.sock"
     }

    tls {
        certificate "/etc/ssl/example.com.fullchain.pem"
        key "/etc/ssl/private/example.com.key"
    }
}

สร้างไฟล์ชื่อผู้ใช้และรหัสผ่านเพื่อเพิ่มระดับความปลอดภัยให้กับเว็บไซต์ WordPress admin เลือกรหัสผ่านที่ดี สิ่งนี้จะแจ้งให้คุณทราบชื่อผู้ใช้และรหัสผ่านเพื่อเรียกใช้wp-login.phpสคริปต์

doas su
cd /var/www/htdocs
htpasswd htpasswd wp_user
chown www:www htpasswd
chmod 0640 htpasswd

เตรียมและกำหนดค่า MariaDB

MariaDB เป็นทางเลือกแทนที่ของ MySQL เราต้องทำการตั้งค่าเบื้องต้นและการเตรียมฐานข้อมูลสำหรับ WordPress

ก่อนที่เราจะสามารถ���ช้ MariaDB ได้อย่างมีประสิทธิภาพเราต้องอนุญาตให้ mysql daemon ใช้ทรัพยากรมากกว่าค่าเริ่มต้น ในการดำเนินการนี้ให้ทำการเปลี่ยนแปลงดังต่อไปนี้/etc/login.confโดยเพิ่มรายการนี้ที่ด้านล่าง

mysqld:\
    :openfiles-cur=1024:\
    :openfiles-max=2048:\
    :tc=daemon:

เปิดใช้งานและเริ่ม MariaDB ขั้นตอนนี้จะตั้งค่ารหัสผ่านรูทและเลือกที่จะทิ้งฐานข้อมูลทดสอบ เป็นความคิดที่ดีที่จะทำตามคำแนะนำในขั้นตอนการติดตั้งที่ปลอดภัย

 doas mysql_install_db
 doas rcctl enable mysqld
 doas rcctl start mysqld
 doas mysql_secure_installation

สร้างฐานข้อมูล WordPress และผู้ใช้ฐานข้อมูล

mysql -u root -p 
CREATE DATABASE wordpress;
GRANT ALL PRIVILEGES ON wordpress.* TO 'wp_user'@'localhost' IDENTIFIED BY '<password>';
FLUSH PRIVILEGES;
EXIT

ติดตั้งและกำหนดค่า WordPress

WordPress ไม่ได้มีพอร์ต OpenBSD อย่างเป็นทางการมาระยะหนึ่งแล้วเพราะมันใช้งานได้ดีมาก ดาวน์โหลดแยกและย้ายโฟลเดอร์การติดตั้ง WordPress

cd /tmp
wget https://wordpress.org/latest.tar.gz
tar xvfz latest.tar.gz
doas mv wordpress /var/www/htdocs/example.com
chown -R www:www /var/www/htdocs/example.com

เรามีการคัดลอก/etc/resolve.confและการ/etc/hosts /var/www/etcนี่คือเพื่อให้ WordPress สามารถเข้าถึงตลาดได้สำเร็จ คุณจะต้องมีสิ่งนี้เพื่อดาวน์โหลดปลั๊กอินและชุดรูปแบบผ่านทางเว็บไซต์ผู้ดูแลระบบ WordPress

doas mkdir /var/www/etc
doas cp /etc/hosts /var/www/etc/.
doas cp /etc/resolv.conf /var/www/etc/.

เริ่ม httpd php73_fpmและ

doas rcctl start httpd php73_fpm

เรียกดู url ที่คุณใช้ในการกำหนดเซิร์ฟเวอร์ของคุณ คุณจะเห็นวิซาร์ดการติดตั้ง WordPress สำหรับตัวเลือกที่เซิร์ฟเวอร์ฐานข้อมูลแทนที่ localhost 127.0.0.1กับ

เมื่อติดตั้ง WordPress เสร็จแล้วก็ถึงเวลาตั้งค่าลิงก์เพื่อให้พวกเขาดู SEO ที่เป็นมิตรมากขึ้น จากหน้าจอ WordPress Settings -> Permalinksผู้ดูแลระบบให้ไปที่ คลิกที่และประเภทCustom Structure /posts/%postname%หลังจากทำการเปลี่ยนแปลงนี้ให้คลิกที่Save Changesปุ่ม ตอนนี้คุณมีลิงค์ที่ดูดีกว่ามาก ตัวอย่างเช่นลิงก์ถาวรจะมีลักษณะเช่นนี้:https://example.com/posts/example-blog-post

ฝากความเห็น

วิธีการติดตั้ง 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