Cerințe preliminare au fost instalate cu succes.
Am instalat Elastic Stack pe Ubuntu 20.04 LTS. Am urmat toți pașii pe acest link (până la #2. Instalați și configurați Kibana pe Ubuntu de care nu aveam nevoie). Nicio problemă.
După finalizarea instalării, am vizitat: example.com/magento și am primit 403 Forbidden. Înțeleg că aceasta este o problemă de permisiune, dar înainte de a instala Magento, am urmat acest ghid și am setat permisiuni corect, după cum este evidențiat mai jos:
cd /var/www/html/<director de instalare magento>
găsiți var generat de furnizor pub/static pub/media app/etc -type f -exec chmod g+w {} +
găsiți var generat de furnizor pub/static pub/media app/etc -type d -exec chmod g+ws {} +
chown -R :www-data . # Ubuntu
chmod u+x bin/magento
Când am instalat pentru prima dată Magento 2, l-am putut vedea pe domeniul principal fără https și în directorul exemplu/Magento. Cred că problema este în fișierul meu de configurare Nginx și mai precis în SSL/porturi, care sunt după cum urmează:
## Configurați nginx pentru Magento 2
în amonte fastcgi_backend {
server unix:/var/run/php/php7.4-fpm.sock;
}
Server {
rădăcină /var/www/example.com/html/directory;
# Adăugați index.php la listă dacă utilizați PHP
index index.php index.html index.htm index.nginx-debian.html;
nume_server example.com www.example.com;
Locație / {
# Mai întâi încercați să serviți cererea ca fișier, apoi
# ca director, apoi reveniți la afișarea unui 404.
try_files $uri $uri/ /index.php?$args;
}
# treceți scripturile PHP către serverul FastCGI
locație ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
}
# interzice accesul la fișierele .htaccess, dacă rădăcina documentului Apache
# de acord cu cel al lui nginx
#
locație ~ /\.ht {
nega totul;
}
asculta [::]:443 ssl ipv6only=on; # gestionat de Certbot
asculta 443 ssl; # gestionat de Certbot
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; # gestionat de Certbot
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; # gestionat de Certbot
includ /etc/letsencrypt/options-ssl-nginx.conf; # gestionat de Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # gestionat de Certbot
} #closing server tag
## Bloc nou pentru magento
Server {
asculta 8080;
nume_server example.com www.example.com;
setați $MAGE_ROOT /var/www/example.com/html/directory/magento;
# setează $MAGE_MODE implicit;
setați producția $MAGE_MODE;
includ /var/www/example.com/html/directory/magento/nginx.conf.sample;
}
# Configurați un proxy
# sursa: https://devdocs.magento.com/guides/v2.4/install-gde/prereq/es-config-nginx.html
includ /etc/nginx/conf.d/*.conf;
Server {
dacă ($gazdă = www.example.com) {
returnează 301 https://$host$request_uri;
} # gestionat de Certbot
dacă ($gazdă = exemplu.com) {
returnează 301 https://$host$request_uri;
} # gestionat de Certbot
asculta 80 ;
asculta [::]:80 ;
nume_server example.com www.example.com;
întoarce 404; # gestionat de Certbot
}
includ /etc/nginx/conf.d/*.conf;
este legată la un fișier nou /etc/nginx/conf.d/magento_es_auth.conf
cu urmatorul continut:
Server {
asculta 8080;
locație /_cluster/sănătate {
proxy_pass http://localhost:9200/_cluster/health;
}
}
sudo nginx -t
Se intoarce:
nginx: [avertizare] nume de server conflictual „” pe 0.0.0.0:8080, ignorat
nginx: sintaxa fișierului de configurare /etc/nginx/nginx.conf este ok
nginx: fișierul de configurare /etc/nginx/nginx.conf testul a reușit
Reînnoirea certificatului SSL sudo certbot renew --dry-run
a trecut!
nginx.conf.sample