ใช้งาน 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



Leave a Comment

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

ภาวะเอกฐานทางเทคโนโลยี: อนาคตอันห่างไกลของอารยธรรมมนุษย์?

ภาวะเอกฐานทางเทคโนโลยี: อนาคตอันห่างไกลของอารยธรรมมนุษย์?

ในขณะที่วิทยาศาสตร์มีวิวัฒนาการไปอย่างรวดเร็ว โดยรับช่วงต่อความพยายามของเราอย่างมาก ความเสี่ยงในการทำให้ตัวเองตกอยู่ในภาวะภาวะเอกฐานที่อธิบายไม่ได้ก็เพิ่มขึ้นเช่นกัน อ่านว่าภาวะเอกฐานอาจมีความหมายสำหรับเราอย่างไร

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ผลกระทบของปัญญาประดิษฐ์ในการดูแลสุขภาพ 2021

ผลกระทบของปัญญาประดิษฐ์ในการดูแลสุขภาพ 2021

AI ในการดูแลสุขภาพได้ก้าวกระโดดอย่างมากจากทศวรรษที่ผ่านมา ดังนั้นอนาคตของ AI ในการดูแลสุขภาพจึงยังคงเติบโตทุกวัน