Làm sao để đưa nodejs lên vps



  • @Quốc-Cường Mình chưa đưa ứng dụng lên vps bao giờ cả. Thường thì mình chỉ cài vps để chạy được web thôi. Mình dùng vps centos 6. Mình có xem bài viết của bạn mấy lần rồi. Nhưng do lần đầu đưa lên nên bỡ ngỡ lắm
    Từ đầu đến đoạn Đưa ứng dụng của bạn lên server thì mình làm ok rồi
    Còn từ đó trở xuống mình chưa làm được!



  • @Tung-Nguyen Mình có quay lại video https://www.youtube.com/watch?v=SZD2k2nsrPY
    Bước mình đã làm tới. Mình làm tới đoạn pm2 start app.js --name "project" nhưng mình ko hiểu lắm! trong video mình có hỏi ở chỗ này! Bạn chỉ giúp mình nhé! Cảm ơn bạn!



  • Như của bạn thì là pm2 start socket.js --name "gì_cũng_được" là ok rồi chứ nhỉ?
    Bạn truy cập vào IP vps của bạn (45.32.xx.xxx:1003) để xem xem đã load được chưa? Nếu vẫn chưa thì bạn thử đổi port 1003 trong socket.js sang 80 và truy cập vào 45.32.xx.xxx:80 xem.



  • @jokyspy Mình làm như bạn nói rồi! Không được bạn ạ! Chắc mình thiếu chỗ nào đó



  • Bạn kiểm tra xem nó có mở cổng trên VPS chưa nhé :|, Cái này thì tùy thằng mà cách nó mở cổng khác nhau.



  • @Quốc-Cường em có mở cổng đó ra rồi anh! http://lodulove.net/Capture.JPG
    Nhưng không vào được anh ạ! Chắc em làm thiếu phần gì đó,mới lần đầu nên không biết là bị thiếu gì. Anh có thể teamview qua xem giúp em được không?



  • Video các bước em thực hiện bắt đầu từ lúc cài vps https://www.youtube.com/watch?v=swVk29x4JLw không biết là em còn thiếu gì nữa để nó có thể chạy được!



  • Thử curl 127.0.0.1:80 thử bạn. nó timeout hay có ra không.

    Thứ 2 Open PORT
    Nếu Centos thì dùng iptables , ubuntu thì xài ufw

    Còn không bạn xài csf để allow port, trong /etc/csf/csf.conf



  • Theo mình biết thì các port <=1024 trên linux sẽ yêu cầu quyền root [1]. Nếu bạn mở port của ứng dụng node.js bằng các port đó thì sẽ không truy cập được đâu nhé. Nhưng nếu dùng nginx làm proxy thì okay.

    Thông tin đến bạn. =))

    [1]. http://unix.stackexchange.com/questions/16564/why-are-the-first-1024-ports-restricted-to-the-root-user-only



  • Không rõ bạn đang mắc ở bước nào. Bắt đầu từ bước cài VPS nhé.

    Phần 1: Cài NodeJS

    1. Cài xong update
      yum -y update

    2. Xong cài dev tool, đại thể là những thứ như gcc, g++ để bạn build cục source nodeJS. Cài bằng yum toàn packages old date nên phải import cái repo khác để cài devtool mới nhất.
      curl http://linuxsoft.cern.ch/cern/scl/slc6-scl.repo > /etc/yum.repos.d/slc6-scl.repo
      rpm --import http://ftp.mirrorservice.org/sites/ftp.scientificlinux.org/linux/scientific/51/i386/RPM-GPG-KEYs/RPM-GPG-KEY-cern

      yum install -y devtoolset-3

    3. Và để sử dụng nó mà không cần phải thiết lập các biến môi trường thực thi lệnh này:
      scl enable devtoolset-3 bash

    4. Cài nodeJS . Đầu tiên cd tới /usr/src, nơi thường dùng để chưa source.
      cd /usr/src
      Tải source node từ trang chủ http://nodejs.org/download/.
      wget http://nodejs.org/dist/v4.2.4/node-v4.2.4.tar.gz

    v4.2.4 là version của nodejs, bạn có thể thay đổi cho phù hợp. Sau đó giải nén:

    tar zxf node-v0.10.4.tar.gz

    Cuối cùng là build source
    cd node-v4.2.4
    ./configure
    make
    make install

    Xong bạn gõ node -v xem nodejs chạy chưa. Ok rồi thì cd vào folder chứa app nodejs, start nó lên:
    node app.js &

    Dùng pm2 để quản lý process như các bạn phía trên hướng dẫn cũng được, không để đơn giản cứ start xem nó chạy chưa đã.

    Phần 2: Mở port

    Bạn không nên mở thẳng port 80 vào app của bạn, lý do như @fsociety-vn có nên trên, vậy nên bạn open port 8080 hay gì đó lớn hơn rồi forward về port 80. Forward như thế nào còn tùy VPS của bạn là gì mới hướng dẫn tiếp được. Nếu là Amazon EC2 thì có bài này cho bạn tham khảo:
    http://www.lauradhamilton.com/how-to-set-up-a-nodejs-web-server-on-amazon-ec2


Log in to reply