这里我有一个用CSS定义的图标字体
.social li a.facebook:before { font-family: 'icomoon'; content: "\f09a"; }
现在,如果我拨打http://www.somewebsite.com而不是图标,则会显示内容为F09A
的矩形。在源代码(Ctrl + U)中,css包含在内
<link rel='stylesheet' id='font-css' href='http://www.somewebsite.com/wp-content/themes/sometheme/css/iconfont.css?ver=4.3.6' type='text/css' media='all' />
在这个css中,相对包含字体
@font-face {
font-family: 'icomoon';
src:url('../fonts/icomoon.eot?-m6u1i9');
src:url('../fonts/icomoon.eot?#iefix-m6u1i9') format('embedded-opentype'),
url('../fonts/icomoon.woff') format('woff'),
url('../fonts/icomoon.ttf') format('truetype'),
url('../fonts/icomoon.svg?-m6u1i9#icomoon') format('svg');
font-weight: normal;
font-style: normal;
}
Wordpress的网站网址设置为https。如果我单击检查器中的http样式表链接,我将被重定向到CSS的https版本。在Chrome中,我在调用网站的http版本后得到以下信息:
来自原点的字体&#39; https://www.somewebsite.com&#39;已被封锁 通过跨源资源共享策略加载:否 &#39;访问控制允许来源&#39;标题出现在请求的上 资源。起源&#39; http://somewebsite.com&#39;因此是不允许的 访问。
似乎存在两个不同之处:
调用网站的https版本可以正常使用。这里字体显示正确。
有没有办法让http和https版本运行同一个网站?或者我是否必须通过.htaccess
开始强制https?
一些旁注:
证书是否仅对www.somewebsite.com有效?
修改
现在我在域级别使用重定向。
http://somewebsite.com现在重定向到https://www.somewebsite.com http://www.somewebsite.com重定向到https://www.somewebsite.com
目前似乎工作。
答案 0 :(得分:1)
您无法混合使用http和https内容。您需要使用https发送所有内容,并使用您需要设置标头以允许访问的其他域中的资源。
您可以在.htaccess中的原始服务器上使用它。
www.example.com
证书似乎仅适用于www。因此,您需要始终使用www和https。 example.com
和<form class="form-inline">
<div class="form-group">
<div class="input-daterange" id="datepicker">
<span>From:</span>
<div class="input-group">
<input type="text" class="input-sm form-inline" name="start"/>
<span class="input-group-addon"><i class="fa fa-calendar fa-lg" aria-hidden="true"></i></span>
</div>
</div>
</div>
<div class="form-group">
<div class="input-daterange" id="datepicker">
<span>To:</span>
<div class="input-group">
<input type="text" class="input-sm form-inline" name="end"/>
<span class="input-group-addon"><i class="fa fa-calendar fa-lg" aria-hidden="true"></i></span>
</div>
</div>
</div>
</form>
是两个不同的域名。 www是一个子域名。
答案 1 :(得分:1)
是的,httpd.conf <VirualHost>
条目允许您同时运行https://www.example.com(在端口443上)和http://www.example.com(在端口80上)。您甚至可以将它们指向相同的物理磁盘位置(可能不是最好的主意)。
你要永远或永远不要提供“www”。 (即如果没有发送www,则重定向到“www.yoursite.com”。否则这样的事情会不断出现。
在HTML / CSS中,您可以指定“//somefile.example”以指示您正在进行绝对路径引用,但希望保持使用的相同方案。
您可以通过以下方式检查证书以查看其在Linux中的有效内容:
openssl x509 -noout -in /yourcertfile -subject -issuer -dates
您希望确保CN=
(公用名)与您的网络服务器的主机名相匹配,包括任何子域(即“www”)