Just an initial portion for now fixing incorrect text and preventing future incorrect text. Eventually, I'd like to fix everything still listed under "ignoredWords" in cspell.json.
2.8 KiB
Server Management
Important
The following assumptions are made:
- You have one
rootuser and one regular user with sudo privileges on the dedicated server.- The regular user with sudo privileges is assumed to have the username
ubuntu.- The project root directory is located at
/var/www/html.- All commands are run from the project root directory.
1. Elevated Shell
All SSH and SFTP operations should be conducted using the non-root user. Use sudo for any commands that require elevated privileges. Do not use the root user directly.
2. File Permissions
Ensure that everything in /var/www/html is owned by www-data:www-data, except for node_modules, which should be owned by root:root.
Set up these permissions with the following commands:
sudo usermod -a -G www-data ubuntu
sudo chown -R www-data:www-data /var/www/html
sudo find /var/www/html -type f -exec chmod 664 {} \;
sudo find /var/www/html -type d -exec chmod 775 {} \;
sudo chgrp -R www-data storage bootstrap/cache
sudo chmod -R ug+rwx storage bootstrap/cache
sudo rm -rf node_modules && sudo bun install && sudo bun run build
3. Handling Code Changes
PHP Changes
If any PHP files are modified, run the following commands to clear the cache, restart the PHP-FPM service, and restart the Laravel queues:
sudo php artisan set:all_cache && sudo systemctl restart php8.3-fpm && sudo php artisan queue:restart
Static Assets (SCSS, JS)
If you make changes to SCSS or JavaScript files, rebuild the static assets using:
bun run build
4. Changing the Domain
-
Update the Environment Variables:
Modify the domain in the
APP_URLandMIX_ECHO_ADDRESSvariables within the.envfile:sudo nano ./.env -
Refresh the TLS Certificate:
Use
certbotto refresh the TLS certificate:certbot --redirect --nginx -n --agree-tos --email=sysop@your_domain.tld -d your_domain.tld -d www.your_domain.tld --rsa-key-size 2048 -
Update the WebSocket Configuration:
Update all domains listed in the WebSocket configuration to reflect the new domain:
sudo nano ./laravel-echo-server.json -
Restart the Chatbox Server:
Reload the Supervisor configuration to apply changes:
sudo supervisorctl reload -
Compile Static Assets:
Rebuild the static assets:
bun run build
5. Meilisearch Maintenance
Refer Meilisearch setup for UNIT3D, specifically the maintenance section, for managing upgrades and syncing indexes.