2011-05-11 39 views
11

Tôi đang làm việc trên các cửa sổ 7. IIS 7 và XAMPP được cài đặt trên cùng một máy tính. Tôi đã chơi với tập tin host win và file cấu hình apache để hiểu Server Root và thư mục.Apache và IIS 7 chạy cùng nhau

Tôi không biết nơi tôi đã sai lầm, biết khi tôi gõ localhost nó cho tôi thấy màn hình IIS 7 và khi localhost/xampp sau đó màn hình apache.

IIS và apache có thể chạy cùng nhau tại cổng 80 như thế nào? bối rối.

enter image description here

enter image description here

enter image description here

Trả lời

17

Nó là doable. Điều cần lưu ý là không có 2 dịch vụ nào có thể chia sẻ cùng một cổng và địa chỉ IP. Thật không may, IIS mất cổng 80 hoàn toàn trên địa chỉ magic 0.0.0.0. Những gì bạn cần làm là liên kết lại apache và IIS với các địa chỉ IP khác nhau cũng như loại bỏ ràng buộc 0.0.0.0. Không chính xác chắc chắn làm thế nào để đạt được điều đó trên IIS7 (giả sử bạn đang chạy nó cho IE9 trong các screenies), thời gian qua tôi kéo này diễn viên đóng thế IIS6 là hawt.

Một tùy chọn lành mạnh hơn sẽ là thiết lập proxy ngược trên 80 và đưa nội dung đó ra các máy chủ web khác nhau dựa trên bất kỳ tiêu chí hợp lý nào bạn muốn sử dụng.

EDIT: tìm thấy juju ma thuật, IIS7 post #44 - IIS7 and Apache on the same machine.

+0

Tôi đã làm điều đó giống như liên kết mà bạn đã trỏ đến. Chạy thành công trên IIS 7, Windows 2008 kể từ khoảng một năm nay. –

+0

Lạ, nếu gõ localhost từ firefox, nó sẽ hiển thị localhost cho apache. Nhưng tôi thử cùng một hình thức IE 9 nó cho thấy iis 7 trang chủ. – Gainster

+0

Echo ra ip từ xa, có lẽ là sử dụng v6 trên v4. –

9

thế nào để chạy IIS Và XAMPP Cùng trên cùng một máy

Có thể chạy cả hai IIS và XAMPP máy chủ với nhau trên cùng một máy bằng cách chỉ thay đổi số cổng của bất kỳ một trong các máy chủ. XAMPP-Apache và IIS đều sử dụng cùng một cổng 80 để kết nối. Trong bài này tôi sẽ chỉ cho bạn cách thay đổi số cổng cho máy chủ XAMPP-Apache. Thay đổi số cổng cho máy chủ Apache cho phép bạn chạy cả máy chủ IIS và XAMPP trên cùng một máy bằng cách sử dụng cổng khác nhau.

Thứ nhất, bạn cần biết thư mục chứa XAMPP (thư mục gốc). Thư mục mặc định là c: \ xampp. Từ thư mục gốc điều hướng đến thư mục "apache \ conf" và tìm tệp "httpd.conf".

Trước khi chỉnh sửa tệp, hãy sao lưu tệp có tên "httpd.conf.bak" để nếu xảy ra sự cố, bạn có thể thay thế tệp này. Bây giờ, hãy mở tệp "httpd.conf" bằng trình chỉnh sửa như notepad. Bạn cần thực hiện hai chỉnh sửa cho tệp.

Đầu tiên:

Tìm hiểu các dòng dưới đây trong tệp.

#Listen 0.0.0.0:80 
#Listen [::]:80 
Listen 80 

thay đổi nó như hình dưới đây:

#Listen 0.0.0.0:80 
#Listen [::]:80 
Listen 8080 

Tóm lược sửa đổi thứ hai:

Tìm dòng dưới đây:

ServerName localhost:80 

thay đổi nó để:

ServerName localhost:8080 

Bạn đã hoàn tất việc thay đổi số cổng. Bây giờ khởi động lại máy chủ apache của bạn từ bảng điều khiển xampp và sẵn sàng chạy.

Mở trình duyệt của bạn và nhập địa chỉ localhost:8080. Bạn có thể thấy thư mục gốc của apache đã mở. Không cần thực hiện bất kỳ thay đổi nào đối với máy chủ IIS và bạn truy cập nó bằng cách chỉ cần nhập địa chỉ localhost vào trình duyệt của bạn.

Trong ảnh chụp màn hình ở trên, bạn có thể thấy máy chủ IIS được truy cập thông qua localhost và máy chủ XAMPP qua localhost:8080 trên cùng một máy và thậm chí cùng một trình duyệt tại một thời điểm.

+1

Không hoạt động với tôi – Med7at

+0

Tương tự tại đây. Không làm việc cho tôi nữa. – gdmanandamohon

5

Trong trường hợp cố gắng để có được XAMPP (Apache) và IIS (5.1) làm việc trên WinXP đây là những gì tôi đã làm:

C: \ xampp \ apache \ conf \ httpd.conf: Tìm kiếm “Nghe 80 ", thay đổi thành“Nghe 8080 " Tìm kiếm“ServerName localhost: 80 ", thay đổi thành“ServerName localhost: 8080 "

C: \ xampp \ apache \ conf \ thêm \ httpd-ssl.conf Tìm kiếm “Nghe 443 ″, thay đổi thành“ Nghe 4499 ″ Tìm kiếm “”, đổi thành “” Tìm kiếm “ServerName localhost: 443 ″, đổi thành“ ServerName localhost: 4499 "

[Sau đó, truy cập vào phía bạn Apache bằng cách chạy localhost: 8080 và ISS bên loccalhost đơn giản]

+0

dễ dàng và hiệu quả..thanks rất nhiều .. trong C: \ xampp \ apache \ conf \ extra \ httpd-ssl.conf tập tin tôi đã thay vào đó trên localhost tôi đã có ServerName examplewebsite. Sau khi cả hai tập tin (không chỉ httpd.conf) thay đổi, tôi đã có thể bắt đầu xamp v3.2.2 cùng với IIS. – Shantu

0

tôi đã phải đối mặt với cùng một vấn đề. Tuy nhiên tôi đã giải quyết theo cách này. Tôi nhận được nó từ here, nó thực sự hiệu quả đối với tôi khi tất cả các giải pháp không thể cung cấp cho tôi giải pháp tuyệt đối.

  1. Go vào Control Panel> Administrative Tools> Kích Services
  2. Tìm “World Wide Web Publishing Service”
  3. Nhấp chuột phải và chọn “Stop”
  4. Nhấp chuột phải và chọn “Properties”, sau đó thay đổi “Startup type” là “Manual”

Nếu điều này không sửa chữa nó, bạn có thể tìm hiểu những gì đang sử dụng cổng 80 như sau:

Trong Command Prompt, chạy 'netstat -ao> netstat.txt' để ghi các kết nối đang hoạt động và các ID tiến trình liên quan (PID) vào một tệp (đối với tôi, có quá nhiều để chỉ xem chúng trong dấu nhắc lệnh) Tìm PID đang lắng nghe trên cổng 80 (0.0.0.0:80) - đối với tôi, PID là 4, có vẻ khá phổ biến Mở Task Manager (Ctrl + Shift + Esc), nhấp chuột phải vào tiêu đề cột và sau đó nhấp PID để hiển thị cột PID. Sắp xếp theo PID để tìm quá trình cho PID mà bạn đã xác định ở trên. Khi bạn biết quy trình đang gây ra sự cố, một chút Googling (các nhà cung cấp tìm kiếm khác có sẵn) sẽ giúp bạn khắc phục sự cố.

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