我们有*.domain.com的通配符ssl证书,并且有一个sub1.sub2.domain.com的网站
在MacOsx上的safari 4.0.4弹出证书错误(可能是因为通配符解释),而Windows上的safari 4则没有.
ie8行为充其量也是混合的,有些ie8不显示证书错误,有些则不显示.
在Safari和IE上导致这种奇怪行为的原因是什么?
我有一个奇怪的情况下,我想有网址app1.example.com,example.com并且*.example.com 都使用不同的虚拟主机.这就是我所拥有的(不包括example.com因为它只是让它变得更加混乱).
<VirtualHost *>
ServerName app1.example.com
ServerAlias app1.example.com
DocumentRoot = /var/www/app1
# Other configuration for this app here
</VirtualHost>
<VirtualHost *>
ServerName wildcard.example.com
ServerAlias *.example.com
DocumentRoot = /var/www/wildcard
# other configuration for this app here
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
问题是他们发生冲突.无论哪一个列出首先胜出.如何托管通配符虚拟主机和特定主机?
注意:我不只是更改DocumentRoot配置,因此使用mod_rewrite更改DocumentRoot变量不会修复它.
有些人说使用A记录而其他人使用CNAME来捕获所有子域.
我应该使用哪个以及为什么?
是否有人知道解析为IP地址127.0.0.1的公共通配符域名.例如,如果我想在本地测试URL,例如mywebsite.localhost.com或example.localhost.com,但我无法控制DNS设置(主机文件或其他),那么我将使用此公共DNS解析为127.0 .0.1.它需要是通配符,以便无论localhost.com之前发生什么,它仍然会解析为127.0.0.1.
我将使用flask来创建一个Web应用程序,部分应用程序将涉及一个子域(例如,user1.appname.org).
我不确定如何在烧瓶配置中动态创建这些子域,或者如何将它们部署到生产服务器.
这样做的最佳方式是什么?
我有通配符dns指向我的服务器,例如*.domain.com
我想将每个子域路由到它自己的docker容器.这样box1.domain.com就会转到相应的docker容器.这适用于主要是HTTP和SSH的任何流量.
或者也许端口可以是子域的一部分,例如80.box1.domain.com.我将拥有大量的docker容器,因此解决方案应该是动态的,而不是每个容器的硬编码.
我知道之前有过一些线索,但我已经尝试了所有建议(我能找到的),到目前为止我没有任何工作......
考虑到这一点,这是我正在尝试做的事情:
首先,我想允许用户发布页面并为每个页面提供他们选择的子域名(例如:user.mysite.com).从我可以收集到的,最好的方法是使用mod_rewrite和.htaccess将user.mysite.com映射到mysite.com/user - 这是正确的吗?
如果这是正确的,有人可以给我明确的指示如何做到这一点?
另外,我在本地进行所有开发,使用MAMP,所以如果有人能告诉我如何设置我的本地环境以相同的方式工作(我读过这个更难),我将非常感激.老实说,我一直在尝试一切无济于事,因为这是我第一次做这样的事情,我完全迷失了.非常感谢您的帮助!
更新: 其中一些答案非常有用,但对于我想到的系统,不能为每个用户手动添加子域.我真正想问的是如何动态地执行此操作,并将wildcard.mysite.com重定向到mysite.com/wildcard-Tumblr的设置方式就是我想要做的完美示例.再次感谢!
我在Android上使用HttpClient连接到https://someUrl.com/somePath.问题是网站的证书是针对*.someUrl.com而不是someUrl.com的,所以我得到了一个SSLException.网站上有跛脚,是的,但除非我能解决这个问题,否则我会陷入困境.有没有办法让HttpClient放松并接受证书?
我正在研究虚拟域系统.我有一个通配符DNS设置为*.loc,我正在尝试处理我的.htaccess文件.以下代码有效:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.)?example\.loc$ [NC]
RewriteCond %{REQUEST_URI} !^/example/
RewriteRule (.*) /example/$1 [L,QSA]
Run Code Online (Sandbox Code Playgroud)
但是,我希望这可以与我放入的任何内容一起使用.但是,我需要%{REQUEST_URI}对作为域的文本进行检查.我尝试使用此代码:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www.)?([a-zA-Z0-9-]*.)?([a-zA-Z0-9-]+)\.loc$ [NC]
RewriteCond %{REQUEST_URI} !^/%3/
RewriteRule (.*) /%3/$1 [L,QSA]
Run Code Online (Sandbox Code Playgroud)
但该行RewriteCond %{REQUEST_URI} !^/%3/导致我的代码抛出内部服务器错误.我理解这是因为我的代码中有%N,但有没有办法可以使用它?我需要这一行,否则,我的代码会因内部重定向而失败.
我希望这对某人有意义.我需要的是能够在后面的RewriteCond中反向引用RewriteCond.
apache .htaccess mod-rewrite backreference wildcard-subdomain
我想要这种情况:
如果用户请求使用此URL:example.com或者www.example.com,用户将index.php在此目录中看到/home/admin1/public_html/
但是当用户请求使用其他子域(通配符)时freediscount.example.com,用户将index.php在此路径中看到:/home/admin1/public_html/userweb/freediscount.example.com
我托管的技术支持建议我使用这种方法:http://www.wiredstudios.com/php-programming/setting-up-wildcard-dns-for-subdomains-on-cpanel.html
基于该教程,PHP有一个新工作...当用户请求子域时重定向特定文件夹.我不喜欢这种方法.对我来说,如果Apache可以处理这个问题会更好.
几乎接近我需要的是这个方法:Virtualhost For Wildcard Subdomain和Static Subdomain
但是,我有一个VirtualHost设置问题,如何VirtualHost正确创建该情况?
这是我所做的但没有奏效:
## I think this one is for www or without www, automatically generated with WHM
<VirtualHost xx.xx.xx.xx:80>
ServerName example.com
ServerAlias www.example.com
DocumentRoot /home/admin1/public_html
</VirtualHost>
## Here's what I'm trying to add
<VirtualHost xx.xx.xx.xx:80>
ServerName example.com
DocumentRoot /home/admin1/public_html/userweb/*
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)