如何为每个子域创建站点实例
How to create a site instance per subdomain
我想创建一个网络平台,让每个客户都有自己的网站,例如 uservoice.com
示例:
- 主网站:uservoice.com
- 客户 1:cust1-subdomain.uservoice.com
- 客户 2:cust2-subdomain.uservoice.com
objective是客户可以通过自己的url和登录页面进入其站点。
有人知道怎么做吗?如何通过子域避免子目录并复制所有文件?我正在寻找一个干净且可扩展的解决方案。
我认为解决方案是基于名称的虚拟主机。
例如域 cust2-subdomain.uservoice.com 将显示位于与您的 DocumentRoot 不同的文件夹中的内容,但地址将保持不变。服务器将识别域并发送适当的内容。
如果您使用的是 apache:如果尚未取消注释,则需要在 httpd.conf 文件中取消注释此行:
Include conf/extra/httpd-vhosts.conf
那么你应该编辑 /usr/local/apache2/conf/extra/httpd-vhosts.conf.
<VirtualHost *:80>
ServerAdmin you@uservoice.com
DocumentRoot "/usr/local/apache2/docs/uservoice.com"
ServerName uservoice.com
ServerAlias www.uservoice.com
ErrorLog "logs/uservoice.com/error_log"
CustomLog "logs/uservoice.com/access_log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin cust2@uservoice.com
DocumentRoot "/users/customers/cust2/WWW"
ServerName cust2-subdomain.uservoice.com
ServerAlias www.cust2-subdomain.uservoice.com
ErrorLog "logs/cust2/error_log"
CustomLog "logs/cust2/access_log" common
</VirtualHost>
第一部分用于您的网站,第二部分用于 cust2 的网站。所以 cust2 会将他的站点放入位于他的主目录中的 WWW 文件夹中。您会将您的内容放在旧的 DocumentRoot 中。 (您需要自定义 /usr/local/apache2/conf/extra/httpd-vhosts.conf)。
我想创建一个网络平台,让每个客户都有自己的网站,例如 uservoice.com
示例:
- 主网站:uservoice.com
- 客户 1:cust1-subdomain.uservoice.com
- 客户 2:cust2-subdomain.uservoice.com
objective是客户可以通过自己的url和登录页面进入其站点。
有人知道怎么做吗?如何通过子域避免子目录并复制所有文件?我正在寻找一个干净且可扩展的解决方案。
我认为解决方案是基于名称的虚拟主机。
例如域 cust2-subdomain.uservoice.com 将显示位于与您的 DocumentRoot 不同的文件夹中的内容,但地址将保持不变。服务器将识别域并发送适当的内容。
如果您使用的是 apache:如果尚未取消注释,则需要在 httpd.conf 文件中取消注释此行:
Include conf/extra/httpd-vhosts.conf
那么你应该编辑 /usr/local/apache2/conf/extra/httpd-vhosts.conf.
<VirtualHost *:80>
ServerAdmin you@uservoice.com
DocumentRoot "/usr/local/apache2/docs/uservoice.com"
ServerName uservoice.com
ServerAlias www.uservoice.com
ErrorLog "logs/uservoice.com/error_log"
CustomLog "logs/uservoice.com/access_log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin cust2@uservoice.com
DocumentRoot "/users/customers/cust2/WWW"
ServerName cust2-subdomain.uservoice.com
ServerAlias www.cust2-subdomain.uservoice.com
ErrorLog "logs/cust2/error_log"
CustomLog "logs/cust2/access_log" common
</VirtualHost>
第一部分用于您的网站,第二部分用于 cust2 的网站。所以 cust2 会将他的站点放入位于他的主目录中的 WWW 文件夹中。您会将您的内容放在旧的 DocumentRoot 中。 (您需要自定义 /usr/local/apache2/conf/extra/httpd-vhosts.conf)。