Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
Memandangkan kecenderungan OpenBSD untuk keselamatan, masuk akal untuk mengaktifkan laman web WordPress anda dengannya, terutamanya kerana WordPress dan PHP cenderung menjadi sasaran bergerak untuk anak-anak skrip. Oleh kerana httpd OpenBSD direka terutamanya untuk melayani sehingga halaman statik, operasi POST dikhaskan untuk proses fastcgi dan slowcgi. Ini menyukarkan pelakon nakal untuk berpotensi menghentikan proses pelayan web dan mendapatkan akses ke pelayan anda. Operasi POST disalurkan ke proses fastcgi dan menggunakan jurubahasa luaran. Artikel ini akan membincangkan bukan sahaja menubuhkan laman WordPress anda tetapi beberapa teknik penyelenggaraan asas dan bagaimana untuk membuat sandaran dan memulihkan laman web anda dan pangkalan datanya. Di mana sahaja anda melihat example.com
sebagai domain, ganti dengan domain anda.
Sekiranya anda belum melakukannya, anda perlu membuat /etc/doas.conf
fail. Perintah doas adalah pengganti mudah OpenBSD untuk sudo. Untuk kemudahan, saya telah menambahkan pilihan nopass supaya anda tidak perlu menaip semula kata laluan anda semasa menggunakan doas. Sekiranya anda memilih untuk tidak memilikinya, cuma tinggalkan nopass.
su -
echo "permit nopass keepenv :wheel" > /etc/doas.conf
Bergantung pada bagaimana OpenBSD dikemas untuk penyebaran, kadang-kadang pengurus pakej mungkin tidak mempunyai konfigurasi repositori. Untuk mengkonfigurasi repositori rasmi OpenBSD, kami perlu membuat /etc/installurl
fail.
doas su
echo "https://cdn.openbsd.org/pub/OpenBSD" > /etc/installurl
exit
Sekarang kita perlu menambah PHP dan beberapa modul tambahan yang diperlukan oleh WordPress untuk menangani perkara seperti imej dan penyulitan. Apabila digesa, pilih untuk memasang paket terbaru PHP. Satu perkara yang perlu anda lakukan ialah menyalin fail modul ini dari direktori sampel ke yang utama. Ini perlu dilakukan untuk membolehkan modul PHP tambahan.
doas pkg_add -r mariadb-client mariadb-server php php-curl php-mysqli php-zip pecl73-mcrypt pecl73-imagick wget
doas cp /etc/php-7.3.sample/* /etc/php-7.3/.
Di dunia hari ini, laman web mesti disampaikan melalui SSL atau muka yang dikecilkan oleh enjin carian. Nasib baik, OpenBSD mempunyai aplikasi hebat yang disebut acme-client. Pelanggan acme secara automatik akan menghasilkan kunci persendirian baru dan meminta sijil sah yang baru. Pelanggan acme bergantung kepada mempunyai pelayan web di tempat supaya kami perlu membuat definisi pelayan lalai cepat.
Dengan editor kegemaran anda, buat /etc/httpd.conf
. Kami akan menambahkan definisi pelayan lain ke fail kemudian. Buat masa ini ini akan menjadi cukup supaya fungsi acme-client berfungsi dengan baik.
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"
}
}
Juga menggunakan editor kegemaran anda, buat /etc/acme-client.conf
.
authority letsencrypt {
api url "https://acme-v02.api.letsencrypt.org/directory"
account key "/etc/acme/letsencrypt-privkey.pem"
}
authority letsencrypt-staging {
api url "https://acme-staging-v02.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.crt"
sign with letsencrypt
}
Sekarang kita perlu mendayakan dan memulakan httpd. Setelah kami melakukan ini, maka kami dapat menjalankan acme-client dan menunggunya untuk mendapatkan sijil baru kami yang baru. Setelah kami melakukan ini, kami akan menambah tugas cron untuk meminta permintaan yang baru setiap 7 hari supaya kami tidak perlu risau tentang tamat tempoh.
doas rcctl enable httpd
doas rcctl start httpd
doas acme-client -v example.com
Sekarang kita buat kerja cron. Tambahkan baris ini di bawah kemasukan yang terakhir. Dalam kes ini, kami meminta acme-client untuk meminta sijil baru pada pukul 1:00 pagi setiap hari Sabtu.
doas crontab -e
0 1 * * 6 acme-client -F example.com && rcctl reload httpd
Kini sudah tiba masanya untuk menyediakan httpd untuk WordPress. Daripada meletakkan definisi laman web kami secara langsung /etc/httpd.conf
, kami akan meletakkannya dalam fail berasingan yang disebut /etc/httpd.conf.example.com
dan memasukkannya ke dalam fail konfigurasi utama. Amnya adalah amalan yang baik untuk memisahkan kedua-dua, mengekalkan definisi di seluruh halaman dalam fail konfigurasi utama anda dan tetapan khusus domain dalam yang lain.
Tambahkan baris berikut ke bahagian bawah /etc/httpd.conf
fail anda :
include "/etc/httpd.conf.example.com"
Sekarang menggunakan editor kegemaran anda, buatlah /etc/httpd.conf.example.com
. Untuk kemudahan, kami akan membuat fail log berasingan untuk domain anda. Ini menjadikannya lebih mudah apabila cuba mengatasi masalah yang berpotensi dengan laman web anda.
server "example.com" {
listen on egress port 80
alias "www.example.com"
# Automatically redirect to SSL
block return 302 "https://$SERVER_NAME$REQUEST_URI"
log {
access "access-example.com"
error "error-example.com"
}
}
server "example.com" {
listen on egress tls port 443
alias "www.example.com"
root "/htdocs/wordpress"
directory index "index.php"
log {
access "access-example.com"
error "error-example.com"
}
tcp { nodelay, backlog 10 }
tls {
certificate "/etc/ssl/example.com.crt"
key "/etc/ssl/private/example.com.key"
}
hsts {
# max-age value is the number of seconds in 1 year
max-age 31556952
preload
subdomains
}
location "/.well-known/acme-challenge/*" {
root "/acme"
request strip 2
}
location "/posts/*" {
fastcgi {
param SCRIPT_FILENAME \
"/htdocs/wordpress/index.php"
socket "/run/php-fpm.sock"
}
}
location "/page/*" {
fastcgi {
param SCRIPT_FILENAME \
"/htdocs/wordpress/index.php"
socket "/run/php-fpm.sock"
}
}
location "/feed/*" {
fastcgi {
param SCRIPT_FILENAME \
"/htdocs/wordpress/index.php"
socket "/run/php-fpm.sock"
}
}
location "/comments/feed/*" {
fastcgi {
param SCRIPT_FILENAME \
"htdocs/wordpress/index.php"
socket "/run/php-fpm.sock"
}
}
location "/wp-json/*" {
fastcgi {
param SCRIPT_FILENAME \
"htdocs/wordpress/index.php"
socket "/run/php-fpm.sock"
}
}
location "/wp-login.php*" {
authenticate "WordPress" with "/htdocs/htpasswd"
fastcgi socket "/run/php-fpm.sock"
}
location "*.php*" {
fastcgi socket "/run/php-fpm.sock"
}
}
Untuk keselamatan yang lebih besar, kami akan melaksanakan permintaan tambahan untuk nama pengguna dan kata laluan semasa log masuk ke laman web pentadbiran WordPress. Oleh kerana anak-anak skrip suka berulang kali mencuba dan menggunakan log masuk WordPress, kami membuat log masuk tambahan di peringkat pelayan web. Biasanya, mereka mendapat kira-kira 5 tekaan sebelum WordPress melontarkan 401 ralat Tidak Sah.
doas su
cd /var/www/htdocs
doas htpasswd htpasswd <user>
doas chown www:www htpasswd
doas chmod 0640 htpasswd
doas rcctl reload httpd
Kita harus membuat perubahan dalam php supaya pemasangan WordPress anda dapat menghantar e-mel. WordPress dan beberapa pemalam bergantung pada kemampuan untuk menghantar e-mel yang memberitahu anda mengenai peningkatan, amaran, dan perubahan. Ketidakupayaan untuk menghantar e-mel boleh mematahkan ciri-ciri WordPress tertentu. Oleh kerana httpd berjalan di persekitaran chroot, kita harus memberitahu php cara menghantar e-mel. Tambahan pula, kita perlu melakukan beberapa tweeks prestasi untuk php-fpm.
Cari sendmail_path
garisan masuk /etc/php-7.3.ini
dan buat perubahan berikut:
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
; sendmail_path =
sendmail_path = /bin/femail -t -i
Cari baris berikut /etc/php-fpm.conf
dan ubahnya seperti berikut:
pm.start_servers = 5
pm.min_spare_servers = 1
pm.max_spare_servers = 6
Langkah seterusnya adalah untuk mendayakan dan memulakan php-fpm.
doas rcctl enable php73_fpm
doas rcctl start php73_fpm
MariaDB adalah pengganti fork MySQL. Kita perlu melakukan konfigurasi awal dan kerja penyediaan pangkalan data untuk WordPress.
Sebelum kita dapat menggunakan MariaDB dengan berkesan, kita perlu membenarkan daemon mysql menggunakan lebih banyak sumber berbanding default. Untuk melakukan ini, buat perubahan berikut /etc/login.conf
dengan menambah entri ini di bahagian bawah.
mysqld:\
:openfiles-cur=1024:\
:openfiles-max=2048:\
:tc=daemon:
Kita perlu membuat beberapa perubahan dalam fail konfigurasi MariaDB, /etc/my.cnf
. Dengan memiliki klien dan pelayan mysql berkomunikasi melalui soket domain UNIX dan bukannya TCP, penggunaan memori pelayan anda dapat disimpan lebih rendah. Anda tidak perlu membuat semua perubahan yang dicadangkan di bawah. Kedua-dua perkara yang penting untuk diubah adalah socket
garis dan untuk memberi komen bind-address
garis itu. Ini menggerakkan soket di dalam /var/www
persekitaran chroot supaya WordPress boleh menyambung ke pangkalan data. Dengan mengulas bind-address
garis itu, kami menghalang MariaDB daripada mendengar pada port TCP.
[client-server]
socket=/var/www/var/run/mysql/mysql.sock
#port=3306
# This will be passed to all MariaDB clients
[client]
#password=my_password
# The MariaDB server
[mysqld]
# To listen to all IPv4 network addresses, use "bind-address = 0.0.0.0"
#bind-address=127.0.0.1
# Directory where you want to put your data
#data=/var/mysql
# This is the prefix name to be used for all log, error and replication files
#log-basename=mysqld
# Logging
#log-bin=/var/mysql/mariadb-bin
#max_binlog_size=100M
#binlog_format=row
#expire_logs_days = 7
#general-log
#slow_query_log
query_cache_type = 1
query_cache_limit = 1M
query_cache_size = 16M
Kini kita perlu menjalankan pemasangan binari MariaDB dan membolehkan dan memulakan MariaDB. Prosedur ini akan menetapkan kata laluan root dan secara pilihan drop database pengujian. Adalah idea yang baik untuk mengikuti semua cadangan dalam peringkat pemasangan yang selamat.
doas mysql_install_db
doas rcctl enable mysqld
doas rcctl start mysqld
doas mysql_secure_installation
Buat pangkalan data WordPress dan pengguna pangkalan data. Ingat untuk menggantikan <wp_user>
dengan nama pengguna pangkalan data pilihan anda dan <password>
dengan kata laluan kompleks yang anda pilih.
mysql -u root -p
CREATE DATABASE wordpress;
GRANT ALL PRIVILEGES ON wordpress.* TO '<wp_user>'@'localhost' IDENTIFIED BY '<password>';
FLUSH PRIVILEGES;
EXIT
WordPress tidak mempunyai pelabuhan OpenBSD rasmi untuk beberapa waktu kerana ia cukup berfungsi keluar dari kotak. Muat turun, ekstrak, dan pindahkan folder pemasangan WordPress.
cd /tmp
wget https://wordpress.org/latest.tar.gz
tar xvfz latest.tar.gz
doas mv wordpress /var/www/htdocs/.
doas chown -R www:www /var/www/htdocs/wordpress
doas chmod 0755 /var/www/htdocs/wordpress
cd /var/www/htdocs/wordpress/
find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;
Kita perlu menyalin /etc/resolv.conf
dan /etc/hosts
ke direktori yang akan kita buat dipanggil /var/www/etc
. Ini adalah supaya WordPress berjaya mencapai pasaran. Anda memerlukan ini untuk memuat turun plugin dan tema melalui laman admin WordPress. Ia juga penting untuk plugin Jet Pack berfungsi dengan baik.
doas mkdir /var/www/etc
doas cp /etc/hosts /var/www/etc/.
doas cp /etc/resolv.conf /var/www/etc/.
Dari sini, layari laman web WordPress anda menggunakan https melalui URL yang anda nyatakan dalam definisi pelayan web. Jika semuanya berfungsi dengan betul, anda harus melihat wizard memasang WordPress. Apabila anda mendapat pilihan untuk menentukan pelayan pangkalan data, anda harus menggunakannyalocalhost:/var/run/mysql/mysql.sock
Setelah WordPress dipasang, sudah tiba masanya untuk menyediakan permalink agar mereka kelihatan lebih mesra SEO. Dari skrin admin WordPress, pergi ke Settings -> Permalinks
. Klik pada Struktur Tersuai dan ketik /posts/%postname%
. Setelah membuat perubahan ini, klik butang Simpan Perubahan. Anda kini mempunyai pautan mencari yang lebih bagus. Sebagai contoh, permalink akan kelihatan seperti ini:https://example.com/posts/example-blog-post
Dari sini, anda sepatutnya mempunyai laman web asas yang bersedia untuk pergi. Pastikan anda memasang pemalam seperti Jet Pack dan WP-Super Cache. Plugin WP-Super Cache membantu mempercepatkan laman web anda dengan melayari halaman web dan menghilangkan carian pangkalan data yang tetap dan JetPack memberikan anda beberapa statistik penonton yang sangat baik.
Ia harus pergi tanpa mengatakan bahawa sokongan laman web dan pangkalan data anda sangat penting. Syukurlah, ini adalah perkara yang mudah dilakukan. Sandaran kedua-dua direktori rumah anda dan kemudian anda boleh menyalinnya melalui scp ke lokasi lain. Anda juga boleh membuat tangkapan gambar melalui Panel Kawalan Vultr. Adalah idea yang baik untuk melakukan kedua-duanya.
cd /var/www/htdocs
tar cvfz wordpress.tgz wordpress/
cp wordpress.tgz /home/user
mysqldump -u root -p wordpress > wordpress.sql && gzip wordpress.sql
Sekiranya pangkalan data anda rosak dan pemulihan diperlukan, lakukan perkara berikut:
gunzip wordpress.sql.gz
mysql -u root -p wordpress
DROP USER '<user>'@'localhost';
DROP DATABASE wordpress;
CREATE DATABASE wordpress;
GRANT ALL PRIVILEGES ON wordpress.* TO '<wp_user>'@'localhost' IDENTIFIED BY '<password>';
FLUSH PRIVILEGES;
EXIT
mysql -u root -p wordpress < wordpress.sql
Sekiranya anda membuat perubahan pada fail skrip WordPress yang merosakkan sesuatu, anda boleh memasang semula WordPress melalui panel kawalan pentadbir. Cari Updates
bahagian dan klik pada pautan. Cari butang yang dilabelkan Re-install Now
. Ini sekurang-kurangnya akan memperbaiki yang rosak tetapi sebahagian besar konfigurasi anda harus tetap utuh.
Sekiranya pangkalan data anda dalam keadaan baik, tetapi anda secara tidak sengaja telah mengedit fail dan memecahkan sesuatu sehingga anda tidak dapat sampai ke konsol pentadbir WordPress, kemudian lakukan perkara berikut:
rm /var/www/htdocs/wordpress
cp /home/user/wordpress.tgz /tmp
tar xvfz wordpress.tgz
mv wordpress /var/www/htdocs/.
chown -R www:www /var/www/htdocs/wordpress
cd /var/www/htdocs/wordpress
find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;
Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.
Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.
Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.
Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.
CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?
Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.
Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!
Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.
Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut