2014-01-09 2 views
1

Я имею в виду this post. Вопрос один и тот же; однако это не дубликат, так как это не решило мою проблему. Кстати, правильно ли тогда открыть новый вопрос?Метеоритный комплект «LISTENING», приложение недоступно на localhost: 3000

$ meteor bundle app.tar.gz 
$ tar -zxvf app.tar.gz 

Это то, что README говорит:

$ rm -r programs/server/node_modules/fibers 
$ npm install [email protected] 
$ export MONGO_URL='mongodb://<dbuser>:<dbpassword>@<PORT>.mongolab.com:<PORT>/<db>' 
$ export ROOT_URL='http://localhost:3000' 
$ node main.js 

Это говорит LISTENING, но не подключается. Решение, изложенное в сообщении, которое я имею в виду, не работает для меня. Я написал сценарий, который делает это:

export MONGO_URL='mongodb://localhost:27017/$db_name' 
export ROOT_URL=$root_url 
export PORT=3000 

Переменные заданы правильно. Это всего лишь LISTENING.

Когда я запускаю следующий сценарий, я получаю сообщение об ошибке:

db_name="mydb" 
root_url="http://my.domain.com" 

echo $db_name 
echo $root_url 

export MONGO_URL='mongodb://localhost:27017/$db_name' 
export ROOT_URL='$root_url' 
export PORT=3000 

node bundle/main.js 

Эта ошибка:

/var/mypath/bundle/programs/server/boot.js:186 
}).run(); 
^
Error: a route URL prefix must begin with a slash 
    at _.extend.declare (packages/routepolicy/routepolicy.js:95) 
    at new StreamServer (packages/livedata/stream_server.js:14) 
    at new Server (packages/livedata/livedata_server.js:1012) 
    at Package (packages/livedata/server_convenience.js:10) 
    at packages/livedata.js:3980:4 
    at packages/livedata.js:3991:3 
    at /var/mypath/bundle/programs/server/boot.js:155:10 
    at Array.forEach (native) 
    at Function._.each._.forEach      (/var/mypath/bundle/programs/server/node_modules/underscore/underscore.js:79:11) 
    at /var/mypath/bundle/programs/server/boot.js:82:5 
+0

Это работает, когда я поместил все инструкции 'MONGO_URL' и' ROOT_URL' и 'PORT' между' sudo node bundle/main.js'. Однако он не работает с 'export'. Почему это? – Xiphias

ответ

1

Кажется, что переменные окружения, объявленные в моем сценарии будут удалены после выполнения скрипта. Чтобы предотвратить это поведение, можно использовать sudo -E ./myscript.sh. Параметр -E сохраняет окружающую среду. Теперь мое приложение доступно. Я нашел свое решение here.

Смежные вопросы