Tôi có một wordpress chính và một số tên miền phụ. Chúng được tạo theo cách thông thường - tôi đã thêm các tên miền phụ vào bảng điều khiển (Fastpanel) và trong các thư mục tên miền phụ, tôi đã thêm các liên kết tượng trưng vào các tệp của miền chính. Nó hoạt động hoàn hảo như mong đợi. Nhưng câu hỏi đặt ra về việc thêm 100 tên miền phụ giống nhau và việc tạo các trang web mới không thực sự thuận tiện lắm.
Tôi quyết định thử thêm tên miền phụ dưới dạng thư mục. Bây giờ nó trông như thế này ví dụ.com/sub1
ví dụ.com/sub2
. Nếu thêm một số tập tin, ví dụ, index.html
với văn bản - mở chính xác. Nhưng tôi thêm các liên kết tượng trưng và tôi được chuyển hướng đến trang chính ví dụ.com
. Có lẽ cần phải làm gì đó với cấu hình. Tôi sẽ biết ơn vì bất kỳ sự giúp đỡ nào trong vấn đề này.
Bây giờ cấu hình của tôi được tạo bởi bảng điều khiển trông như thế này:
người phục vụ {
server_name example.com *.example.com;
nghe xxx.xxx.xx.xx:443 ssl http2 ;
add_header Strict-Transport-Security "max-age=31536000" luôn luôn;
bộ ký tự utf-8;
bật gzip;
gzip_proxied đã hết hạn xác thực riêng tư không lưu trữ bộ đệm;
văn bản gzip_types/văn bản css/ứng dụng xml/văn bản javascript/ứng dụng đơn giản/hình ảnh json/svg+hình ảnh xml/biểu tượng x;
gzip_comp_level 5;
đặt tên miền phụ $ "";
if ($host ~* ^([a-z0-9-\.]+)\.example.com) {
đặt $ tên miền phụ $1;
}
nếu ($ máy chủ ~* ^www.example.com) {
đặt tên miền phụ $ "";
}
đặt $root_path /var/www/example.com/data/www/example.com/$subdomain;
gốc $root_path;
tắt_liên kết tượng trưng;
địa điểm / {
chỉ số index.php;
try_files $uri $uri/ /index.php?$args;
}
vị trí ~ \.php$ {
bao gồm /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;
}
vị trí ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpeg|avi|zip|gz|bz2|rar|swf|ico|7z|doc|docx|map |ogg|otf|pdf|tff|tif|txt|wav|webp|woff|woff2|xls|xlsx|xml)$ {
try_files $uri $uri/ /index.php?$args;
hết 180đ;
}
vị trí @fallback {
fastcgi_pass unix:/var/run/example.com.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
bao gồm /etc/nginx/fastcgi_params;
}
bao gồm "/etc/nginx/fastpanel2-sites/example.com/example.com.includes";
bao gồm /etc/nginx/fastpanel2-gồm/*.conf;
}
người phục vụ {
server_name example.com;
nghe 194.58.108.206:80;
nghe [2a00:f940:2:4:2::235f]:80;
trả lại 301 https://$host$request_uri;
}
người phục vụ {
server_name www.example.com *.example.com;
nghe xxx.xxx.xx.xx:80;
nghe xxx.xxx.xx.xx:443 ssl http2 ;
add_header Strict-Transport-Security "max-age=31536000" luôn luôn;
trả lại 301 $scheme://example.com$request_uri;
}
Nhiệm vụ là như nhau - trang web chính phải được mở trên tất cả các tên miền phụ, nhưng địa chỉ của tên miền phụ phải được lưu, tức là tại sub1.example.com
phải mở ví dụ.com
như nó là. Không chuyển hướng đến trang web chính.