O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1
O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1
Acest tutorial demonstrează OpenBSD ca soluție de comerț electronic folosind PrestaShop și Apache.
Apache este necesar deoarece PrestaShop are cerințe complexe de rescriere a adreselor URL care nu sunt acceptate de serverul Web integrat al OpenBSD, httpd. Acest tutorial utilizează certificate auto-semnate. Vă rugăm să utilizați un certificat verificat pentru producție.
Creați temporar un utilizator obișnuit permis să folosească doasfără parolă. Acest acces va fi eliminat după instalare.
user add -c "Example User" -m -G wheel -L staff auser
passwd auser
echo 'permit nopass keepenv :wheel' > /etc/doas.conf
Adăugați pachetul de pachete OpenBSD.
echo 'https://cdn.openbsd.org/pub/OpenBSD' > /etc/installurl
Redirecționați e-mailuri zilnice de stare și securitate la adresa dvs.
echo 'hostmaster@example.com' > /root/.forward
Setați numele de gazdă al serverului.
echo 'www.example.com' > /etc/myname
hostname www.example.com
Adăugați adresa FQDN și IP a serverului /etc/hosts.
Înlocuiți- 192.0.2.1vă cu adresa dvs. IP Vultr.
127.0.0.1 localhost
::1 localhost
192.0.2.1 www.example.com
Adăugați pachetele necesare pentru PrestaShop și Apache. Alegeți cele mai recente versiuni atunci când vi se solicită.
doas su
pkg_add apache-httpd php php-curl php-gd php-intl php-pdo_mysql php-zip mariadb-client mariadb-server wget unzip
Crearea unui certificat SSL autofirmat pentru testare. Setați Common Name pe FQDN al serverului dvs., de exemplu www.example.com.
openssl req -x509 -new -nodes -newkey rsa:4096 -keyout /etc/ssl/private/example.com.key -out /etc/ssl/example.com.crt -days 3650 -sha256
chmod 0600 /etc/ssl/private/example.com.key
Găsiți adresa URL pentru cea mai recentă versiune a PrestaShop , descărcați /tmpși extrageți în /var/www/htdocs/prestashop.
cd /tmp
wget <https://download.prestashop.com/download/releases/prestashop_1.7.6.4.zip>
unzip prestashop_1.7.6.4.zip -d /var/www/htdocs/prestashop
chown -R www:www /var/www/htdocs/prestashop
Configurați firewallul pentru a bloca tot traficul de intrare, cu excepția ssh , www și https .
Realizați o copie de rezervă a /etc/pf.conf.
cp /etc/pf.conf /etc/pf.conf.bak
Modificați /etc/pf.confdupă cum se arată.
set skip on lo
block in
pass out
pass in on egress inet proto tcp to port {ssh, www, https} \
flags S/SA keep state
Testați și activați regulile firewallului.
doas pfctl -nf /etc/pf.conf
doas pfctl -f /etc/pf.conf
Backup-ul /etc/mail/smtpd.conffișierului.
cp /etc/mail/smtpd.conf /etc/mail/smtpd.conf.bak
Editați /etc/mail/smtpd.confașa cum se arată mai jos.
Note: * Definiția tabelului pentru secrete conține numele de utilizator și parola pentru releul de poștă. * Acțiunea de ieșire se uită în sus numele de utilizator și parola sub eticheta prestashopîn /etc/mail/secretsși releele e - mail prin serverul de e-mail.
table aliases file:/etc/mail/aliases
table secrets file:/etc/mail/secrets
listen on lo0
action "local_mail" mbox alias <aliases>
action "outbound" relay host smtp+tls://prestashop@mail.example.com:587 \
tls no-verify auth <secrets>
match from local for local action "local_mail"
match from local for any action "outbound"
Crea /etc/mail/secrets
Înlocuiți adresa de e-mail și parola cu datele de acreditare pe care le utilizați pentru serverul dvs. de e-mail.
echo "prestashop user@example.com:password" > /etc/mail/secrets
Setați permisiunile la securizare /etc/mail/secrets
chmod 0600 /etc/secrets
Începeți fișierul de configurare pentru erori și reporniți demonul smtpd.
smtpd -n
rcctl restart smtpd
Configurați procesul PHP-FPM pentru a asculta o priză TCP în loc de o priză de domeniu UNIX.
Faceți următoarea modificare mai jos pentru /etc/php-fpm.conffișier.
...
; If using a TCP port, never expose this to a public network.
;listen = /var/www/run/php-fpm.sock
listen = 127.0.0.1:9000
Faceți unele modificări suplimentare mediului PHP din /etc/php-7.3.ini. Acest nume de fișier se poate modifica ușor dacă versiunea este mai nouă decât 7.3. Aceste schimbari:
Configurați PHP pentru a trimite email prin sendmail.
; Default Value: not set
;chroot = /var/www
...
; Maximum allowed size for uploaded files.
; <http://php.net/upload-max-filesize>
upload_max_filesize = 6M
...
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
; <http://php.net/sendmail-path>
;sendmail_path =
sendmail_path = /usr/sbin/sendmail -t -i
...
; Whether to allow the treatment of URLs (like <http://> or <ftp://)> as files.
; <http://php.net/allow-url-fopen>
allow_url_fopen = On
...
; Maximum size of POST data that PHP will accept.
; Its value may be 0 to disable the limit. It is ignored if POST data reading
; is disabled through enable_post_data_reading.
; <http://php.net/post-max-size>
post_max_size = 12M
Activați pluginurile PHP.
cp /etc/php-7.3.sample/* /etc/php-7.3/.
Activați și porniți demonul PHP-FPM. Numele daemon ar putea fi ușor diferit dacă versiunea este mai nouă.
rcctl enable php73_fpm
rcctl start php73_fpm
MariaDB oferă backend-ul bazei de date pentru PrestaShop. Deoarece MariaDB are nevoie de mai multe fișiere deschise decât le permite clasa implicită, creați o clasă specială în /etc/login.conf.
În partea de jos a fișierului, adăugați următoarele linii:
mysqld:\
:openfiles-cur=1024:\
:openfiles-max=2048:\
:tc=daemon:
Instalați MariaDB.
doas su
mysql_install_db
rcctl enable mysqld
rcctl start mysqld
Configurați securitatea MariaDB.
mysql_secure_installation
Creați baza de date PrestaShop. Utilizați o parolă puternică.
mysql -u root
CREATE DATABASE prestashop;
GRANT ALL PRIVILEGES ON prestashop.* TO 'prestashop'@'localhost' IDENTIFIED BY 'password123';
FLUSH PRIVILEGES;
EXIT
Back up /etc/apache2/httpd2.conf
cp /etc/apache2/httpd2.conf /etc/apache2/httpd2.conf.bak
Faceți următoarele modificări /etc/apache2/httpd2.conf, utilizând #pentru a activa și dezactiva modulele.
Listen 443
...
LoadModule mpm_event_module /usr/local/lib/apache2/mod_mpm_event.so
#LoadModule mpm_prefork_module /usr/local/lib/apache2/mod_mpm_prefork.so
LoadModule proxy_module /usr/local/lib/apache2/mod_proxy.so
LoadModule proxy_fcgi_module /usr/local/lib/apache2/mod_proxy_fcgi.so
LoadModule ssl_module /usr/local/lib/apache2/mod_ssl.so
LoadModule rewrite_module /usr/local/lib/apache2/mod_rewrite.so
...
ServerAdmin webmaster@example.com
ServerName 192.0.2.1:80
În /etc/apache2/httpd2.confpartea de jos a fișierului apar mai multe modificări . Eliminați #din declarațiile incluse indicate.
Adaugă ultima linie de gazduire virtuală.
# Server-pool management (MPM specific)
Include /etc/apache2/extra/httpd-mpm.conf
...
# Virtual Hosts
IncludeOptional /etc/apache2/sites/*.conf
Creați /etc/apache2/sitesdirectorul.
mkdir /etc/apache2/sites
Creați /etc/apache2/sites/example.confcu următoarele informații:
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
ServerAdmin webmaster@example.com
DocumentRoot "/var/www/htdocs/prestashop"
<Directory "/var/www/htdocs/prestashop">
Options -Indexes +Multiviews +FollowSymLinks
AllowOverride All
<Limit GET POST OPTIONS>
</Limit>
Require all granted
</Directory>
</VirtualHost>
<VirtualHost *:443>
ServerName example.com
ServerAlias www.example.com
ServerAdmin webmaster@example.com
DocumentRoot "/var/www/htdocs/prestashop"
<Directory "/var/www/htdocs/prestashop">
Options -Indexes +Multiviews +FollowSymLinks
AllowOverride All
<Limit GET POST OPTIONS>
</Limit>
Require all granted
</Directory>
SSLEngine On
SSLCertificateFile "/etc/ssl/example.com.crt"
SSLCertificateKeyFile "/etc/ssl/private/example.com.key"
SSLCipherSuite HIGH:!aNULL
</VirtualHost>
Configurați modulul proxy Apache adăugând următoarele /etc/apache2/sites/example.conf
<IfModule proxy_module>
<IfModule dir_module>
DirectoryIndex index.php
</IfModule>
<FilesMatch "\.php$">
SetHandler "proxy:fcgi://127.0.0.1:9000"
</FilesMatch>
</IfModule>
Testați configurația, apoi activați și porniți Apache.
apachectl configtest
rcctl enable apache2
rcctl start apache2
Asigurați-vă că Apache ascultă pe porturile 80 și 443.
netstat -ln -finet
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address (state)
tcp 0 0 *.443 *.* LISTEN
tcp 0 0 127.0.0.1.25 *.* LISTEN
tcp 0 0 *.22 *.* LISTEN
tcp 0 0 *.80 *.* LISTEN
tcp 0 0 127.0.0.1.3306 *.* LISTEN
tcp 0 0 127.0.0.1.9000 *.* LISTEN
Căutați pe site-ul dvs. web la http://www.example.com. Se va lansa expertul de instalare PrestaShop.
După ce finalizați instalarea, luați notă de legătura administrativă și de ștergere a directorului /var/www/htdocs/prestashop/install.
Activați SSL.
Schimbați parola administrativă.
Copia de rezervă a magazinului și a bazei de date a acestuia:
cd /var/www/htdocs
doas tar cvfz /home/auser/prestashop.tar.gz prestashop/
doas mysqldump -u prestashop -p prestashop | gzip -4 > /home/auser/prestashop.sql.tar.gz
doas chown auser:auser /home/auser/prestashop*
Eliminați accesul doas pentru contul de utilizator prin recrearea doas.conffișierului.
echo 'permit keepenv :wheel' > /etc/doas.conf
O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1
Citiți blogul pentru a cunoaște diferitele straturi din Arhitectura Big Data și funcționalitățile acestora în cel mai simplu mod.
Mulți dintre voi cunoașteți Switch care va fi lansat în martie 2017 și noile sale funcții. Pentru cei care nu știu, am pregătit o listă de funcții care fac din „Switch” un „gadget obligatoriu”.
Aștepți ca giganții tehnologiei să-și îndeplinească promisiunile? vezi ce a ramas nelivrat.
Citiți asta pentru a afla cum devine populară inteligența artificială în rândul companiilor la scară mică și cum crește probabilitățile de a le face să crească și de a le oferi concurenților avantaje.
Pe măsură ce Știința Evoluează într-un ritm rapid, preluând multe dintre eforturile noastre, crește și riscurile de a ne supune unei Singularități inexplicabile. Citiți, ce ar putea însemna singularitatea pentru noi.
CAPTCHA a devenit destul de dificil de rezolvat pentru utilizatori în ultimii ani. Va fi capabil să rămână eficient în detectarea spam-ului și a botului în viitor?
Ce este telemedicina, îngrijirea medicală la distanță și impactul acesteia asupra generației viitoare? Este un loc bun sau nu în situația de pandemie? Citiți blogul pentru a găsi o vedere!
Poate ați auzit că hackerii câștigă mulți bani, dar v-ați întrebat vreodată cum câștigă acești bani? sa discutam.
Recent, Apple a lansat macOS Catalina 10.15.4 o actualizare suplimentară pentru a remedia problemele, dar se pare că actualizarea provoacă mai multe probleme care duc la blocarea mașinilor Mac. Citiți acest articol pentru a afla mai multe