Como hospedar um nó.Aplicação Js em hospedagem partilhada [fechada]
como hospedar um nó.Js application in shared hosting
Quero hospedar um nó.js aplicação em Hospedagem Compartilhada. Alguém tem alguma referência ou documentação para se referir.obrigado antecipadamente
5 answers
Tu podes executar o nó.js server em uma típica hospedagem compartilhada com Linux, Apache e PHP (LAMP). Instalei-o com sucesso, mesmo com o NPM, o Express e o Grunt a trabalhar bem. Siga os passos:
1) Crie um novo ficheiro PHP no servidor com o seguinte código e execute-o:
<?php
//Download and extract the latest node
exec('curl http://nodejs.org/dist/latest/node-v0.10.33-linux-x86.tar.gz | tar xz');
//Rename the folder for simplicity
exec('mv node-v0.10.33-linux-x86 node');
2) da mesma forma que instala a sua aplicação de nó, por exemplo jt-js-sample, usando o npm:
<?php
exec('node/bin/npm install jt-js-sample');
3) Execute a aplicação de nó do PHP:
<?php
//Choose JS file to run
$file = 'node_modules/jt-js-sample/index.js';
//Spawn node server in the background and return its pid
$pid = exec('PORT=49999 node/bin/node ' . $file . ' >/dev/null 2>&1 & echo $!');
//Wait for node to start up
usleep(500000);
//Connect to node server using cURL
$curl = curl_init('http://127.0.0.1:49999/');
curl_setopt($curl, CURLOPT_HEADER, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
//Get the full response
$resp = curl_exec($curl);
if($resp === false) {
//If couldn't connect, try increasing usleep
echo 'Error: ' . curl_error($curl);
} else {
//Split response headers and body
list($head, $body) = explode("\r\n\r\n", $resp, 2);
$headarr = explode("\n", $head);
//Print headers
foreach($headarr as $headval) {
header($headval);
}
//Print body
echo $body;
}
//Close connection
curl_close($curl);
//Close node server
exec('kill ' . $pid);
Voilà! Dê uma olhada na demonstração de um nó app on PHP shared hosting .
EDIT: iniciei um nó .projecto php no GitHub .
Ligue-se ao SSH e siga estas instruções para instalar um nó numa hospedagem Partilhada
Resumindo, primeiro instala o NVM, depois instala a versão do nó à sua escolha com o NVM.
wget -qO- https://cdn.rawgit.com/creationix/nvm/master/install.sh | bash
Reinicie a sua linha de comandos (feche e reabra as suas sessões). Então você
nvm install stable
Para instalar a última versão estável, por exemplo. Você pode instalar qualquer versão de sua escolha. Verifique node --version
a versão do nó que está a usar e nvm list
para ver o que tem fornecer.
Em bônus você pode mudar de versão muito facilmente (nvm use <version>
)
Não há necessidade de PHP ou qualquer outra solução complicada se você tem SSH.
Instalei o nó.js on bluehost.com (um servidor partilhado) usando:
wget <path to download file>
tar -xf <gzip file>
mv <gzip_file_dir> node
Isto irá transferir o ficheiro tar, extrair para um directório e, em seguida, mudar o nome desse directório para o nome 'nó' para o tornar mais fácil de usar.
Depois
./node/bin/npm install jt-js-sample
Returns:
npm WARN engine [email protected]: wanted: {"node":"0.10.x"} (current: {"node":"0.12.4","npm":"2.10.1"})
[email protected] node_modules/jt-js-sample
└── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])
Agora posso usar os comandos:
# ~/node/bin/node -v
v0.12.4
# ~/node/bin/npm -v
2.10.1
Por razões de segurança, mudei o meu directório de nódulos para outra coisa.
A2 Hosting permits node.js em suas contas de hospedagem compartilhadas. Posso confirmar que tive uma experiência positiva com eles.
Aqui estão as instruções na sua base de conhecimento para instalar o nó.js usando o Apache / LiteSpeed como um proxy inverso: https://www.a2hosting.com/kb/installable-applications/manual-installations/installing-node-js-on-managed-hosting-accounts{[5] . Demora cerca de 30 minutos para configurar a configuração, e vai funcionar com npm, Express, MySQL, etc.
Ver a2hosting.com.
Você deve procurar por uma empresa de hospedagem que forneça esse recurso, mas o padrão de hospedagem estática + PHP+MySQL não lhe permite usar o node.js.
É necessário encontrar uma hospedagem concebida para o nó.js ou compre um servidor Virtual privadoe instale-o você mesmo.