我已经启用mod_headers在我的apache(Windows Server 2008的2.2)configuration,但它没有做任何事情。
我已经将头文件指令移到了configuration的所有部分,甚至是根文件中的.htaccess文件,而且它什么都不做。
<VirtualHost *:80> ServerName [dedacted] ServerAdmin [dedacted] DocumentRoot "C:\data" Header always append Access-Control-Allow-Origin "*" ErrorLog "logs/data.log" CustomLog "logs/data.log" common <Directory C:\data> Options FollowSymLinks All AllowOverride All Order deny,allow Allow from all </Directory> </VirtualHost>
我已经检查了通过命令行和phpinfo()加载的模块,如下所示:
Loaded Modules core mod_win32 mpm_winnt http_core mod_so mod_actions mod_alias mod_asis mod_auth_basic mod_authn_default mod_authn_file mod_authz_default mod_authz_groupfile mod_authz_host mod_authz_user mod_autoindex mod_cgi mod_dir mod_env **mod_headers** mod_include mod_isapi mod_log_config mod_mime mod_negotiation mod_rewrite mod_setenvif mod_php5
进出我的脑海,甚至到了即时考虑重新安装Apache的点。
谁能帮忙!
任何机会,你这样做是出于同样的原因,我们其他人现在正在做这个自定义字体文件? 如果是这样,我最终做的事情可能会有所帮助:
<FilesMatch "\.(ttf|otf|eot)$"> <IfModule mod_headers.c> Header set Access-Control-Allow-Origin "*" </IfModule> </FilesMatch>
我认为Header指令应该放在<Directory> , <File>或<Location>部分。 像这样:
<Directory C:\data> Options FollowSymLinks All AllowOverride All Order deny,allow Allow from all Header always append Access-Control-Allow-Origin "*" </Directory>