SSLEngine on SSLCertificateFile /etc/ssl/certs/thinhnam.net/fullchain.pem SSLCertificateKeyFile /etc/ssl/private/thinhnam.net/privkey.pem
# Logs access_log /var/log/nginx/thinhnam.net_access.log; error_log /var/log/nginx/thinhnam.net_error.log;
sudo apt install certbot python3-certbot-nginx # for Nginx # or sudo apt install certbot python3-certbot-apache # for Apache sudo certbot --nginx -d thinhnam.net -d www.thinhnam.net
ln -s /etc/nginx/sites-available/thinhnam.net /etc/nginx/sites-enabled/ nginx -t && systemctl reload nginx Create /etc/apache2/sites-available/thinhnam.net.conf Thinhnam.net Configuration
# PHP-FPM (if using PHP) location ~ \.php$ include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
server listen 80; listen [::]:80; server_name thinhnam.net www.thinhnam.net; return 301 https://$server_name$request_uri;
ErrorLog $APACHE_LOG_DIR/thinhnam_error.log CustomLog $APACHE_LOG_DIR/thinhnam_access.log combined </VirtualHost> Obtain a free Let’s Encrypt certificate: SSLEngine on SSLCertificateFile /etc/ssl/certs/thinhnam
location / try_files $uri $uri/ =404;
<VirtualHost *:80> ServerName thinhnam.net ServerAlias www.thinhnam.net Redirect permanent / https://thinhnam.net/ </VirtualHost> <VirtualHost *:443> ServerName thinhnam.net ServerAlias www.thinhnam.net DocumentRoot /var/www/thinhnam.net/html
# Deny hidden files location ~ /\. deny all; server listen 80
server listen 443 ssl http2; listen [::]:443 ssl http2; server_name thinhnam.net www.thinhnam.net;
<Directory /var/www/thinhnam.net/html> Options -Indexes +FollowSymLinks AllowOverride All Require all granted </Directory>