angular 2 html视频非英语字幕由apache2提供
我有最新angular cli的angular 2应用程序。应用程序有html视频播放器,能够播放带有英文字幕(vtt)的视频。apache2提供视频和字幕文件,dist/的angular bundle也提供视频和字幕文件。英文字幕效果不错,但非英文字幕根本不会出现在视频中 关键的区别在于,当我使用chrome a访问非en sub时,编码正确(预期字符)。但是当被访问时(由track标签加载),编码是错误的(一些混乱的字符) 我只注意到req头中的差异:accept,但我怀疑这是原因 使用chrome直接访问: 按曲目加载: 我包括我的apache配置(最后几行只是尝试编码,好久不见apache…) apache2.conf:angular 2 html视频非英语字幕由apache2提供,apache,angular,Apache,Angular,我有最新angular cli的angular 2应用程序。应用程序有html视频播放器,能够播放带有英文字幕(vtt)的视频。apache2提供视频和字幕文件,dist/的angular bundle也提供视频和字幕文件。英文字幕效果不错,但非英文字幕根本不会出现在视频中 关键的区别在于,当我使用chrome a访问非en sub时,编码正确(预期字符)。但是当被访问时(由track标签加载),编码是错误的(一些混乱的字符) 我只注意到req头中的差异:accept,但我怀疑这是原因 使用ch
...
<IfModule mod_mime.c>
AddType application/x-javascript .js
AddType text/css .css
AddType text/plain .webapp
AddType text/xml .xml
AddType application/xml .xml
AddType application/javascript .js
AddType application/javascript .json
</IfModule>
<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
<IfModule mod_setenvif.c>
SetEnvIfNoCase Request_URI \.(?:rar|zip)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI \.(?:gif|jpg|png)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI \.(?:avi|mov|mp4)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI \.mp3$ no-gzip dont-vary
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
</IfModule>
<IfModule mod_headers.c>
Header append Vary User-Agent env=!dont-vary
</IfModule>
</IfModule>
AddDefaultCharset utf-8
<FilesMatch \.vtt$>
ForceType text/vtt;charset=utf-8
</FilesMatch>
AddType text/vtt .vtt
AddCharset UTF-8 .vtt
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
Options -Indexes FollowSymLinks
AllowOverride None
Header set Access-Control-Allow-Origin "*"
</Directory>
<Directory /var/www/>
Header set Access-Control-Allow-Origin "*"
Header always set Access-Control-Allow-Headers "x-requested-with, Content-Type, origin, authorization, accept, client-security-token"
Options FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
<Directory /var/www/hvp/>
Header set Access-Control-Allow-Origin "*"
Header always set Access-Control-Allow-Headers "x-requested-with, Content-Type, origin, authorization, accept, client-security-token"
Options FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
Redirect permanent / https://myserver/
</VirtualHost>
<VirtualHost *:443>
ServerAdmin webmaster@localhost
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/myserver/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/myserver/privkey.pem
<Directory /var/www/hvp/>
Header set Access-Control-Allow-Origin "*"
Header always set Access-Control-Allow-Headers "x-requested-with, Content-Type, origin, authorization, accept, client-security-token"
Options FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/https_error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/https_access.log combined
</VirtualHost>
。。。
AddType应用程序/x-javascript.js
AddType text/css.css
AddType text/plain.webapp
AddType text/xml.xml
AddType应用程序/xml.xml
AddType应用程序/javascript.js
AddType应用程序/javascript.json
SetOutputFilter放气
setEnvifLocase请求_URI\(?:rar | zip)$无gzip不变
SetEnvIfNoCase请求_URI\(?:gif | jpg | png)$no gzip不变
setEnvifLocase请求_URI\(?:avi | mov | mp4)$无gzip不变
SetEnvIfNoCase请求\u URI\.mp3$no gzip不变
浏览器匹配^Mozilla/4 gzip纯文本/html
浏览器匹配^Mozilla/4\.0[678]无gzip
BrowserMatch\bMSIE!没有gzip!仅限gzip文本/html
标头附加变量用户代理env=!不要改变
AddDefaultCharset utf-8
ForceType文本/vtt;字符集=utf-8
AddType text/vtt.vtt
添加字符集UTF-8.vtt
apache2配置站点已启用/000默认值。配置:
...
<IfModule mod_mime.c>
AddType application/x-javascript .js
AddType text/css .css
AddType text/plain .webapp
AddType text/xml .xml
AddType application/xml .xml
AddType application/javascript .js
AddType application/javascript .json
</IfModule>
<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
<IfModule mod_setenvif.c>
SetEnvIfNoCase Request_URI \.(?:rar|zip)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI \.(?:gif|jpg|png)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI \.(?:avi|mov|mp4)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI \.mp3$ no-gzip dont-vary
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
</IfModule>
<IfModule mod_headers.c>
Header append Vary User-Agent env=!dont-vary
</IfModule>
</IfModule>
AddDefaultCharset utf-8
<FilesMatch \.vtt$>
ForceType text/vtt;charset=utf-8
</FilesMatch>
AddType text/vtt .vtt
AddCharset UTF-8 .vtt
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
<Directory />
Options -Indexes FollowSymLinks
AllowOverride None
Header set Access-Control-Allow-Origin "*"
</Directory>
<Directory /var/www/>
Header set Access-Control-Allow-Origin "*"
Header always set Access-Control-Allow-Headers "x-requested-with, Content-Type, origin, authorization, accept, client-security-token"
Options FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
<Directory /var/www/hvp/>
Header set Access-Control-Allow-Origin "*"
Header always set Access-Control-Allow-Headers "x-requested-with, Content-Type, origin, authorization, accept, client-security-token"
Options FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
Redirect permanent / https://myserver/
</VirtualHost>
<VirtualHost *:443>
ServerAdmin webmaster@localhost
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/myserver/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/myserver/privkey.pem
<Directory /var/www/hvp/>
Header set Access-Control-Allow-Origin "*"
Header always set Access-Control-Allow-Headers "x-requested-with, Content-Type, origin, authorization, accept, client-security-token"
Options FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/https_error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/https_access.log combined
</VirtualHost>
服务器管理员webmaster@localhost
DocumentRoot/var/www
选项-索引跟随符号链接
不允许超限
标题集访问控制允许原点“*”
标题集访问控制允许原点“*”
Header始终设置访问控制允许Header“x-requested-with、内容类型、来源、授权、接受、客户端安全令牌”
选项如下符号链接多视图
不允许超限
命令允许,拒绝
通融
标题集访问控制允许原点“*”
Header始终设置访问控制允许Header“x-requested-with、内容类型、来源、授权、接受、客户端安全令牌”
选项如下符号链接多视图
不允许超限
命令允许,拒绝
通融
ErrorLog${APACHE_LOG_DIR}/error.LOG
#可能的值包括:调试、信息、通知、警告、错误、临界值、,
#警惕,埃默格。
日志级别警告
CustomLog${APACHE\u LOG\u DIR}/access.LOG组合
重定向永久/https://myserver/
服务器管理员webmaster@localhost
斯伦金安
SSLCertificateFile/etc/letsencrypt/live/myserver/fullchain.pem
SSLCertificateKeyFile/etc/letsencrypt/live/myserver/privkey.pem
标题集访问控制允许原点“*”
Header始终设置访问控制允许Header“x-requested-with、内容类型、来源、授权、接受、客户端安全令牌”
选项如下符号链接多视图
不允许超限
命令允许,拒绝
通融
ErrorLog${APACHE\u LOG\u DIR}/https\u error.LOG
日志级别警告
CustomLog${APACHE\u LOG\u DIR}/https\u access.LOG组合
什么会导致这种行为?thx.我设法解决了它 首先,当一个文件有一个.vtt后缀时,chrome会解释它并找到正确的编码。所以比较这两者是没有意义的。现在,当潜艇工作时,我在网络选项卡中看到乱七八糟的字符,但在播放器中它工作了 第二,在时间定义中将逗号替换为点有助于在webstorm中编辑和在vlc中检查结果 所以真正的问题是字幕文件的编码和/或逗号,而不是时间定义中的点