私は、yeoman ベースの angular.js アプリに取り組んでいます。
https で実行するように gruntfile をセットアップしました。
私の同僚のマシンでは問題なく動作しますが、私のマシンでは動作しません。
Chrome では次のようになります。
SSL connection error.
Unable to make a secure connection to the server.
This may be a problem with the server, or it may be requiring a client authentication certificate that you don't have.
Firefox では次のようになります。
The connection was interrupted
The connection to localhost:9000 was interrupted while the page was loading.
The site could be temporarily unavailable or too busy. Try again in a few moments.
If you are unable to load any pages, check your computer's network connection.
If your computer or network is protected by a firewall or proxy, make sure that Firefox is permitted to access the Web.
同じ npm モジュールがインストールされていることを再確認しました。
gruntfile の関連部分は
connect: {
options: {
port: 9000,
hostname: 'localhost',
protocol: 'https',
key: grunt.file.read('server.key').toString(),
cert: grunt.file.read('server.crt').toString(),
ca: grunt.file.read('ca.crt').toString(),
passphrase: 'grunt',
},
livereload: {
options: {
protocol: 'https',
middleware: function (connect) {
return [
modRewrite([
'^/api/(.*) /api/index.php?$1 [L]',
'!\\.html|\\.js|\\.php|\\.css|\\.png$ /index.html [L]'
]),
lrSnippet,
phpGateway('app'),
mountFolder(connect, '.tmp'),
mountFolder(connect, yeomanConfig.app)
];
}
}
},
私の同僚が証明書ファイルを生成しましたが、それらのファイルの正確なコピーを持っているので、それは問題ではありません。
最も奇妙な部分は、私がまだ http 経由でサイトを実行できることです。私の同僚のマシンでは、http 経由ではまったく実行されず、https のみで実行されます。
これがなぜなのかについて、他に考えられることはありますか?