194 lines
4.4 KiB
Markdown
194 lines
4.4 KiB
Markdown
# 🔧 Troubleshooting Guide for 404 and 502 Errors
|
|
|
|
## Quick Diagnosis
|
|
|
|
Run these commands on your Ubuntu server to diagnose the issue:
|
|
|
|
```bash
|
|
# 1. Check if files exist
|
|
ls -la /var/www/dexarmarket/browser/index.html
|
|
|
|
# 2. Check nginx config syntax
|
|
sudo nginx -t
|
|
|
|
# 3. Check nginx error logs (THIS IS MOST IMPORTANT!)
|
|
sudo tail -30 /var/log/nginx/error.log
|
|
|
|
# 4. Check if nginx is running
|
|
sudo systemctl status nginx
|
|
|
|
# 5. Test API from server
|
|
curl -v https://api.dexarmarket.ru:445/ping
|
|
```
|
|
|
|
## Error: 404 Not Found
|
|
|
|
### Cause: Files not uploaded or wrong path
|
|
|
|
**Solution 1: Verify files are on server**
|
|
```bash
|
|
ls -la /var/www/dexarmarket/browser/
|
|
```
|
|
|
|
Should show:
|
|
- `index.html`
|
|
- `main-*.js`
|
|
- `chunk-*.js`
|
|
- `polyfills-*.js`
|
|
- `styles-*.css`
|
|
- `assets/` folder
|
|
|
|
**If files are missing:**
|
|
```bash
|
|
# From your local machine:
|
|
cd F:\dx\marketplace\Dexarmarket
|
|
npm run build
|
|
scp -r dist/dexarmarket/browser/* user@your-server:/var/www/dexarmarket/browser/
|
|
```
|
|
|
|
**Solution 2: Fix permissions**
|
|
```bash
|
|
sudo chown -R www-data:www-data /var/www/dexarmarket
|
|
sudo chmod -R 755 /var/www/dexarmarket
|
|
```
|
|
|
|
**Solution 3: Check nginx config is loaded**
|
|
```bash
|
|
# Check which config is active
|
|
ls -la /etc/nginx/sites-enabled/
|
|
|
|
# Should show symlink to dexarmarket config
|
|
# If not:
|
|
sudo ln -s /etc/nginx/sites-available/dexarmarket /etc/nginx/sites-enabled/
|
|
sudo nginx -t
|
|
sudo systemctl reload nginx
|
|
```
|
|
|
|
**Solution 4: Verify nginx root path**
|
|
```bash
|
|
sudo cat /etc/nginx/sites-available/dexarmarket | grep root
|
|
```
|
|
|
|
Should show: `root /var/www/dexarmarket/browser;`
|
|
|
|
## Error: 502 Bad Gateway
|
|
|
|
### This means the API backend (https://api.dexarmarket.ru:445) is unreachable
|
|
|
|
**Solution 1: Check if API is running**
|
|
```bash
|
|
# From Ubuntu server:
|
|
curl -v https://api.dexarmarket.ru:445/ping
|
|
|
|
# If this fails, your API backend is down!
|
|
```
|
|
|
|
**Solution 2: Port 445 is blocked**
|
|
Port 445 is typically blocked by many firewalls because it's used for SMB file sharing.
|
|
|
|
**Check from browser console (F12):**
|
|
- Open browser Developer Tools (F12)
|
|
- Go to Console tab
|
|
- Look for errors like: `net::ERR_CONNECTION_REFUSED` or `net::ERR_SSL_PROTOCOL_ERROR`
|
|
|
|
**Possible fixes:**
|
|
- Use standard port 443 for HTTPS
|
|
- Or use port 8443, 8080, or other non-standard but common ports
|
|
- Configure firewall to allow port 445
|
|
|
|
**Solution 3: CORS issues**
|
|
The API must have CORS headers allowing requests from `https://dexarmarket.ru`
|
|
|
|
Check API response headers:
|
|
```bash
|
|
curl -v -H "Origin: https://dexarmarket.ru" https://api.dexarmarket.ru:445/ping
|
|
```
|
|
|
|
Should include headers like:
|
|
```
|
|
Access-Control-Allow-Origin: https://dexarmarket.ru
|
|
```
|
|
|
|
**Solution 4: SSL Certificate issues**
|
|
```bash
|
|
# Test with SSL verification disabled
|
|
curl -k https://api.dexarmarket.ru:445/ping
|
|
|
|
# If this works but normal curl doesn't, SSL cert is invalid
|
|
```
|
|
|
|
## Still Not Working?
|
|
|
|
### Get detailed error information:
|
|
|
|
**1. Browser Console (JavaScript errors)**
|
|
```
|
|
F12 → Console tab
|
|
Look for red errors
|
|
```
|
|
|
|
**2. Browser Network Tab (Failed requests)**
|
|
```
|
|
F12 → Network tab
|
|
Reload page
|
|
Look for red (failed) requests
|
|
Click on failed request to see details
|
|
```
|
|
|
|
**3. Nginx Error Log (Server-side errors)**
|
|
```bash
|
|
sudo tail -50 /var/log/nginx/error.log
|
|
```
|
|
|
|
**4. Nginx Access Log (See what requests come in)**
|
|
```bash
|
|
sudo tail -50 /var/log/nginx/access.log
|
|
```
|
|
|
|
**5. Test Build Locally**
|
|
```bash
|
|
cd F:\dx\marketplace\Dexarmarket\dist\dexarmarket\browser
|
|
python -m http.server 8000
|
|
# Visit http://localhost:8000
|
|
```
|
|
|
|
If local test works, the issue is with deployment, not the build.
|
|
|
|
## Common Mistakes
|
|
|
|
❌ **Uploading to wrong directory**
|
|
- Correct: `/var/www/dexarmarket/browser/`
|
|
- Wrong: `/var/www/dexarmarket/` (missing browser/)
|
|
|
|
❌ **Wrong permissions**
|
|
```bash
|
|
# Must be readable by www-data
|
|
sudo chown -R www-data:www-data /var/www/dexarmarket
|
|
sudo chmod -R 755 /var/www/dexarmarket
|
|
```
|
|
|
|
❌ **Nginx config not reloaded**
|
|
```bash
|
|
# After ANY change to nginx config:
|
|
sudo nginx -t
|
|
sudo systemctl reload nginx
|
|
```
|
|
|
|
❌ **Old files cached**
|
|
```bash
|
|
# Clear browser cache: Ctrl+Shift+R (hard refresh)
|
|
```
|
|
|
|
❌ **API port blocked**
|
|
- Port 445 is unusual and often blocked
|
|
- Consider using port 443 (standard HTTPS)
|
|
|
|
## Contact Information for Support
|
|
|
|
When asking for help, provide:
|
|
1. Output of `sudo nginx -t`
|
|
2. Last 30 lines of nginx error log: `sudo tail -30 /var/log/nginx/error.log`
|
|
3. Browser console errors (F12 → Console)
|
|
4. Result of `curl -v https://api.dexarmarket.ru:445/ping` from server
|
|
5. Screenshot of browser Network tab showing failed request
|