2012-05-12 41 views
6

Tôi đang phát triển ứng dụng web tiếp theo của mình với node.js. Với ASP.net chẳng hạn, không thể truy cập mã phía máy chủ .cs từ trình duyệt của khách hàng. Điều tôi muốn biết là khi tôi phát triển ứng dụng của mình bằng cách sử dụng node.js, tệp server.js có được bảo vệ khỏi những người duyệt trang web của tôi hay không. Điều tôi muốn nói là tôi không muốn khách truy cập trang web của tôi có quyền truy cập vào mã phía máy chủ .js. Tôi có thể bảo vệ các tập tin đó bằng cách sử dụng quyền CHMOD tập tin, nó sẽ giúp đỡ?Bảo vệ mã phía máy chủ Node.js

Trả lời

8

Nếu bạn đang sử dụng Express.js làm máy chủ web, bạn có một thư mục "công khai" nơi bạn đặt các tệp tĩnh được phân phối thẳng lên. Bên ngoài thư mục đó, bạn có các thư mục anh chị em khác, nơi bạn giữ mã của mình như "bộ điều khiển" và "mô hình". Bạn không thể điều hướng đến một trong các thư mục này thông qua trình duyệt web để chúng không thể truy cập được vì gốc tài liệu của máy chủ web của bạn là "công khai".

project_root/ 
    - app.js 
    - public/  <-- web root 
    - javascripts/ 
    - stylesheets/ 
    - images/ 
    - some_static_page.html 
    - controllers/ 
    - models/ 
    - routes/ 
    - views/ 
    - node_modules/ 
1

Không phải vì Node.js sử dụng Javascript mà tệp của bạn có thể truy cập một cách kỳ diệu trong trình duyệt. Trong Node.js giống như trong Asp.net, có một sự khác biệt giữa phía máy khách và phía máy chủ. Nếu bạn không phân phát tệp Javascript của mình cho khách hàng thì chúng sẽ không được công khai.

Các vấn đề liên quan