- Choco Soft - https://www.choco.org.uk/chocodb -

CentOS Stream8でNodeJsを使ってNadesiko3を動かす その6

リダイレクトされている場所を特定する為に「nako3server.js」の中を見てみましょう。

>cat /home/nadesiko/node_modules/nadesiko/src/nako3server.js

/** なでしこ3簡易EXPRESSサーバー */

const express = require(‘express’)
const app = express()

// set static
const path = require(‘path’)
const rootDir = path.resolve(path.join(__dirname, ‘../’))
app.use(express.static(rootDir))
console.log(‘documentRoot:’, rootDir)

// root => redirect
app.get(‘/’, function (req, res) {
res.redirect(302, ‘demo/’)
})

// start server
let port = 3000
let server = null
const callbackStart = () => {
const opener = require(‘opener’)
const port = server.address().port
console.log(‘+ サーバーを開始しました’)
console.log(‘+ [URL] http://localhost:%s’, port)
opener(‘http://localhost:’ + port)
}

server = app
.listen(port, callbackStart)
.on(‘error’, () => {
port += 1
server = app
.listen(port, callbackStart)
.on(‘error’, () => {
port += 1
server = app
.listen(port, callbackStart)
.on(‘error’, (e) => {
console.log(‘サーバーを起動できませんでした。’)
console.log(e.toString())
})
})
})

ん、リダイレクト削除するか変更するのが正しそう。

「/home/nadesiko/node_modules/nadesiko/src/index.js」を動かすようにすれば、想定通りに動くのかな?

その前に正しいパスで取り込む命令を実施してみる。

!『http://nako.tokyo:3000/src/plugin_browser.js』を取り込む
位置情報取得した時には
対象を表示。
ここまで

[取り込みエラー]main.nako3(1行目): ファイル http://nako.tokyo:3000/src/plugin_browser.js の中に文字列 “navigator.nako3.addPluginObject” が存在しません。現在、ブラウザ版のなでしこ言語v3は自動登録するプラグインのみをサポートしています。

やはり公式ページ通りだとサーバー内の「plugin_browser.js」は現在使えないような?

【20210728】
SSL証明書が無いと位置情報命令は使えないと言うご指摘を頂きましたので、nodejs単体でのなでしこ3についてはここまでとします。
理由ですが、nodejs単体でSSL運用をする事は出来るのですが、無料のSSLを使う場合に更新が非常に面倒なのです。
よって、SSL化についてはNGINXの方で実施したいと思います。
ここまでお付き合い頂きましてありがとうございます。