Cách để Apache khởi động httpd tự động khi khởi động trong Mac OS X

Anonim

Các nhà phát triển web dựa trên máy Mac có thể đã quen với việc khởi động và dừng thủ công máy chủ web Apache trong OS X thông qua dòng lệnh, nhưng nếu bạn muốn Apache tự khởi động khi khởi động và khởi động lại máy Mac , bạn sẽ muốn tiến thêm một bước và sử dụng launchctl. Bằng cách đó, các nhà phát triển web sẽ không cần chạy các lệnh khởi động apache theo cách thủ công để khởi động daemon Apache httpd, nó sẽ tự động khởi động mỗi khi máy Mac khởi động.Đương nhiên, chúng tôi cũng sẽ chỉ ra cách ngăn Apache tự khởi động khi khởi động.

Về cơ bản, những lệnh này thực hiện là tải daemon khởi chạy máy chủ web apache vào OS X khi khởi động hệ thống. Bởi vì nó sử dụng launchctl nên bạn sẽ cần có quyền truy cập của quản trị viên thông qua sudo để tải hoặc hủy tải apache. Hãy nhớ rằng điều này chỉ cần thiết cho các phiên bản OS X hiện đại hơn không còn tùy chọn 'chia sẻ web' trong bảng tùy chọn Chia sẻ.

Lưu ý: Điều này giả định rằng bạn đã định cấu hình và thiết lập Apache trên máy Mac, nếu chưa thực hiện thì bạn nên bắt đầu từ đó , nếu không thì bạn đang tự động tải Apache mà không cần cấu hình nhiều.

Đặt Apache tự khởi động khi khởi động trong Mac OS X

Từ Terminal, nhập lệnh sau:

sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist

Nhấn quay lại và nhập mật khẩu quản trị viên theo yêu cầu để hoàn thành công việc.

Bây giờ khi Mac được khởi động hoặc khởi động lại, Apache sẽ tự động khởi động, điều này có thể dễ dàng xác minh bằng cách truy cập bất kỳ trình duyệt nào và nhập “localhost” làm URL.

Bạn sẽ thấy thông báo quen thuộc "Nó hoạt động!" tin nhắn tại máy chủ cục bộ và các tệp cốt lõi đó nằm ở:

/Library/WebServer/Documents/

Đi xa hơn, bạn cũng có thể bật tùy chọn Trang web cấp người dùng cho localhost/~Người dùng, nhưng điều đó nằm ngoài phạm vi của bài viết này, chúng tôi sẽ đề cập đến điều đó ở đây.

Ngừng tải Apache khi khởi động trong Mac OS X

Để ngăn Apache tự động khởi động khi hệ thống khởi động, bạn chỉ cần xóa tác nhân khỏi launchd như với bất kỳ daemon nào khác, như vậy:

sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist

Một lần nữa, bạn sẽ cần nhập mật khẩu quản trị viên để xác nhận thay đổi.

Xác định xem Apache được tải hay dỡ trong launchd

Nếu bạn không chắc mình đã đặt Apache tải tự động hay chưa, bạn có thể truy vấn launchd cho apache như sau:

launchctl list|grep apache

Không thấy apache.httpd trả về? Sau đó, trình nền không được tải và nó sẽ không tự động khởi động. Apache vẫn có thể được sử dụng và khởi động theo cách thủ công, nhưng nó sẽ không tự khởi động bằng cách khởi động lại hoặc khởi động lại, khá đơn giản.

Nếu việc định cấu hình Apache, PHP và MySQL trong OS X nghe có vẻ quá phức tạp hoặc bị cho là quá rắc rối, thì một giải pháp tuyệt vời khác là sử dụng gói máy chủ web được định cấu hình sẵn như MAMP.MAMP cũng cung cấp giải pháp máy chủ web độc lập, với Apache, PHP và MySQL đã được bao gồm trong một gói ứng dụng duy nhất, người dùng chỉ cần khởi chạy ứng dụng MAMP và bắt đầu các dịch vụ cần thiết để bắt đầu và dừng máy chủ web để phát triển cục bộ. MAMP là một công cụ mạnh mẽ và tuyệt vời dành cho các nhà phát triển web dựa trên máy Mac và nó thường ít phức tạp và phức tạp hơn nhiều so với việc bạn tự định cấu hình các thành phần riêng lẻ để chạy trong OS X theo cách thủ công. Một trong hai giải pháp đều có thể tuyệt vời, vì vậy hãy sử dụng bất kỳ giải pháp nào phù hợp với bạn và mức độ thoải mái của bạn.

Cách để Apache khởi động httpd tự động khi khởi động trong Mac OS X