Nginx动态通配符子域,用于域的动态URL



我想为下面的网址配置 nginx.conf

domain.com/user/suvojit => suvojit.domain.com

到目前为止,我的nginx配置如下

server {
listen 80; ## listen for ipv4
server_name domain.com;
root        /var/www/html/project/frontend/web/;
index       index.php;
access_log  /var/www/html/project/vagrant/nginx/log/frontend-access.log;
error_log   /var/www/html/project/vagrant/nginx/log/frontend-error.log;
location / {
    try_files $uri $uri/ /index.php$is_args$args;
}
location ~ .php$ {
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
    try_files $uri =404;
}
location ~ /.(ht|svn|git) {
    deny all;
}}

我正在使用 Yii2 应用程序。有什么需要指定的吗?

你需要有一个服务器块到你的nginx配置

server {
listen 80; ## listen for ipv4
server_name ~^(?<user>[^.]+).example.com$;
return 301 http://example.com/user/$user;
}

您还需要确保在 DNS 中创建一个通配符子域条目,以便*.domain.com解析到您的服务器

最新更新