Рейтинг:1

Поддомены как подпапки и символические ссылки

флаг gp

У меня есть основной WordPress и несколько поддоменов. Создавались они обычным способом — в панели (Fastpanel) добавлял поддомены, а в папках поддоменов добавлял символические ссылки на файлы основного домена. Он работает отлично, как и ожидалось. Но встал вопрос о добавлении 100 одинаковых поддоменов и создании новых сайтов не очень удобно.

Я решил попробовать добавить поддомены в виде папок. Теперь это выглядит так пример.com/sub1 пример.com/sub2 . Если добавить какой-то файл, например, index.html с текстом - открывается корректно. Но я добавляю символические ссылки и меня перенаправляет на основной сайт пример.com. Наверное нужно что-то делать с конфигом. Буду благодарен за любую помощь в этом вопросе.

Теперь мой конфиг, сгенерированный панелью, выглядит так:


сервер {
    имя_сервера example.com *.example.com;
    слушать xxx.xxx.xx.xx:443 ssl http2 ;

    add_header Strict-Transport-Security "max-age=31536000" всегда;

    кодировка utf-8;

    gzip включен;
    gzip_proxied просрочил приватную авторизацию без кэша и без хранилища;
    gzip_types text/css text/xml application/javascript text/plain application/json image/svg+xml image/x-icon;
    gzip_comp_level 5;

    установить $ субдомен "";
    если ($host ~* ^([a-z0-9-\.]+)\.example.com) {
        установить $ субдомен $ 1;
    }
    если ($host ~* ^www.example.com) {
        установить $ субдомен "";
    }
    
    установить $root_path /var/www/example.com/data/www/example.com/$subdomain;
    

    корень $root_path;
    отключить_симлинки выключено;

    место расположения / {
        индекс index.php;
        try_files $uri $uri/ /index.php?$args;
    }

    расположение ~ \.php$ {
        включить /etc/nginx/fastcgi_params;
        fastcgi_pass unix:/var/run/example.com.sock;
        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
        fastcgi_param DOCUMENT_ROOT $realpath_root;
     }

    расположение ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpeg|avi|zip|gz|bz2|rar|swf|ico|7z|doc|docx|карта |ogg|otf|pdf|tff|tif|txt|wav|webp|woff|woff2|xls|xlsx|xml)$ {
        try_files $uri $uri/ /index.php?$args;
        истекает через 180 дней;
    }

    местоположение
        fastcgi_pass unix:/var/run/example.com.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        включить /etc/nginx/fastcgi_params;
    }

    включить "/etc/nginx/fastpanel2-sites/example.com/example.com.includes";
    включить /etc/nginx/fastpanel2-includes/*.conf;

}


сервер {
     имя_сервера пример.com;

    слушать 194.58.108.206:80;
    слушай [2a00:f940:2:4:2::235f]:80;

    вернуть 301 https://$host$request_uri;

}


сервер {
    имя_сервера www.example.com *.example.com;
    слушать ххх.ххх.хх.хх:80;
    слушать xxx.xxx.xx.xx:443 ssl http2 ;

    add_header Strict-Transport-Security "max-age=31536000" всегда;
    вернуть 301 $scheme://example.com$request_uri;

}

Задача та же - основной сайт должен быть открыт на всех поддоменах, но адрес поддомена должен быть сохранен, т.е. sub1.example.com должен открыть пример.com как есть. Без перенаправления на основной сайт.

флаг in
Почему вы не используете [многосайтовую установку](https://wordpress.org/support/article/create-a-network/)?
Sergey Pervushin avatar
флаг gp
Единственное изменение, которое мне нужно для поддоменов, это название города. Мультисайт тяжелый, создает кучу таблиц в базе, создает дубликаты папок с файлами, которые занимают место. Плохое решение для моей проблемы, уже пробовал)

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.