Node.js 子域不起作用?
Node.js subdomain not working?
我不确定我做错了什么,我正在尝试使用 npm subdomain
从虚拟子域发出请求。我按照指示 https://github.com/edwardhotchkiss/subdomain
var subdomain = require('subdomain');
var express = require('express');
var app = express();
var http = require('http');
var server = http.createServer(app);
app.use(subdomain({ base : 'localhost', removeWWW : true }));
app.get('/subdomain/blog/', function(request, response) {
response.end('BLOG.LOCALHOST: "/"');
});
app.get('/', function(request, response) {
response.end('LOCALHOST: "/"');
});
并且在我的计算机主机文件中添加了
127.0.0.1 localhost
127.0.0.1 blog.localhost
当我路由到 http://blog.localhost:3000/
时,我得到这个返回 LOCALHOST: "/"
而不是 BLOG.LOCALHOST: "/"
我不明白为什么,我删除了我的 express 路由器,我尝试删除任何路由逻辑和东西,但我仍然得到它。显然我做错了什么。我错过了什么?
所以我看到他们将 require 子域 传入 app.use,然后是参数。如果我重新格式化他们的示例以使其看起来更像您的代码:
app.use(require('subdomain')({base: 'yourdomain.com'}));
请注意,他们不会将任何内容传递给 require 子域。相反,他们在关闭需求后传入包含基础的 JS 对象。
现在你的代码看起来像这样。
app.use(subdomain({ base : 'localhost', removeWWW : true }));
所以试试这个:
app.use(subdomain()({ base : 'localhost', removeWWW : true }));
或者这个:
app.use(require('subdomain')({ base : 'localhost', removeWWW : true }));
如果这能解决您的问题,请告诉我。
我不确定我做错了什么,我正在尝试使用 npm subdomain
从虚拟子域发出请求。我按照指示 https://github.com/edwardhotchkiss/subdomain
var subdomain = require('subdomain');
var express = require('express');
var app = express();
var http = require('http');
var server = http.createServer(app);
app.use(subdomain({ base : 'localhost', removeWWW : true }));
app.get('/subdomain/blog/', function(request, response) {
response.end('BLOG.LOCALHOST: "/"');
});
app.get('/', function(request, response) {
response.end('LOCALHOST: "/"');
});
并且在我的计算机主机文件中添加了
127.0.0.1 localhost
127.0.0.1 blog.localhost
当我路由到 http://blog.localhost:3000/
时,我得到这个返回 LOCALHOST: "/"
而不是 BLOG.LOCALHOST: "/"
我不明白为什么,我删除了我的 express 路由器,我尝试删除任何路由逻辑和东西,但我仍然得到它。显然我做错了什么。我错过了什么?
所以我看到他们将 require 子域 传入 app.use,然后是参数。如果我重新格式化他们的示例以使其看起来更像您的代码:
app.use(require('subdomain')({base: 'yourdomain.com'}));
请注意,他们不会将任何内容传递给 require 子域。相反,他们在关闭需求后传入包含基础的 JS 对象。
现在你的代码看起来像这样。
app.use(subdomain({ base : 'localhost', removeWWW : true }));
所以试试这个:
app.use(subdomain()({ base : 'localhost', removeWWW : true }));
或者这个:
app.use(require('subdomain')({ base : 'localhost', removeWWW : true }));
如果这能解决您的问题,请告诉我。