--- id: iss-server title: "Cài đặt trên máy chủ IIS" --- Những hướng dẫn này dành cho Windows Server 2012, IIS 8, [Node.js 0.12.3](https://nodejs.org/), [iisnode 0.2.16](https://github.com/tjanczuk/iisnode) và [verdaccio 2.1.0](https://github.com/verdaccio/verdaccio). - Khi muốn cài đặt IIS bạn cần chạy [iisnode](https://github.com/tjanczuk/iisnode). Bạn cần chắc chắn mình tuân thủ các điều kiện cần thiết trong việc cài đặt (Mô-đun Rewrite Rewrite & node) như được mô tả trong các hướng dẫn iisnode. - Bạn hãy tạo một thư mục mới trong Explorer để lưu trữ verdaccio. Ví dụ: `C:\verdaccio`. Lưu [package.json](#packagejson), [start.js](#startjs) và [web.config](#webconfig) vào thư mục này. - Tạo một trang mới trong Trình quản lý dịch vụ thông tin Internet. Hãy đặt tên cho thư mục theo ý thích của bạn. Tôi sẽ gọi là verdaccio như trong [instructions](http://www.iis.net/learn/manage/configuring-security/application-pool-identities) này. Xác định đường dẫn để lưu tất cả các tệp và số cổng. - Trở lại Explorer và cấp quyền cho người dùng sử dụng nhóm ứng dụng trong thư mục bạn vừa tạo. Trong trường hợp bạn đã đặt tên trang này là verdaccio và chưa sửa đổi nhóm ứng dụng, đồng thời trang đang chạy ứng dụng ApplicationPoolIdentity, bạn nên cấp cho người dùng quyền sửa đổi IIS AppPool\verdaccio. Nếu bạn cần trợ giúp, vui lòng tham khảo hướng dẫn. (Nếu cần, bạn có thể hạn chế quyền truy cập trong tương lai, chỉ cho phép quyền sửa đổi trong iisnode và verdaccio\storage) - Bắt đầu dòng lệnh và thực hiện lệnh sau để tải verdaccio: cd c:\verdaccio npm install - Hãy chắc chắn bạn có yêu cầu gửi đến rằng chấp nhận lưu lượng truy cập TCP vào cổng tường lửa của Windows - Sau đấy bạn có thể điều hướng đến máy chủ và cổng mà bạn chỉ định Tôi muốn trang web `verdaccio` trở thành trang mặc định trong IIS, vì vậy tôi đã làm như sau: - Tôi chắc chắn sổ đăng ký cho tệp .npmrc trong `c:\users{yourname}` được đặt thành `"registry= http: // localhost /"` - Tôi đã hủy bỏ "trang web mặc định" và chỉ bắt đầu trang "verdaccio" trong IIS - Tôi cài đặt các binding thành "http" và địa chỉ Ip là "All Unassigned" ở cổng 80, nhấp vào ok cho bất kỳ cảnh báo hoặc lời nhắc nào Những nguyên tắc này dựa trên [ Host Sinopia trong IIS trên Windows ](https://gist.github.com/HCanber/4dd8409f79991a09ac75). Tôi phải điều chỉnh cấu hình trang web của mình như sau, tuy nhiên bạn có thể nhận thấy cấu hình ban đầu trong liên kết được đề cập ở trên hoạt động tốt hơn Tệp tin cấu hình mặc định `c:\verdaccio\verdaccio\config.yaml` sẽ được tạo ### package.json ```json { "name": "iisnode-verdaccio", "version": "1.0.0", "description": "Hosts verdaccio in iisnode", "main": "start.js", "dependencies": { "verdaccio": "^2.1.0" } } ``` ### start.js ```bash process.argv.push('-l', 'unix:' + process.env.PORT); require('./node_modules/verdaccio/src/lib/cli.js'); ``` ### web.config ```xml ``` ### Khắc phục sự cố - **Không thể tải giao diện web được lưu trữ trên https vì web luôn tải tập lệnh từ http.** Hãy đảm bảo việc bạn nhập `url_prefix` chính xác trong cấu hình verdaccio. Vui lòng vào [discussion](https://github.com/verdaccio/verdaccio/issues/622) để cùng thảo luận.