It is necessary to select, configure, and prepare a server/hosting for hosting the website viar-art.pl, developed on Laravel.
A stable server environment for the Laravel project needs to be deployed with good performance for the Polish market, security, scalability options, and regular backups.
Preferred server options:
- OVHcloud VPS Poland / Warsaw — priority option
- Hetzner Cloud Germany — as an alternative
Please select a server no weaker than:
CPU: at least 2 vCPU
RAM: at least 4 GB, preferably 8 GB
Disk: 50–100 GB SSD/NVMe
OS: Ubuntu 24.04 LTS or the latest stable version of Ubuntu
Location: Poland or the nearest data center to Poland
Backups: daily backups or snapshots are mandatory
SSL: Let’s Encrypt
It is necessary to install and configure:
Nginx
PHP 8.3 or 8.4
PHP-FPM
MySQL 8 or MariaDB
Composer
Node.js + npm, if the project uses Vite/frontend build
Redis for cache/session/queue, if it will be used
Supervisor for Laravel queue workers
Certbot / Let’s Encrypt SSL
Git
Firewall
Fail2ban or similar protection
Laravel Requirements
It is necessary to check and configure the correct operation of Laravel:
SSH access
Composer install/update
correct permissions on folders:
storage
bootstrap/cache
configuration of .env
database connection
configuration of the domain viar-art.pl
configuration of public as web root
configuration of Laravel Scheduler via cron:
* * * * * cd /path/to/project && php artisan schedule:run >> /dev/null 2>&1
check the operation:
cache
sessions
uploads
email sending
admin panel
frontend pages
order forms / contact forms
Security
It is necessary to implement basic server protection:
disable root login by password
configure SSH key access
enable firewall: open only necessary ports:
22 SSH
80 HTTP
443 HTTPS
install Fail2ban
configure regular security updates
restrict access to .env, storage, backup files, and service directories
check file and directory permissions
configure protection against PHP execution in upload directories, if applicable
Performance
It is necessary to optimize the server for Laravel:
php artisan config:cache
php artisan route:cache
php artisan view:cache
It is also advisable to configure:
OPcache
gzip/brotli compression
browser cache headers for static files
Redis cache, if feasible
optimal PHP-FPM parameters
upload size limits, if images will be uploaded to the site
Backups
It is necessary to configure automatic backups:
- daily backup of project files
- weekly backup of the database
- storage of at least 7 recent copies
- separate external storage, not just on the same server
- check restoration from backup
Domain and SSL
It is necessary to:
- connect the domain viar-art.pl
- configure DNS records
- install Let’s Encrypt SSL certificate
- enable automatic SSL renewal
- configure redirects:
- HTTP → HTTPS
- www → non-www or vice versa, choose one primary option
- check the correctness of the canonical URL
Email and Sending Letters
It is necessary to check how the site sends emails:
- SMTP settings in
.env - send a test email
- correctness of SPF/DKIM/DMARC, if emails are sent from the domain viar-art.pl
- ensure that emails from site forms do not go to spam