我做了自动创build子域的脚本。
htaccess工作正常,但问题是, 我需要手动更改域名时安装在新的域名 。
我想在htaccess中自动检测域名,这可能吗?
所以当添加到另一个服务器或新域时, 不需要再次更改域根htaccess 。
从子目录文件夹中移除斜线Apache 1.3.42 DirectorySlash Off .htaccess
在特定的htaccess文件中search和replace – linux
从.htaccessredirectURL重写/映射
如何在yii2中获得像“post / 100”这样的干净url
使用htaccess进行维护页面转发对于代理资料不起作用
域根htaccess是:
RewriteCond %{HTTP_HOST} ^(www.)?([a-z0-9][-a-z0-9]+).mydomain.com(:80)?$ [NC] RewriteCond %{HTTP_HOST} !^www.mydomain.com
我尝试改变自动从%{HTTP_HOST}
RewriteCond %{HTTP_HOST} ^(www.)?([a-z0-9][-a-z0-9]+).%{HTTP_HOST}(:80)?$ [NC] RewriteCond %{HTTP_HOST} !^www.%{HTTP_HOST}
问题是%{HTTP_HOST} ,如何获取/匹配当前url与当前url与htaccess?
也许需要获取域名作为variables 。
谢谢
Apache从子域重写到www,但保留所有永久链接
奇怪的URL重写规则.htaccess问题需要解释
密码保护端口50070上的Hadoop NameNode Web UI
如果不是带有apache的目录,则删除结尾的斜杠
我相信这个RewriteCond应该为你工作:
RewriteCond %{HTTP_HOST} ^(?:www.)?((?!www.)[^.]+).([^.]+.[^.]+)$ [NC]
因此,前者; 使用像http://www.sub.domain.com这样的URL,它将捕获%1变量中的sub和%2变量中的domain.com 。
除了anubhava的回答,如果你需要在%3 domain.com之后捕获其余的url,你可以使用下面的RewriteCond
RewriteCond %{HTTP_HOST} ^(?:www.)?((?!www.)[^.]+.)?([^/.]+.[^/.]+)/?([^/]+)?$ [NC]