所以,我发现了一个相当有趣的问题,并且想知道是否有其他人遇到过它并且可能以某种方式解决它。
我正在开发响应式网站。此网站托管here。并且域名iconclash.com正在通过屏蔽转发到子域。事情进展顺利,但我注意到在移动设备上我的视口元标记无效。在检查页面后,我注意到这是注入的:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>ionclash.com</title>
</head>
<frameset rows="100%,*" border="0">
<frame src="http://nicholasarehart.com/designs/" frameborder="0" />
<frame frameborder="0" noresize />
</frameset>
这似乎打破了视口标签。如果您直接访问子域,您将看到该标记正在运行,但如果您访问它转发给它的域名,则不会。那么,有没有人见过这个?还是解决了?至少我觉得有些东西需要注意。
答案 0 :(得分:0)
注意 :在下面的方法有效之前,您需要添加一个通配符子域来指向服务器的ip。
我的目录结构如下:
/ SRV / HTTP /
---------子域/
------------------- WWW /
------------------- SUB1 /
------------------- SUB2 /
我的主网站代码位于 www 目录中,因此它适用于子域的工作方式,但实际上并不是子域名,因为它是主站点。
以下是我在httpd.conf文件中的内容。它是唯一的VirtualHost。
<VirtualHost *:80>
ServerAlias *.domain.com
#Rewrite Starts*
RewriteEngine on
#This will just force www.domain.com if
#only domain.com is given (to load our
#code in the www directory)
RewriteCond %{HTTP_HOST} ^domain.com
RewriteRule (.*) http://www.jmtk.co$1 [R=301,L]
#RewriteCond %{HTTP_HOST} !^www.* [NC]
RewriteCond %{HTTP_HOST} ^([^\.]+)\.domain\.com
RewriteCond /srv/http/subdomains/%1 -d
RewriteRule ^(.*) /subdomains/%1/$1 [L]
</VirtualHost>
以下是我服务器的一些配置信息供参考:
[root@server ~]# apachectl -v
Server version: Apache/2.2.24 (Unix)
Server built: Mar 18 2013 13:57:39
[root@jmtksrv ~]# uname -a
Linux jmtksrv 3.8.11-1-ARCH #1 SMP PREEMPT Wed May 1 20:18:57 CEST 2013 x86_64 GNU/Linux
希望这对您有用。在看了几个资源试图用mod_rewrite解释创建子域之后,我花了很长时间才最终得到它。