我可以使用GoDaddy Hosting动态创建子域名(PHP,.htaccess)吗?
作者:互联网
我正在尝试使用.htaccess和PHP的组合在我的GoDaddy Hosting帐户上即时创建子域.我遇到了尝试使用通配符星号修改区域的问题.我完全不熟悉它是如何工作的,只是通过广泛探索域管理器找到了关于域的区域内容.我不确定我知道自己在做什么.我对.htaccess稍微熟悉一点,尽管编写RegEx对我来说仍然是一个很大的挑战.
我研究过另一个教程,它将使用.htaccess将子域重新路由到我的域根目录中的文件夹(例如sub.domain.com到domain.com/sub).这是我的代码:
#Grab the subdomain from the domain
RewriteCond %{HTTP_HOST} ^([^.]+).MY-DOMAIN.com$
#Make sure the subdomain is not www or example
RewriteCond %{1} !^(www)$
#Check if the directory actually exists before we go there
RewriteCond /home/content/X/Y/Z/XYZ-MY-GODADDY-ACCT/html/%1 -d
#This stops it from looping
RewriteCond %{REQUEST_FILENAME} !^/home/content/X/Y/Z/XYZ-MY-GODADDY-ACCT/html/
#Finally, this is the actual rewrite
RewriteRule (.*) /home/content/X/Y/Z/XYZ-MY-GODADDY-ACCT/html/%1 [L]
截至目前,我已完成以下工作:
>登录GoDaddy Domain Manager.
>去工具> DNS管理器.
>打开我的域的区域文件编辑器.
>添加了一个带主机名的A(主机)记录*和点到IP地址我从@条目的IP地址复制了值,因为它应该与我的域名相同……?
>现在,在等到名称服务器或任何更新和传播的内容之后,当我尝试访问子域时,我收到403错误.
有什么建议么?
解决方法:
DNS只是配置的一部分.您需要在Apache的虚拟主机配置中为* .mydomain.com安装ServerAlias,否则Apache将无法知道在哪里为* .mydomain.com路由请求 – 这意味着.htaccess永远不会有机会工作.
如果GoDaddy提供了一种手动编辑虚拟主机指令的方法,或者至少能够通过GUI添加服务器别名,那么这很容易.如果找不到,请联系GoDaddy获取信息.
标签:htaccess,php,wildcard,subdomain 来源: https://codeday.me/bug/20191003/1850384.html