[object Object]

← back to Dw Domain Fleet

fleet: repoint all 43 sites to free ports 11100-11142 (fix EADDRINUSE crash-loop) + monetize skips catalog build (TK-11322)

39b399def9b2ee445333c7a4a72a8519828b2c27 · 2026-09-09 14:47:51 -0700 · Steve Abrams

Whole dw-domain-fleet was crash-looping (EADDRINUSE): its 10001-10044 range was
100% occupied by the *.designerwallcoverings.com vendor microsites, so every
dwf-* failed to bind and pm2 stopped them — the vendor 'Trade Lines' apps answered
the fleet domains instead. Repoint to free 11100-11142 across ecosystem.config.js
+ sites/*.json + data/nginx/*.conf. Also: monetize procs now skip the DW catalog/
hero/img build entirely (unused on content sites) — big per-proc RAM saving for a
40+ proc box. Deploy also updates the live certbot nginx confs' proxy_pass port.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01S81Y5KkGKrUHg2mwWQtD96

Files touched

Diff

commit 39b399def9b2ee445333c7a4a72a8519828b2c27
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Wed Sep 9 14:47:51 2026 -0700

    fleet: repoint all 43 sites to free ports 11100-11142 (fix EADDRINUSE crash-loop) + monetize skips catalog build (TK-11322)
    
    Whole dw-domain-fleet was crash-looping (EADDRINUSE): its 10001-10044 range was
    100% occupied by the *.designerwallcoverings.com vendor microsites, so every
    dwf-* failed to bind and pm2 stopped them — the vendor 'Trade Lines' apps answered
    the fleet domains instead. Repoint to free 11100-11142 across ecosystem.config.js
    + sites/*.json + data/nginx/*.conf. Also: monetize procs now skip the DW catalog/
    hero/img build entirely (unused on content sites) — big per-proc RAM saving for a
    40+ proc box. Deploy also updates the live certbot nginx confs' proxy_pass port.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
    Claude-Session: https://claude.ai/code/session_01S81Y5KkGKrUHg2mwWQtD96
---
 data/nginx/1800wallcoverings.com.conf       |  2 +-
 data/nginx/asseeninhotels.com.conf          |  2 +-
 data/nginx/asseeninla.com.conf              |  2 +-
 data/nginx/asseeninmovies.com.conf          |  2 +-
 data/nginx/asseeninshowrooms.com.conf       |  2 +-
 data/nginx/barwallpaper.com.conf            |  2 +-
 data/nginx/blankstocklining.com.conf        |  2 +-
 data/nginx/carmelwallpaper.com.conf         |  2 +-
 data/nginx/cfafabrics.com.conf              |  2 +-
 data/nginx/classawallcovering.com.conf      |  2 +-
 data/nginx/commercialsalesreps.com.conf     |  2 +-
 data/nginx/commercialwallcovering.com.conf  |  2 +-
 data/nginx/designermagnetics.com.conf       |  2 +-
 data/nginx/etciemurals.com.conf             |  2 +-
 data/nginx/fabricfridays.com.conf           |  2 +-
 data/nginx/fireratedwallcovering.com.conf   |  2 +-
 data/nginx/flocked.org.conf                 |  2 +-
 data/nginx/grassclothwallcovering.com.conf  |  2 +-
 data/nginx/handmadewallcovering.com.conf    |  2 +-
 data/nginx/hollywoodwallcovering.com.conf   |  2 +-
 data/nginx/hospitalitysalesagency.com.conf  |  2 +-
 data/nginx/malibuwallpaper.com.conf         |  2 +-
 data/nginx/montereywallpaper.com.conf       |  2 +-
 data/nginx/naturalwalltextures.com.conf     |  2 +-
 data/nginx/patterndesignlab.com.conf        |  2 +-
 data/nginx/philliperomano.com.conf          |  2 +-
 data/nginx/printmurals.com.conf             |  2 +-
 data/nginx/restaurantfabrics.com.conf       |  2 +-
 data/nginx/restaurantmurals.com.conf        |  2 +-
 data/nginx/roomsettings.com.conf            |  2 +-
 data/nginx/sheltermagazines.com.conf        |  2 +-
 data/nginx/specifywallpaper.com.conf        |  2 +-
 data/nginx/stevenabramsphotography.com.conf |  2 +-
 data/nginx/thehotelwallpaper.com.conf       |  2 +-
 data/nginx/traditionalwhimsy.com.conf       |  2 +-
 data/nginx/unitedstateswallpaper.com.conf   |  2 +-
 data/nginx/wallcovering.net.conf            |  2 +-
 data/nginx/wallpaperexports.com.conf        |  2 +-
 data/nginx/wallpaperfromthe80s.com.conf     |  2 +-
 data/nginx/wallpaperny.com.conf             |  2 +-
 data/nginx/wallpaperpurchasing.com.conf     |  2 +-
 data/nginx/wallpaperweekly.com.conf         |  2 +-
 data/nginx/wc01wallcoverings.com.conf       |  2 +-
 ecosystem.config.js                         | 86 ++++++++++++++---------------
 server.js                                   | 86 +++++++++++++----------------
 sites/1800wallcoverings.json                |  2 +-
 sites/asseeninhotels.json                   |  2 +-
 sites/asseeninla.json                       |  2 +-
 sites/asseeninmovies.json                   |  2 +-
 sites/asseeninshowrooms.json                |  2 +-
 sites/barwallpaper.json                     |  2 +-
 sites/blankstocklining.json                 |  2 +-
 sites/carmelwallpaper.json                  |  2 +-
 sites/cfafabrics.json                       |  2 +-
 sites/classawallcovering.json               |  2 +-
 sites/commercialsalesreps.json              |  2 +-
 sites/commercialwallcovering.json           |  2 +-
 sites/designermagnetics.json                |  2 +-
 sites/etciemurals.json                      |  2 +-
 sites/fabricfridays.json                    |  2 +-
 sites/fireratedwallcovering.json            |  2 +-
 sites/flocked.json                          |  2 +-
 sites/grassclothwallcovering.json           |  2 +-
 sites/handmadewallcovering.json             |  2 +-
 sites/hollywoodwallcovering.json            |  6 +-
 sites/hospitalitysalesagency.json           |  2 +-
 sites/malibuwallpaper.json                  |  2 +-
 sites/montereywallpaper.json                |  2 +-
 sites/naturalwalltextures.json              |  2 +-
 sites/patterndesignlab.json                 |  2 +-
 sites/philliperomano.json                   |  2 +-
 sites/printmurals.json                      |  2 +-
 sites/restaurantfabrics.json                |  2 +-
 sites/restaurantmurals.json                 |  2 +-
 sites/roomsettings.json                     |  2 +-
 sites/sheltermagazines.json                 |  2 +-
 sites/specifywallpaper.json                 |  2 +-
 sites/stevenabramsphotography.json          |  2 +-
 sites/thehotelwallpaper.json                |  2 +-
 sites/traditionalwhimsy.json                |  2 +-
 sites/unitedstateswallpaper.json            |  2 +-
 sites/wallcovering.json                     |  2 +-
 sites/wallpaperexports.json                 |  2 +-
 sites/wallpaperfromthe80s.json              |  2 +-
 sites/wallpaperny.json                      |  2 +-
 sites/wallpaperpurchasing.json              |  2 +-
 sites/wallpaperweekly.json                  |  2 +-
 sites/wc01wallcoverings.json                |  2 +-
 88 files changed, 170 insertions(+), 178 deletions(-)

diff --git a/data/nginx/1800wallcoverings.com.conf b/data/nginx/1800wallcoverings.com.conf
index 8aa381e..8d268a9 100644
--- a/data/nginx/1800wallcoverings.com.conf
+++ b/data/nginx/1800wallcoverings.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10001;
+        proxy_pass http://127.0.0.1:11100;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/asseeninhotels.com.conf b/data/nginx/asseeninhotels.com.conf
index 639e938..8457c2e 100644
--- a/data/nginx/asseeninhotels.com.conf
+++ b/data/nginx/asseeninhotels.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10002;
+        proxy_pass http://127.0.0.1:11101;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/asseeninla.com.conf b/data/nginx/asseeninla.com.conf
index f6dee51..88f45ec 100644
--- a/data/nginx/asseeninla.com.conf
+++ b/data/nginx/asseeninla.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10003;
+        proxy_pass http://127.0.0.1:11102;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/asseeninmovies.com.conf b/data/nginx/asseeninmovies.com.conf
index c41f867..045cec5 100644
--- a/data/nginx/asseeninmovies.com.conf
+++ b/data/nginx/asseeninmovies.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10004;
+        proxy_pass http://127.0.0.1:11103;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/asseeninshowrooms.com.conf b/data/nginx/asseeninshowrooms.com.conf
index ed83117..66839a4 100644
--- a/data/nginx/asseeninshowrooms.com.conf
+++ b/data/nginx/asseeninshowrooms.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10005;
+        proxy_pass http://127.0.0.1:11104;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/barwallpaper.com.conf b/data/nginx/barwallpaper.com.conf
index 6e63bec..42a9884 100644
--- a/data/nginx/barwallpaper.com.conf
+++ b/data/nginx/barwallpaper.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10006;
+        proxy_pass http://127.0.0.1:11105;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/blankstocklining.com.conf b/data/nginx/blankstocklining.com.conf
index 9af771e..66aaac9 100644
--- a/data/nginx/blankstocklining.com.conf
+++ b/data/nginx/blankstocklining.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10007;
+        proxy_pass http://127.0.0.1:11106;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/carmelwallpaper.com.conf b/data/nginx/carmelwallpaper.com.conf
index 7bf7d47..aca6196 100644
--- a/data/nginx/carmelwallpaper.com.conf
+++ b/data/nginx/carmelwallpaper.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10009;
+        proxy_pass http://127.0.0.1:11107;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/cfafabrics.com.conf b/data/nginx/cfafabrics.com.conf
index 453e3e1..7957902 100644
--- a/data/nginx/cfafabrics.com.conf
+++ b/data/nginx/cfafabrics.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10010;
+        proxy_pass http://127.0.0.1:11108;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/classawallcovering.com.conf b/data/nginx/classawallcovering.com.conf
index 93a8167..2c68fb5 100644
--- a/data/nginx/classawallcovering.com.conf
+++ b/data/nginx/classawallcovering.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10011;
+        proxy_pass http://127.0.0.1:11109;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/commercialsalesreps.com.conf b/data/nginx/commercialsalesreps.com.conf
index 015535d..1e501e5 100644
--- a/data/nginx/commercialsalesreps.com.conf
+++ b/data/nginx/commercialsalesreps.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10012;
+        proxy_pass http://127.0.0.1:11110;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/commercialwallcovering.com.conf b/data/nginx/commercialwallcovering.com.conf
index fb15be4..a6bff56 100644
--- a/data/nginx/commercialwallcovering.com.conf
+++ b/data/nginx/commercialwallcovering.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10013;
+        proxy_pass http://127.0.0.1:11111;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/designermagnetics.com.conf b/data/nginx/designermagnetics.com.conf
index d8631c9..2509d01 100644
--- a/data/nginx/designermagnetics.com.conf
+++ b/data/nginx/designermagnetics.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10014;
+        proxy_pass http://127.0.0.1:11112;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/etciemurals.com.conf b/data/nginx/etciemurals.com.conf
index c23d24c..b031807 100644
--- a/data/nginx/etciemurals.com.conf
+++ b/data/nginx/etciemurals.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10015;
+        proxy_pass http://127.0.0.1:11113;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/fabricfridays.com.conf b/data/nginx/fabricfridays.com.conf
index 983faa6..e8a23c7 100644
--- a/data/nginx/fabricfridays.com.conf
+++ b/data/nginx/fabricfridays.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10016;
+        proxy_pass http://127.0.0.1:11114;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/fireratedwallcovering.com.conf b/data/nginx/fireratedwallcovering.com.conf
index eea9def..8da4d98 100644
--- a/data/nginx/fireratedwallcovering.com.conf
+++ b/data/nginx/fireratedwallcovering.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10017;
+        proxy_pass http://127.0.0.1:11115;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/flocked.org.conf b/data/nginx/flocked.org.conf
index 7cf8843..a277b15 100644
--- a/data/nginx/flocked.org.conf
+++ b/data/nginx/flocked.org.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10018;
+        proxy_pass http://127.0.0.1:11116;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/grassclothwallcovering.com.conf b/data/nginx/grassclothwallcovering.com.conf
index 05c75a0..4ac52ff 100644
--- a/data/nginx/grassclothwallcovering.com.conf
+++ b/data/nginx/grassclothwallcovering.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10019;
+        proxy_pass http://127.0.0.1:11117;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/handmadewallcovering.com.conf b/data/nginx/handmadewallcovering.com.conf
index 6909f2a..e1690fb 100644
--- a/data/nginx/handmadewallcovering.com.conf
+++ b/data/nginx/handmadewallcovering.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10020;
+        proxy_pass http://127.0.0.1:11118;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/hollywoodwallcovering.com.conf b/data/nginx/hollywoodwallcovering.com.conf
index 1c52c58..1a2efb1 100644
--- a/data/nginx/hollywoodwallcovering.com.conf
+++ b/data/nginx/hollywoodwallcovering.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10021;
+        proxy_pass http://127.0.0.1:11119;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/hospitalitysalesagency.com.conf b/data/nginx/hospitalitysalesagency.com.conf
index 46af5aa..243c4e8 100644
--- a/data/nginx/hospitalitysalesagency.com.conf
+++ b/data/nginx/hospitalitysalesagency.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10022;
+        proxy_pass http://127.0.0.1:11120;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/malibuwallpaper.com.conf b/data/nginx/malibuwallpaper.com.conf
index 4205807..38e2290 100644
--- a/data/nginx/malibuwallpaper.com.conf
+++ b/data/nginx/malibuwallpaper.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10023;
+        proxy_pass http://127.0.0.1:11121;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/montereywallpaper.com.conf b/data/nginx/montereywallpaper.com.conf
index 97e5629..512872f 100644
--- a/data/nginx/montereywallpaper.com.conf
+++ b/data/nginx/montereywallpaper.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10024;
+        proxy_pass http://127.0.0.1:11122;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/naturalwalltextures.com.conf b/data/nginx/naturalwalltextures.com.conf
index 161529c..920b356 100644
--- a/data/nginx/naturalwalltextures.com.conf
+++ b/data/nginx/naturalwalltextures.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10025;
+        proxy_pass http://127.0.0.1:11123;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/patterndesignlab.com.conf b/data/nginx/patterndesignlab.com.conf
index b08e007..49033f7 100644
--- a/data/nginx/patterndesignlab.com.conf
+++ b/data/nginx/patterndesignlab.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10026;
+        proxy_pass http://127.0.0.1:11124;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/philliperomano.com.conf b/data/nginx/philliperomano.com.conf
index dfa30f0..cb15470 100644
--- a/data/nginx/philliperomano.com.conf
+++ b/data/nginx/philliperomano.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10027;
+        proxy_pass http://127.0.0.1:11125;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/printmurals.com.conf b/data/nginx/printmurals.com.conf
index c2a8368..6ab15ac 100644
--- a/data/nginx/printmurals.com.conf
+++ b/data/nginx/printmurals.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10028;
+        proxy_pass http://127.0.0.1:11126;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/restaurantfabrics.com.conf b/data/nginx/restaurantfabrics.com.conf
index dc85f6a..683ff37 100644
--- a/data/nginx/restaurantfabrics.com.conf
+++ b/data/nginx/restaurantfabrics.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10029;
+        proxy_pass http://127.0.0.1:11127;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/restaurantmurals.com.conf b/data/nginx/restaurantmurals.com.conf
index 6c0d31d..f3f90e4 100644
--- a/data/nginx/restaurantmurals.com.conf
+++ b/data/nginx/restaurantmurals.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10030;
+        proxy_pass http://127.0.0.1:11128;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/roomsettings.com.conf b/data/nginx/roomsettings.com.conf
index 3eb5475..5e35767 100644
--- a/data/nginx/roomsettings.com.conf
+++ b/data/nginx/roomsettings.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10031;
+        proxy_pass http://127.0.0.1:11129;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/sheltermagazines.com.conf b/data/nginx/sheltermagazines.com.conf
index 2729c01..65f8184 100644
--- a/data/nginx/sheltermagazines.com.conf
+++ b/data/nginx/sheltermagazines.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10032;
+        proxy_pass http://127.0.0.1:11130;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/specifywallpaper.com.conf b/data/nginx/specifywallpaper.com.conf
index 8334aed..1af7498 100644
--- a/data/nginx/specifywallpaper.com.conf
+++ b/data/nginx/specifywallpaper.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10033;
+        proxy_pass http://127.0.0.1:11131;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/stevenabramsphotography.com.conf b/data/nginx/stevenabramsphotography.com.conf
index e15a5f9..8df569a 100644
--- a/data/nginx/stevenabramsphotography.com.conf
+++ b/data/nginx/stevenabramsphotography.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10034;
+        proxy_pass http://127.0.0.1:11132;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/thehotelwallpaper.com.conf b/data/nginx/thehotelwallpaper.com.conf
index 74ba127..c44df14 100644
--- a/data/nginx/thehotelwallpaper.com.conf
+++ b/data/nginx/thehotelwallpaper.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10035;
+        proxy_pass http://127.0.0.1:11133;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/traditionalwhimsy.com.conf b/data/nginx/traditionalwhimsy.com.conf
index 8cad207..81e8899 100644
--- a/data/nginx/traditionalwhimsy.com.conf
+++ b/data/nginx/traditionalwhimsy.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10036;
+        proxy_pass http://127.0.0.1:11134;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/unitedstateswallpaper.com.conf b/data/nginx/unitedstateswallpaper.com.conf
index 0db2c2a..a2d293f 100644
--- a/data/nginx/unitedstateswallpaper.com.conf
+++ b/data/nginx/unitedstateswallpaper.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10037;
+        proxy_pass http://127.0.0.1:11135;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/wallcovering.net.conf b/data/nginx/wallcovering.net.conf
index 7d5c0ed..7d1912e 100644
--- a/data/nginx/wallcovering.net.conf
+++ b/data/nginx/wallcovering.net.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10038;
+        proxy_pass http://127.0.0.1:11136;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/wallpaperexports.com.conf b/data/nginx/wallpaperexports.com.conf
index b0768bb..94f08f6 100644
--- a/data/nginx/wallpaperexports.com.conf
+++ b/data/nginx/wallpaperexports.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10039;
+        proxy_pass http://127.0.0.1:11137;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/wallpaperfromthe80s.com.conf b/data/nginx/wallpaperfromthe80s.com.conf
index afbbfa1..0e214c5 100644
--- a/data/nginx/wallpaperfromthe80s.com.conf
+++ b/data/nginx/wallpaperfromthe80s.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10040;
+        proxy_pass http://127.0.0.1:11138;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/wallpaperny.com.conf b/data/nginx/wallpaperny.com.conf
index 6d5a228..a8a1d11 100644
--- a/data/nginx/wallpaperny.com.conf
+++ b/data/nginx/wallpaperny.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10041;
+        proxy_pass http://127.0.0.1:11139;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/wallpaperpurchasing.com.conf b/data/nginx/wallpaperpurchasing.com.conf
index 8667138..29622db 100644
--- a/data/nginx/wallpaperpurchasing.com.conf
+++ b/data/nginx/wallpaperpurchasing.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10042;
+        proxy_pass http://127.0.0.1:11140;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/wallpaperweekly.com.conf b/data/nginx/wallpaperweekly.com.conf
index 9823c48..da0f460 100644
--- a/data/nginx/wallpaperweekly.com.conf
+++ b/data/nginx/wallpaperweekly.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10043;
+        proxy_pass http://127.0.0.1:11141;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/data/nginx/wc01wallcoverings.com.conf b/data/nginx/wc01wallcoverings.com.conf
index 5216070..c03daa3 100644
--- a/data/nginx/wc01wallcoverings.com.conf
+++ b/data/nginx/wc01wallcoverings.com.conf
@@ -11,7 +11,7 @@ server {
     add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
     add_header Cross-Origin-Opener-Policy same-origin always;
     location / {
-        proxy_pass http://127.0.0.1:10044;
+        proxy_pass http://127.0.0.1:11142;
         proxy_http_version 1.1;
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP $remote_addr;
diff --git a/ecosystem.config.js b/ecosystem.config.js
index 668069a..a41110b 100644
--- a/ecosystem.config.js
+++ b/ecosystem.config.js
@@ -6,7 +6,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "1800wallcoverings",
-        "PORT": "10001",
+        "PORT": "11100",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -18,7 +18,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "asseeninhotels",
-        "PORT": "10002",
+        "PORT": "11101",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -30,7 +30,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "asseeninla",
-        "PORT": "10003",
+        "PORT": "11102",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -42,7 +42,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "asseeninmovies",
-        "PORT": "10004",
+        "PORT": "11103",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -54,7 +54,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "asseeninshowrooms",
-        "PORT": "10005",
+        "PORT": "11104",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -66,7 +66,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "barwallpaper",
-        "PORT": "10006",
+        "PORT": "11105",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -78,7 +78,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "blankstocklining",
-        "PORT": "10007",
+        "PORT": "11106",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -90,7 +90,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "carmelwallpaper",
-        "PORT": "10009",
+        "PORT": "11107",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -102,7 +102,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "cfafabrics",
-        "PORT": "10010",
+        "PORT": "11108",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -114,7 +114,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "classawallcovering",
-        "PORT": "10011",
+        "PORT": "11109",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -126,7 +126,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "commercialsalesreps",
-        "PORT": "10012",
+        "PORT": "11110",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -138,7 +138,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "commercialwallcovering",
-        "PORT": "10013",
+        "PORT": "11111",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -150,7 +150,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "designermagnetics",
-        "PORT": "10014",
+        "PORT": "11112",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -162,7 +162,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "etciemurals",
-        "PORT": "10015",
+        "PORT": "11113",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -174,7 +174,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "fabricfridays",
-        "PORT": "10016",
+        "PORT": "11114",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -186,7 +186,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "fireratedwallcovering",
-        "PORT": "10017",
+        "PORT": "11115",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -198,7 +198,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "flocked",
-        "PORT": "10018",
+        "PORT": "11116",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -210,7 +210,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "grassclothwallcovering",
-        "PORT": "10019",
+        "PORT": "11117",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -222,7 +222,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "handmadewallcovering",
-        "PORT": "10020",
+        "PORT": "11118",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -234,7 +234,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "hollywoodwallcovering",
-        "PORT": "10021",
+        "PORT": "11119",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -246,7 +246,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "hospitalitysalesagency",
-        "PORT": "10022",
+        "PORT": "11120",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -258,7 +258,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "malibuwallpaper",
-        "PORT": "10023",
+        "PORT": "11121",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -270,7 +270,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "montereywallpaper",
-        "PORT": "10024",
+        "PORT": "11122",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -282,7 +282,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "naturalwalltextures",
-        "PORT": "10025",
+        "PORT": "11123",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -294,7 +294,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "patterndesignlab",
-        "PORT": "10026",
+        "PORT": "11124",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -306,7 +306,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "philliperomano",
-        "PORT": "10027",
+        "PORT": "11125",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -318,7 +318,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "printmurals",
-        "PORT": "10028",
+        "PORT": "11126",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -330,7 +330,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "restaurantfabrics",
-        "PORT": "10029",
+        "PORT": "11127",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -342,7 +342,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "restaurantmurals",
-        "PORT": "10030",
+        "PORT": "11128",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -354,7 +354,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "roomsettings",
-        "PORT": "10031",
+        "PORT": "11129",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -366,7 +366,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "sheltermagazines",
-        "PORT": "10032",
+        "PORT": "11130",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -378,7 +378,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "specifywallpaper",
-        "PORT": "10033",
+        "PORT": "11131",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -390,7 +390,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "stevenabramsphotography",
-        "PORT": "10034",
+        "PORT": "11132",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -402,7 +402,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "thehotelwallpaper",
-        "PORT": "10035",
+        "PORT": "11133",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -414,7 +414,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "traditionalwhimsy",
-        "PORT": "10036",
+        "PORT": "11134",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -426,7 +426,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "unitedstateswallpaper",
-        "PORT": "10037",
+        "PORT": "11135",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -438,7 +438,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "wallcovering",
-        "PORT": "10038",
+        "PORT": "11136",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -450,7 +450,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "wallpaperexports",
-        "PORT": "10039",
+        "PORT": "11137",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -462,7 +462,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "wallpaperfromthe80s",
-        "PORT": "10040",
+        "PORT": "11138",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -474,7 +474,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "wallpaperny",
-        "PORT": "10041",
+        "PORT": "11139",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -486,7 +486,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "wallpaperpurchasing",
-        "PORT": "10042",
+        "PORT": "11140",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -498,7 +498,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "wallpaperweekly",
-        "PORT": "10043",
+        "PORT": "11141",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
@@ -510,7 +510,7 @@ module.exports = {
       "cwd": "/root/public-projects/dw-domain-fleet",
       "env": {
         "SITE": "wc01wallcoverings",
-        "PORT": "10044",
+        "PORT": "11142",
         "NODE_ENV": "production"
       },
       "max_memory_restart": "180M",
diff --git a/server.js b/server.js
index 7ba5ca6..57ecea1 100644
--- a/server.js
+++ b/server.js
@@ -28,52 +28,45 @@ const render = require('./shared/render');
 // Canonical showroom-vendor primitive (list + logic in fix-live-board/config). TK-11186.
 const { isShowroomVendor } = require(path.join(process.env.HOME, 'Projects/fix-live-board/config/showroom-vendor.cjs'));
 
-// ---- niche slice for this site (built once at boot) ----
-const NICHE = catalog.nicheSlice({
-  pos: cfg.niche.pos || [],
-  neg: cfg.niche.neg || [],
-  types: cfg.niche.types || [],
-  limit: 6000
-});
-// fallback: if a niche is too thin, broaden to all clean wallcoverings
-const POOL = NICHE.length >= 24 ? NICHE
-  : catalog.nicheSlice({ pos: [], neg: cfg.niche.neg || [], types: ['Wallcovering'], limit: 6000 });
-// Per-site catalog overlay (data/extras/<slug>.json) — site-exclusive products
-// prepended so they read as newest. No-op for sites without an extras file.
-const EXTRAS = catalog.siteExtras(SITE);
-if (EXTRAS.length) { POOL.unshift(...EXTRAS); console.log(`[${SITE}] + ${EXTRAS.length} site extras`); }
-// Defense in depth (TK-11186): showroom-only vendors (e.g. Phillip Jeffries) must never
-// appear in any browse grid, the promo banner, or the hero/featured set on the fleet sites.
-// pull-catalog.js already keeps them out of catalog.json; this also guards a stale snapshot
-// or a per-site extras file. Keyed off showroom-vendors.json via the shared primitive.
-const _preShowroom = POOL.length;
-POOL.splice(0, POOL.length, ...POOL.filter(p => !isShowroomVendor(p.vendor)));
-if (POOL.length !== _preShowroom) console.log(`[${SITE}] - ${_preShowroom - POOL.length} showroom-only products suppressed`);
-console.log(`[${SITE}] niche pool: ${NICHE.length} (serving ${POOL.length})`);
-
-// Hero images come from the precomputed global allocation manifest, which
-// guarantees NO image is reused on any two sites in the fleet (see
-// scripts/gen-hero-allocation.js). Fall back to the newest niche slice only if
-// the manifest is missing this site.
-let HERO_ALLOC = {};
-try { HERO_ALLOC = JSON.parse(fs.readFileSync(path.join(__dirname, 'data', 'hero-allocation.json'), 'utf8')); }
-catch (e) { console.warn(`[${SITE}] hero-allocation.json missing — using niche fallback`); }
-const HERO_IMGS = (Array.isArray(HERO_ALLOC[SITE]) && HERO_ALLOC[SITE].length >= 3)
-  ? HERO_ALLOC[SITE]
-  : sortProducts(POOL, 'newest').slice(0, 14).map(p => p.image_url).filter(Boolean);
-const FEATURED = sortProducts(POOL, 'newest').slice(0, 20);
-
-// ---- vendor-neutral image proxy map (built once at boot) ----
-// The raw Shopify CDN image_url embeds the 3rd-party vendor name in the
-// filename; render.js now emits /img/<token> instead. We resolve token -> real
-// CDN url here (render.imgToken is the same pure hash render uses) and the
-// /img/:token route streams the bytes, so the vendor never appears in the DOM
-// OR the browser network tab (DTD 2026-06-03 verdict A — streaming proxy).
-const IMG_MAP = new Map();
+// Monetize (parked/for-sale content) sites are standalone — they never serve the
+// DW catalog/funnel, so skip the entire catalog + hero + image-proxy build for
+// them. This saves ~one catalog's worth of RAM per monetize process (the whole
+// point once the fleet runs 40+ procs on one box). Funnel sites build as before.
+const MONETIZE = cfg.monetize === true || cfg.adsense === true;
+let POOL = [], HERO_IMGS = [], FEATURED = [];
+const IMG_MAP = new Map();   // token -> real CDN url (funnel /img proxy only)
 function registerImg(url) { if (url) IMG_MAP.set(render.imgToken(url), url); }
-for (const p of POOL) registerImg(p.image_url);   // every card + PDP image
-for (const u of HERO_IMGS) registerImg(u);        // homepage hero slides
-console.log(`[${SITE}] image-proxy map: ${IMG_MAP.size} urls`);
+if (!MONETIZE) {
+  // ---- niche slice for this site (built once at boot) ----
+  const NICHE = catalog.nicheSlice({
+    pos: cfg.niche.pos || [], neg: cfg.niche.neg || [], types: cfg.niche.types || [], limit: 6000
+  });
+  // fallback: if a niche is too thin, broaden to all clean wallcoverings
+  POOL = NICHE.length >= 24 ? NICHE
+    : catalog.nicheSlice({ pos: [], neg: cfg.niche.neg || [], types: ['Wallcovering'], limit: 6000 });
+  // Per-site catalog overlay (data/extras/<slug>.json) — site-exclusive products.
+  const EXTRAS = catalog.siteExtras(SITE);
+  if (EXTRAS.length) { POOL.unshift(...EXTRAS); console.log(`[${SITE}] + ${EXTRAS.length} site extras`); }
+  // Defense in depth (TK-11186): showroom-only vendors must never appear in any grid/hero.
+  const _preShowroom = POOL.length;
+  POOL.splice(0, POOL.length, ...POOL.filter(p => !isShowroomVendor(p.vendor)));
+  if (POOL.length !== _preShowroom) console.log(`[${SITE}] - ${_preShowroom - POOL.length} showroom-only products suppressed`);
+  console.log(`[${SITE}] niche pool: ${NICHE.length} (serving ${POOL.length})`);
+  // Hero images from the precomputed no-reuse allocation manifest; niche fallback.
+  let HERO_ALLOC = {};
+  try { HERO_ALLOC = JSON.parse(fs.readFileSync(path.join(__dirname, 'data', 'hero-allocation.json'), 'utf8')); }
+  catch (e) { console.warn(`[${SITE}] hero-allocation.json missing — using niche fallback`); }
+  HERO_IMGS = (Array.isArray(HERO_ALLOC[SITE]) && HERO_ALLOC[SITE].length >= 3)
+    ? HERO_ALLOC[SITE]
+    : sortProducts(POOL, 'newest').slice(0, 14).map(p => p.image_url).filter(Boolean);
+  FEATURED = sortProducts(POOL, 'newest').slice(0, 20);
+  // vendor-neutral image proxy map (funnel /img route)
+  for (const p of POOL) registerImg(p.image_url);
+  for (const u of HERO_IMGS) registerImg(u);
+  console.log(`[${SITE}] image-proxy map: ${IMG_MAP.size} urls`);
+} else {
+  console.log(`[${SITE}] monetize mode — catalog build skipped`);
+}
 
 // Small per-process LRU of fetched bytes so a hot image isn't re-fetched from
 // the CDN on every request. Capped to keep memory flat across 44+ procs.
@@ -91,7 +84,6 @@ app.disable('x-powered-by');
 // AdSense Auto Ads pull scripts, frames, images and beacons from Google's ad
 // hosts — a monetize site must widen the CSP for those or every ad is blocked
 // (and AdSense review fails). Non-monetize funnel sites keep the tight CSP.
-const MONETIZE = cfg.monetize === true || cfg.adsense === true;
 const AD_SCRIPT = MONETIZE ? [
   'https://pagead2.googlesyndication.com', 'https://*.googlesyndication.com',
   'https://partner.googleadservices.com', 'https://tpc.googlesyndication.com',
@@ -264,7 +256,7 @@ app.get('/info', (req, res) => {
 });
 
 app.get('/health', (req, res) => {
-  res.json({ ok: true, site: SITE, domain: cfg.domain, niche: NICHE.length, serving: POOL.length });
+  res.json({ ok: true, site: SITE, domain: cfg.domain, niche: POOL.length, serving: POOL.length });
 });
 
 app.use((req, res) => {
diff --git a/sites/1800wallcoverings.json b/sites/1800wallcoverings.json
index 752af73..e59cd84 100644
--- a/sites/1800wallcoverings.json
+++ b/sites/1800wallcoverings.json
@@ -2,7 +2,7 @@
   "slug": "1800wallcoverings",
   "domain": "1800wallcoverings.com",
   "siteName": "1-800 Wallcoverings",
-  "port": 10001,
+  "port": 11100,
   "siteEmail": "info@1800wallcoverings.com",
   "tagline": "Designer wallcoverings for every room.",
   "heroHeadline": "1-800 Wallcoverings",
diff --git a/sites/asseeninhotels.json b/sites/asseeninhotels.json
index 5966193..7820a68 100644
--- a/sites/asseeninhotels.json
+++ b/sites/asseeninhotels.json
@@ -2,7 +2,7 @@
   "slug": "asseeninhotels",
   "domain": "asseeninhotels.com",
   "siteName": "As Seen In Hotels",
-  "port": 10002,
+  "port": 11101,
   "siteEmail": "info@asseeninhotels.com",
   "tagline": "Wallcoverings seen in the world's finest hotels.",
   "heroHeadline": "As Seen In Hotels",
diff --git a/sites/asseeninla.json b/sites/asseeninla.json
index 07ab06f..6910851 100644
--- a/sites/asseeninla.json
+++ b/sites/asseeninla.json
@@ -2,7 +2,7 @@
   "slug": "asseeninla",
   "domain": "asseeninla.com",
   "siteName": "As Seen In LA",
-  "port": 10003,
+  "port": 11102,
   "siteEmail": "info@asseeninla.com",
   "tagline": "The wallcoverings of Los Angeles design.",
   "heroHeadline": "As Seen In LA",
diff --git a/sites/asseeninmovies.json b/sites/asseeninmovies.json
index d8a538f..340a1f0 100644
--- a/sites/asseeninmovies.json
+++ b/sites/asseeninmovies.json
@@ -2,7 +2,7 @@
   "slug": "asseeninmovies",
   "domain": "asseeninmovies.com",
   "siteName": "As Seen In Movies",
-  "port": 10004,
+  "port": 11103,
   "siteEmail": "info@asseeninmovies.com",
   "tagline": "Wallcoverings seen on the silver screen.",
   "heroHeadline": "As Seen In Movies",
diff --git a/sites/asseeninshowrooms.json b/sites/asseeninshowrooms.json
index 5a2f593..d1cb780 100644
--- a/sites/asseeninshowrooms.json
+++ b/sites/asseeninshowrooms.json
@@ -2,7 +2,7 @@
   "slug": "asseeninshowrooms",
   "domain": "asseeninshowrooms.com",
   "siteName": "As Seen In Showrooms",
-  "port": 10005,
+  "port": 11104,
   "siteEmail": "info@asseeninshowrooms.com",
   "tagline": "Showroom-grade wallcoverings, direct to the trade.",
   "heroHeadline": "As Seen In Showrooms",
diff --git a/sites/barwallpaper.json b/sites/barwallpaper.json
index 794bd62..0797cfe 100644
--- a/sites/barwallpaper.json
+++ b/sites/barwallpaper.json
@@ -2,7 +2,7 @@
   "slug": "barwallpaper",
   "domain": "barwallpaper.com",
   "siteName": "Bar Wallpaper",
-  "port": 10006,
+  "port": 11105,
   "siteEmail": "info@barwallpaper.com",
   "tagline": "Dramatic wallcoverings for bars and lounges.",
   "heroHeadline": "Bar Wallpaper",
diff --git a/sites/blankstocklining.json b/sites/blankstocklining.json
index a51cbd8..5c0133f 100644
--- a/sites/blankstocklining.json
+++ b/sites/blankstocklining.json
@@ -2,7 +2,7 @@
   "slug": "blankstocklining",
   "domain": "blankstocklining.com",
   "siteName": "Blankstock Lining",
-  "port": 10007,
+  "port": 11106,
   "siteEmail": "info@blankstocklining.com",
   "tagline": "Liner and blankstock for a flawless finish.",
   "heroHeadline": "Blankstock Lining",
diff --git a/sites/carmelwallpaper.json b/sites/carmelwallpaper.json
index a04d504..6c70a10 100644
--- a/sites/carmelwallpaper.json
+++ b/sites/carmelwallpaper.json
@@ -2,7 +2,7 @@
   "slug": "carmelwallpaper",
   "domain": "carmelwallpaper.com",
   "siteName": "Carmel Wallpaper",
-  "port": 10009,
+  "port": 11107,
   "siteEmail": "info@carmelwallpaper.com",
   "tagline": "Coastal-calm wallcoverings, Carmel to Monterey.",
   "heroHeadline": "Carmel Wallpaper",
diff --git a/sites/cfafabrics.json b/sites/cfafabrics.json
index 4eccd2f..f8abc67 100644
--- a/sites/cfafabrics.json
+++ b/sites/cfafabrics.json
@@ -2,7 +2,7 @@
   "slug": "cfafabrics",
   "domain": "cfafabrics.com",
   "siteName": "CFA Fabrics",
-  "port": 10010,
+  "port": 11108,
   "siteEmail": "info@cfafabrics.com",
   "tagline": "Designer fabrics for the trade.",
   "heroHeadline": "CFA Fabrics",
diff --git a/sites/classawallcovering.json b/sites/classawallcovering.json
index 59df317..be6f881 100644
--- a/sites/classawallcovering.json
+++ b/sites/classawallcovering.json
@@ -2,7 +2,7 @@
   "slug": "classawallcovering",
   "domain": "classawallcovering.com",
   "siteName": "Class A Wallcovering",
-  "port": 10011,
+  "port": 11109,
   "siteEmail": "info@classawallcovering.com",
   "tagline": "Class A fire-rated wallcoverings.",
   "heroHeadline": "Class A Wallcovering",
diff --git a/sites/commercialsalesreps.json b/sites/commercialsalesreps.json
index 9db7ab9..4e36853 100644
--- a/sites/commercialsalesreps.json
+++ b/sites/commercialsalesreps.json
@@ -2,7 +2,7 @@
   "slug": "commercialsalesreps",
   "domain": "commercialsalesreps.com",
   "siteName": "Commercial Sales Reps",
-  "port": 10012,
+  "port": 11110,
   "siteEmail": "info@commercialsalesreps.com",
   "tagline": "Commercial wallcoverings and trade representation.",
   "heroHeadline": "Commercial Sales Reps",
diff --git a/sites/commercialwallcovering.json b/sites/commercialwallcovering.json
index 903cddc..0861485 100644
--- a/sites/commercialwallcovering.json
+++ b/sites/commercialwallcovering.json
@@ -2,7 +2,7 @@
   "slug": "commercialwallcovering",
   "domain": "commercialwallcovering.com",
   "siteName": "Commercial Wallcovering",
-  "port": 10013,
+  "port": 11111,
   "siteEmail": "info@commercialwallcovering.com",
   "tagline": "Contract-grade commercial wallcoverings.",
   "heroHeadline": "Commercial Wallcovering",
diff --git a/sites/designermagnetics.json b/sites/designermagnetics.json
index b1fb03f..7bb2623 100644
--- a/sites/designermagnetics.json
+++ b/sites/designermagnetics.json
@@ -2,7 +2,7 @@
   "slug": "designermagnetics",
   "domain": "designermagnetics.com",
   "siteName": "Designer Magnetics",
-  "port": 10014,
+  "port": 11112,
   "siteEmail": "info@designermagnetics.com",
   "tagline": "Magnetic and metallic wallcoverings.",
   "heroHeadline": "Designer Magnetics",
diff --git a/sites/etciemurals.json b/sites/etciemurals.json
index 2290b52..2822cac 100644
--- a/sites/etciemurals.json
+++ b/sites/etciemurals.json
@@ -2,7 +2,7 @@
   "slug": "etciemurals",
   "domain": "etciemurals.com",
   "siteName": "Et Cie Murals",
-  "port": 10015,
+  "port": 11113,
   "siteEmail": "info@etciemurals.com",
   "tagline": "Statement murals for interiors.",
   "heroHeadline": "Et Cie Murals",
diff --git a/sites/fabricfridays.json b/sites/fabricfridays.json
index b339080..5a43f21 100644
--- a/sites/fabricfridays.json
+++ b/sites/fabricfridays.json
@@ -2,7 +2,7 @@
   "slug": "fabricfridays",
   "domain": "fabricfridays.com",
   "siteName": "Fabric Fridays",
-  "port": 10016,
+  "port": 11114,
   "siteEmail": "info@fabricfridays.com",
   "tagline": "New designer fabrics every Friday.",
   "heroHeadline": "Fabric Fridays",
diff --git a/sites/fireratedwallcovering.json b/sites/fireratedwallcovering.json
index 94223c5..897ab48 100644
--- a/sites/fireratedwallcovering.json
+++ b/sites/fireratedwallcovering.json
@@ -2,7 +2,7 @@
   "slug": "fireratedwallcovering",
   "domain": "fireratedwallcovering.com",
   "siteName": "Fire-Rated Wallcovering",
-  "port": 10017,
+  "port": 11115,
   "siteEmail": "info@fireratedwallcovering.com",
   "tagline": "Fire-rated wallcoverings for code compliance.",
   "heroHeadline": "Fire-Rated Wallcovering",
diff --git a/sites/flocked.json b/sites/flocked.json
index 14f36de..9f92717 100644
--- a/sites/flocked.json
+++ b/sites/flocked.json
@@ -2,7 +2,7 @@
   "slug": "flocked",
   "domain": "flocked.org",
   "siteName": "Flocked",
-  "port": 10018,
+  "port": 11116,
   "siteEmail": "info@flocked.org",
   "tagline": "Flocked velvet wallcoverings.",
   "heroHeadline": "Flocked",
diff --git a/sites/grassclothwallcovering.json b/sites/grassclothwallcovering.json
index 8c611bb..2e22fa0 100644
--- a/sites/grassclothwallcovering.json
+++ b/sites/grassclothwallcovering.json
@@ -2,7 +2,7 @@
   "slug": "grassclothwallcovering",
   "domain": "grassclothwallcovering.com",
   "siteName": "Grasscloth Wallcovering",
-  "port": 10019,
+  "port": 11117,
   "siteEmail": "info@grassclothwallcovering.com",
   "tagline": "Hand-crafted grasscloth wallcoverings.",
   "heroHeadline": "Grasscloth Wallcovering",
diff --git a/sites/handmadewallcovering.json b/sites/handmadewallcovering.json
index dac8823..cb118a8 100644
--- a/sites/handmadewallcovering.json
+++ b/sites/handmadewallcovering.json
@@ -2,7 +2,7 @@
   "slug": "handmadewallcovering",
   "domain": "handmadewallcovering.com",
   "siteName": "Hand-Made Wallcovering",
-  "port": 10020,
+  "port": 11118,
   "siteEmail": "info@handmadewallcovering.com",
   "tagline": "Hand-made wallcoverings, artisan-crafted.",
   "heroHeadline": "Hand-Made Wallcovering",
diff --git a/sites/hollywoodwallcovering.json b/sites/hollywoodwallcovering.json
index 199f728..0d6f394 100644
--- a/sites/hollywoodwallcovering.json
+++ b/sites/hollywoodwallcovering.json
@@ -2,12 +2,12 @@
   "slug": "hollywoodwallcovering",
   "domain": "hollywoodwallcovering.com",
   "siteName": "Hollywood Wallcovering",
-  "port": 10021,
+  "port": 11119,
   "siteEmail": "info@hollywoodwallcovering.com",
   "tagline": "Hollywood-glamour wallcoverings.",
   "heroHeadline": "Hollywood Wallcovering",
   "heroSub": "Explore the collection",
-  "metaDesc": "Hollywood Wallcovering \u2014 Hollywood-glamour wallcoverings. Free memo samples, expert trade service, and hand-holding on every order from Designer Wallcoverings.",
+  "metaDesc": "Hollywood Wallcovering — Hollywood-glamour wallcoverings. Free memo samples, expert trade service, and hand-holding on every order from Designer Wallcoverings.",
   "nicheLabel": "designer wallcoverings",
   "aboutCopy": "Hollywood Wallcovering curates designer wallcoverings for designers, architects, and discerning homeowners. Hollywood-glamour wallcoverings. Every selection is backed by Designer Wallcoverings' decades of trade experience.",
   "niche": {
@@ -34,4 +34,4 @@
   },
   "ga4": "G-ZSCWGG7FZW",
   "gtm": "GTM-XXXXXXX"
-}
\ No newline at end of file
+}
diff --git a/sites/hospitalitysalesagency.json b/sites/hospitalitysalesagency.json
index 55b8c36..daabc5c 100644
--- a/sites/hospitalitysalesagency.json
+++ b/sites/hospitalitysalesagency.json
@@ -2,7 +2,7 @@
   "slug": "hospitalitysalesagency",
   "domain": "hospitalitysalesagency.com",
   "siteName": "Hospitality Sales Agency",
-  "port": 10022,
+  "port": 11120,
   "siteEmail": "info@hospitalitysalesagency.com",
   "tagline": "Hospitality wallcoverings and sales representation.",
   "heroHeadline": "Hospitality Sales Agency",
diff --git a/sites/malibuwallpaper.json b/sites/malibuwallpaper.json
index 689fa7e..33f59cb 100644
--- a/sites/malibuwallpaper.json
+++ b/sites/malibuwallpaper.json
@@ -2,7 +2,7 @@
   "slug": "malibuwallpaper",
   "domain": "malibuwallpaper.com",
   "siteName": "Malibu Wallpaper",
-  "port": 10023,
+  "port": 11121,
   "siteEmail": "info@malibuwallpaper.com",
   "tagline": "Coastal wallcoverings, Malibu style.",
   "heroHeadline": "Malibu Wallpaper",
diff --git a/sites/montereywallpaper.json b/sites/montereywallpaper.json
index f3a733b..03987ee 100644
--- a/sites/montereywallpaper.json
+++ b/sites/montereywallpaper.json
@@ -2,7 +2,7 @@
   "slug": "montereywallpaper",
   "domain": "montereywallpaper.com",
   "siteName": "Monterey Wallpaper",
-  "port": 10024,
+  "port": 11122,
   "siteEmail": "info@montereywallpaper.com",
   "tagline": "Monterey-coast wallcoverings.",
   "heroHeadline": "Monterey Wallpaper",
diff --git a/sites/naturalwalltextures.json b/sites/naturalwalltextures.json
index f10e0b6..101620c 100644
--- a/sites/naturalwalltextures.json
+++ b/sites/naturalwalltextures.json
@@ -2,7 +2,7 @@
   "slug": "naturalwalltextures",
   "domain": "naturalwalltextures.com",
   "siteName": "Natural Wall Textures",
-  "port": 10025,
+  "port": 11123,
   "siteEmail": "info@naturalwalltextures.com",
   "tagline": "Natural-fiber wall textures.",
   "heroHeadline": "Natural Wall Textures",
diff --git a/sites/patterndesignlab.json b/sites/patterndesignlab.json
index cb4752c..a32b243 100644
--- a/sites/patterndesignlab.json
+++ b/sites/patterndesignlab.json
@@ -2,7 +2,7 @@
   "slug": "patterndesignlab",
   "domain": "patterndesignlab.com",
   "siteName": "Pattern Design Lab",
-  "port": 10026,
+  "port": 11124,
   "siteEmail": "info@patterndesignlab.com",
   "tagline": "A laboratory of pattern design.",
   "heroHeadline": "Pattern Design Lab",
diff --git a/sites/philliperomano.json b/sites/philliperomano.json
index 021c9f9..b26c803 100644
--- a/sites/philliperomano.json
+++ b/sites/philliperomano.json
@@ -2,7 +2,7 @@
   "slug": "philliperomano",
   "domain": "philliperomano.com",
   "siteName": "Phillipe Romano",
-  "port": 10027,
+  "port": 11125,
   "siteEmail": "info@philliperomano.com",
   "tagline": "The Phillipe Romano collection.",
   "heroHeadline": "Phillipe Romano",
diff --git a/sites/printmurals.json b/sites/printmurals.json
index 2e07f0b..309c980 100644
--- a/sites/printmurals.json
+++ b/sites/printmurals.json
@@ -2,7 +2,7 @@
   "slug": "printmurals",
   "domain": "printmurals.com",
   "siteName": "Print Murals",
-  "port": 10028,
+  "port": 11126,
   "siteEmail": "info@printmurals.com",
   "tagline": "Printed murals for every wall.",
   "heroHeadline": "Print Murals",
diff --git a/sites/restaurantfabrics.json b/sites/restaurantfabrics.json
index bd35c23..ced50d2 100644
--- a/sites/restaurantfabrics.json
+++ b/sites/restaurantfabrics.json
@@ -2,7 +2,7 @@
   "slug": "restaurantfabrics",
   "domain": "restaurantfabrics.com",
   "siteName": "Restaurant Fabrics",
-  "port": 10029,
+  "port": 11127,
   "siteEmail": "info@restaurantfabrics.com",
   "tagline": "Designer fabrics for restaurants.",
   "heroHeadline": "Restaurant Fabrics",
diff --git a/sites/restaurantmurals.json b/sites/restaurantmurals.json
index 6c326aa..89e6371 100644
--- a/sites/restaurantmurals.json
+++ b/sites/restaurantmurals.json
@@ -2,7 +2,7 @@
   "slug": "restaurantmurals",
   "domain": "restaurantmurals.com",
   "siteName": "Restaurant Murals",
-  "port": 10030,
+  "port": 11128,
   "siteEmail": "info@restaurantmurals.com",
   "tagline": "Murals for restaurant interiors.",
   "heroHeadline": "Restaurant Murals",
diff --git a/sites/roomsettings.json b/sites/roomsettings.json
index d5c3d84..7791f30 100644
--- a/sites/roomsettings.json
+++ b/sites/roomsettings.json
@@ -2,7 +2,7 @@
   "slug": "roomsettings",
   "domain": "roomsettings.com",
   "siteName": "Room Settings",
-  "port": 10031,
+  "port": 11129,
   "siteEmail": "info@roomsettings.com",
   "tagline": "Wallcoverings, seen in the room.",
   "heroHeadline": "Room Settings",
diff --git a/sites/sheltermagazines.json b/sites/sheltermagazines.json
index cbff77a..22802a5 100644
--- a/sites/sheltermagazines.json
+++ b/sites/sheltermagazines.json
@@ -2,7 +2,7 @@
   "slug": "sheltermagazines",
   "domain": "sheltermagazines.com",
   "siteName": "Shelter Magazines",
-  "port": 10032,
+  "port": 11130,
   "siteEmail": "info@sheltermagazines.com",
   "tagline": "The wallcoverings of shelter editorial.",
   "heroHeadline": "Shelter Magazines",
diff --git a/sites/specifywallpaper.json b/sites/specifywallpaper.json
index e499918..323a87c 100644
--- a/sites/specifywallpaper.json
+++ b/sites/specifywallpaper.json
@@ -2,7 +2,7 @@
   "slug": "specifywallpaper",
   "domain": "specifywallpaper.com",
   "siteName": "Specify Wallpaper",
-  "port": 10033,
+  "port": 11131,
   "siteEmail": "info@specifywallpaper.com",
   "tagline": "Specify commercial wallcoverings with confidence.",
   "heroHeadline": "Specify Wallpaper",
diff --git a/sites/stevenabramsphotography.json b/sites/stevenabramsphotography.json
index 02453dd..f363d78 100644
--- a/sites/stevenabramsphotography.json
+++ b/sites/stevenabramsphotography.json
@@ -2,7 +2,7 @@
   "slug": "stevenabramsphotography",
   "domain": "stevenabramsphotography.com",
   "siteName": "Steven Abrams Photography",
-  "port": 10034,
+  "port": 11132,
   "siteEmail": "info@stevenabramsphotography.com",
   "tagline": "Steven Abrams — photography and design.",
   "heroHeadline": "Steven Abrams Photography",
diff --git a/sites/thehotelwallpaper.json b/sites/thehotelwallpaper.json
index 72b3b7a..f1cfb37 100644
--- a/sites/thehotelwallpaper.json
+++ b/sites/thehotelwallpaper.json
@@ -2,7 +2,7 @@
   "slug": "thehotelwallpaper",
   "domain": "thehotelwallpaper.com",
   "siteName": "The Hotel Wallpaper",
-  "port": 10035,
+  "port": 11133,
   "siteEmail": "info@thehotelwallpaper.com",
   "tagline": "Wallcoverings for the modern hotel.",
   "heroHeadline": "The Hotel Wallpaper",
diff --git a/sites/traditionalwhimsy.json b/sites/traditionalwhimsy.json
index e46d7fd..597b5b5 100644
--- a/sites/traditionalwhimsy.json
+++ b/sites/traditionalwhimsy.json
@@ -2,7 +2,7 @@
   "slug": "traditionalwhimsy",
   "domain": "traditionalwhimsy.com",
   "siteName": "Traditional Whimsy",
-  "port": 10036,
+  "port": 11134,
   "siteEmail": "info@traditionalwhimsy.com",
   "tagline": "Traditional wallcoverings with a whimsical turn.",
   "heroHeadline": "Traditional Whimsy",
diff --git a/sites/unitedstateswallpaper.json b/sites/unitedstateswallpaper.json
index 7f05fd5..9650fb1 100644
--- a/sites/unitedstateswallpaper.json
+++ b/sites/unitedstateswallpaper.json
@@ -2,7 +2,7 @@
   "slug": "unitedstateswallpaper",
   "domain": "unitedstateswallpaper.com",
   "siteName": "United States Wallpaper",
-  "port": 10037,
+  "port": 11135,
   "siteEmail": "info@unitedstateswallpaper.com",
   "tagline": "American designer wallcoverings.",
   "heroHeadline": "United States Wallpaper",
diff --git a/sites/wallcovering.json b/sites/wallcovering.json
index 7401ad3..55f1dc7 100644
--- a/sites/wallcovering.json
+++ b/sites/wallcovering.json
@@ -2,7 +2,7 @@
   "slug": "wallcovering",
   "domain": "wallcovering.net",
   "siteName": "Wallcovering",
-  "port": 10038,
+  "port": 11136,
   "siteEmail": "info@wallcovering.net",
   "tagline": "Wallcovering — the catalog.",
   "heroHeadline": "Wallcovering",
diff --git a/sites/wallpaperexports.json b/sites/wallpaperexports.json
index de6ed68..7a06953 100644
--- a/sites/wallpaperexports.json
+++ b/sites/wallpaperexports.json
@@ -2,7 +2,7 @@
   "slug": "wallpaperexports",
   "domain": "wallpaperexports.com",
   "siteName": "Wallpaper Exports",
-  "port": 10039,
+  "port": 11137,
   "siteEmail": "info@wallpaperexports.com",
   "tagline": "Designer wallcoverings for export.",
   "heroHeadline": "Wallpaper Exports",
diff --git a/sites/wallpaperfromthe80s.json b/sites/wallpaperfromthe80s.json
index 73aed63..66c8e0f 100644
--- a/sites/wallpaperfromthe80s.json
+++ b/sites/wallpaperfromthe80s.json
@@ -2,7 +2,7 @@
   "slug": "wallpaperfromthe80s",
   "domain": "wallpaperfromthe80s.com",
   "siteName": "Wallpaper From The 80s",
-  "port": 10040,
+  "port": 11138,
   "siteEmail": "info@wallpaperfromthe80s.com",
   "tagline": "Retro wallcoverings with 80s spirit.",
   "heroHeadline": "Wallpaper From The 80s",
diff --git a/sites/wallpaperny.json b/sites/wallpaperny.json
index 5d2e661..1639cd2 100644
--- a/sites/wallpaperny.json
+++ b/sites/wallpaperny.json
@@ -2,7 +2,7 @@
   "slug": "wallpaperny",
   "domain": "wallpaperny.com",
   "siteName": "Wallpaper NY",
-  "port": 10041,
+  "port": 11139,
   "siteEmail": "info@wallpaperny.com",
   "tagline": "New York designer wallcoverings.",
   "heroHeadline": "Wallpaper NY",
diff --git a/sites/wallpaperpurchasing.json b/sites/wallpaperpurchasing.json
index c9e68fb..db7503d 100644
--- a/sites/wallpaperpurchasing.json
+++ b/sites/wallpaperpurchasing.json
@@ -2,7 +2,7 @@
   "slug": "wallpaperpurchasing",
   "domain": "wallpaperpurchasing.com",
   "siteName": "Wallpaper Purchasing",
-  "port": 10042,
+  "port": 11140,
   "siteEmail": "info@wallpaperpurchasing.com",
   "tagline": "Commercial wallcovering purchasing.",
   "heroHeadline": "Wallpaper Purchasing",
diff --git a/sites/wallpaperweekly.json b/sites/wallpaperweekly.json
index 7e93127..8e40804 100644
--- a/sites/wallpaperweekly.json
+++ b/sites/wallpaperweekly.json
@@ -2,7 +2,7 @@
   "slug": "wallpaperweekly",
   "domain": "wallpaperweekly.com",
   "siteName": "Wallpaper Weekly",
-  "port": 10043,
+  "port": 11141,
   "siteEmail": "info@wallpaperweekly.com",
   "tagline": "New designer wallcoverings, weekly.",
   "heroHeadline": "Wallpaper Weekly",
diff --git a/sites/wc01wallcoverings.json b/sites/wc01wallcoverings.json
index 6972199..14296be 100644
--- a/sites/wc01wallcoverings.json
+++ b/sites/wc01wallcoverings.json
@@ -2,7 +2,7 @@
   "slug": "wc01wallcoverings",
   "domain": "wc01wallcoverings.com",
   "siteName": "WC-01 Wallcoverings",
-  "port": 10044,
+  "port": 11142,
   "siteEmail": "info@wc01wallcoverings.com",
   "tagline": "WC-01 commercial wallcoverings.",
   "heroHeadline": "WC-01 Wallcoverings",

← 5c898d7 monetize Phase 1: wire GA4 for sheltermagazines — all 35/35  ·  back to Dw Domain Fleet  ·  fleet: deploy-safe showroom-vendor require — fall back to in bab12e1 →