Với macOS Big Sur 11 mới của Apple có sẵn để tải xuống, đây là cách tải và chạy ngăn xếp AMP trên macOS mới. Hướng dẫn này sẽ thực hiện quy trình để Apache, MySQL, PHP [hay còn được gọi là ngăn xếp 'AMP'] và phpMyAdmin chạy trên hệ điều hành mac mới Big Sur
Hướng dẫn này cũng sẽ hoạt động trên macOS Catalina và Mojave
Hướng dẫn này thiết lập ngăn xếp AMP theo cách truyền thống hơn bằng cách sử dụng Apache và PHP đã tải và tải xuống MySQL và phpMyAdmin
Thiết lập nội dung
Dịch vụ web được tích hợp vào Big Sur với ứng dụng Apache, nó đã được cài đặt sẵn sàng để kích hoạt
Điều này cần phải được thực hiện trong Terminal được tìm thấy trong hệ thống lưu trữ hệ điều hành tại /Applications/Utilities/Terminal
Đối với những người không quen thuộc với Terminal, nó thực sự không đáng sợ như bạn nghĩ, sau khi khởi chạy, bạn sẽ phải đối mặt với một dấu nhắc lệnh đang chờ lệnh của bạn - chỉ cần nhập/dán một lệnh và nhấn enter, một số lệnh không cung cấp cho bạn
Sử dụng tiền tố của sudo là bắt buộc đối với các lệnh có ứng dụng của chúng được bảo vệ trong các thư mục cụ thể - khi sử dụng sudo, bạn sẽ cần xác nhận bằng mật khẩu quản trị viên hoặc mật khẩu iCloud nếu được thiết lập theo cách đó. Chúng ta hãy đi đến đó
để bắt đầu chia sẻ web Apache
sudo apachectl start
để ngăn chặn nó
sudo apachectl stop
để khởi động lại nó
sudo apachectl restart
Để tìm phiên bản Apache
httpd -v
Phiên bản Apache có trong macOS Big Sur là Apache/2. 4. 46
Sau khi khởi động Apache - kiểm tra xem máy chủ web có hoạt động trong trình duyệt không - http. // localhost - bạn sẽ thấy thông báo "Nó hoạt động. " chữ
Nếu bạn không nhận được bài kiểm tra localhost, bạn có thể thử khắc phục sự cố Apache để xem có gì sai trong tệp cấu hình của nó không bằng cách chạy
apachectl configtest
Điều này sẽ cung cấp cho bạn một dấu hiệu về những gì có thể sai
Gốc tài liệu là vị trí nơi các tệp được chia sẻ từ hệ thống tệp và tương tự như tên truyền thống của 'public_html' và 'htdocs', macOS trước đây có 2 gốc web, một ở cấp hệ thống và một ở cấp người dùng - bạn . Có vẻ như Apple sẽ ít nỗ lực hơn trong việc tiếp tục với cấp độ người dùng một nhưng nó vẫn có thể được thiết lập với một vài điều chỉnh bổ sung trong tệp cấu hình. Việc sử dụng cấp độ người dùng một sẽ dễ dàng hơn vì bạn không phải tiếp tục xác thực với tư cách là người dùng quản trị
Gốc web cấp hệ thống
- gốc tài liệu hệ thống mặc định vẫn được tìm thấy tại -
http. //máy chủ cục bộ/
Các tệp được chia sẻ trong hệ thống lưu trữ tại -
/Library/WebServer/Documents/
Gốc cấp độ người dùng
Thư mục gốc web khác bị thiếu theo mặc định là thư mục '~/Sites' trong tài khoản Người dùng. Điều này mất nhiều thời gian hơn để thiết lập nhưng một số người dùng đã quen với việc sử dụng nó
Bạn cần tạo một thư mục "Trang web" ở cấp cơ sở của tài khoản của mình và sau đó nó sẽ hoạt động. Khi bạn tạo thư mục Trang web, bạn sẽ nhận thấy rằng thư mục này có một biểu tượng duy nhất là một sự trở lại từ một vài phiên bản cũ hơn. Tạo thư mục đó trước khi bạn thiết lập tệp cấu hình người dùng được mô tả tiếp theo
Bạn phải thực hiện một vài điều chỉnh bổ sung để sao lưu và chạy thư mục ~/Sites
Thêm một “tên người dùng. conf” được nộp dưới
/etc/apache2/users/
Nếu bạn chưa có [rất có thể], thì hãy tạo một tên được đặt tên theo tên người dùng ngắn của tài khoản có hậu tố. conf, vị trí và quyền/quyền sở hữu của nó được giải quyết tốt nhất bằng cách sử dụng Terminal, trình soạn thảo văn bản 'nano' sẽ là công cụ tốt nhất để giải quyết vấn đề này
Nếu bạn muốn chỉnh sửa các tệp cấu hình trong trình soạn thảo văn bản dưới dạng một ứng dụng, tôi sẽ đề xuất trình soạn thảo văn bản như BBEdit miễn phí cho phép bạn mở các tệp hệ thống ẩn
Khởi chạy Terminal, [Ứng dụng/Tiện ích] và làm theo các lệnh bên dưới, lệnh đầu tiên đưa bạn đến đúng vị trí, lệnh thứ hai mở trình soạn thảo văn bản trên dòng lệnh [hoán đổi 'tên người dùng' bằng tên viết tắt của tài khoản của bạn, nếu bạn không biết
cd /etc/apache2/users
sudo nano username.conf
Sau đó, thêm nội dung bên dưới hoán đổi 'tên người dùng' của bạn vào mã bên dưới, có một chỉ thị người dùng hơi khác cho Big Sur và Catalina, hãy đảm bảo 'Yêu cầu máy chủ cục bộ' được sử dụng
AllowOverride All Options Indexes MultiViews FollowSymLinks Require host localhost
Quyền trên tập tin nên được
sudo apachectl stop0
Nếu không, bạn cần phải thay đổi nó
sudo apachectl stop1
Mở httpd chính. conf và cho phép một số mô-đun
sudo apachectl stop2
Và đảm bảo rằng các mô-đun này không bị ghi chú [2 mô-đun đầu tiên phải được cài đặt sạch]
sudo apachectl stop3
sudo apachectl stop4
sudo apachectl stop5
sudo apachectl stop6
sudo apachectl stop7
Trong khi bạn cũng mở tệp này để chạy php, hãy bỏ ghi chú bên dưới. [Cũng được đề cập trong phần PHP của bài viết]
sudo apachectl stop8
Và cũng bỏ ghi chú tệp cấu hình này trong httpd. conf - cho phép thư mục chính của người dùng
sudo apachectl stop9
Lưu tất cả các thay đổi của bạn [Control + O ở dạng nano]
Sau đó mở một tệp cấu hình Apache khác và bỏ ghi chú tệp khác
sudo apachectl restart0
Và bỏ ghi chú
sudo apachectl restart1
Lưu tất cả các thay đổi của bạn [Control + O ở dạng nano]
Khởi động lại Apache để đọc tệp mới
sudo apachectl restart
Sau đó, gốc tài liệu cấp người dùng này sẽ có thể xem được tại
http. //máy chủ cục bộ/~tên người dùng/
Bạn chỉ nên thấy một cấu trúc giống như cây thư mục nếu thư mục trống
Nếu bạn định sử dụng gốc tài liệu phục vụ web tại /Library/WebServer/Documents, bạn nên cho phép mọi. htaccess được sử dụng để ghi đè cài đặt mặc định - điều này có thể được thực hiện bằng cách chỉnh sửa httpd. conf ở dòng 217 và đặt AllowOverride thành All rồi khởi động lại Apache. Điều này đã được xử lý ở webroot cấp Trang web bằng cách làm theo bước trước đó
sudo apachectl restart3
Ngoài ra, trong khi ở đây cho phép viết lại URL để permalinks của bạn trông sạch sẽ, không xấu xí
Bỏ ghi chú trong httpd. conf - không nên bỏ ghi chú trên bản cài đặt sạch
sudo apachectl stop7
PHP7. 3. 24 được tải trong phiên bản macOS Big Sur này và cần được bật bằng cách bỏ ghi chú một dòng trong httpd. tập tin conf
sudo apachectl stop2
Sử dụng "control" + "w" để tìm kiếm trong nano và tìm kiếm 'php', điều này sẽ đưa bạn đến đúng dòng, sau đó bỏ ghi chú dòng [xóa dấu #]
sudo apachectl stop8
Viết ra và Lưu bằng các phím tắt nano ở dưới cùng 'control o' và 'control x'
Tải lại Apache để khởi động
sudo apachectl restart
Để xem và kiểm tra PHP, hãy tạo tên tệp là "phpinfo. php" và gửi nó vào thư mục gốc của tài liệu của bạn với nội dung bên dưới, sau đó xem nó trong trình duyệt
sudo apachectl restart8
Tại đây, bạn sẽ thấy rằng Apple không có ý định đưa PHP vào macOS trong tương lai, có lẽ với phiên bản tiếp theo của HĐH, nhưng hiện tại nó đang hoạt động mặc dù không phải là phiên bản 7. 4. Tuy nhiên, bạn có thể sử dụng giải pháp Homebrew PHP cho phép sử dụng bất kỳ phiên bản PHP nào
sudo apachectl restart9
MySQL không được tải sẵn macOS Big Sur và cần được tải xuống từ trang MySQL
Phiên bản mới nhất của MySQL 8. 0. 23 không hoạt động với bản phát hành macOS mới nhất
Sử dụng macOS 10. 15 [x86, 64-bit], phiên bản Lưu trữ DMG [hoạt động trên macOS Big Sur]
Nếu bạn đang nâng cấp từ macOS trước đó và có phiên bản MySQL cũ hơn, bạn không phải cập nhật nó
Ngoài ra, nếu bạn có bản cài đặt sạch và muốn phiên bản MySQL 5 trước đó. 7, bạn vẫn có thể lấy cái này từ trang MySQL - từ liên kết 'Tìm kiếm các phiên bản GA trước đó'. [MySQL 8 tương đối mới và không có nhiều thiết lập sản xuất]
Một điều với các bản nâng cấp MySQL, luôn lấy kết xuất dữ liệu của cơ sở dữ liệu của bạn trong trường hợp mọi thứ không như ý muốn và trước khi bạn nâng cấp lên macOS Catalina, hãy đảm bảo rằng Máy chủ MySQL của bạn không chạy
Khi tải xuống, bạn không cần phải đăng ký, hãy tìm » Không, cảm ơn, chỉ cần bắt đầu tải xuống của tôi - chuyển thẳng đến phần tải xuống.
Sau khi tải về mở. dmg và chạy trình cài đặt
Trong quá trình xử lý MySQL, bạn được nhắc chọn giữa mã hóa mật khẩu mạnh và cũ, vì phiên bản 8 hoàn toàn mới, một số phần mềm như phpMyAdmin không thể kết nối với mã hóa mới hơn - vì vậy nếu bạn định sử dụng trình bao bọc GUI như phpMyadmin, tôi đề xuất
Sau đó thêm mật khẩu cho người dùng root MySQL
Thêm Mysql vào đường dẫn của bạn
Sau khi cài đặt, để sử dụng các lệnh MySQL mà không cần nhập đường dẫn đầy đủ tới các lệnh, bạn cần thêm thư mục mysql vào đường dẫn shell của mình, [bước tùy chọn] việc này được thực hiện trong hồ sơ shell Zsh của bạn “. zshrc” trong thư mục chính của bạn [các shell trước đó đã bị bash], nếu bạn không có tệp đó, chỉ cần tạo tệp đó bằng vi hoặc nano
httpd -v0
httpd -v1
Lệnh đầu tiên đưa bạn đến thư mục chính của bạn và mở. zsh hoặc tạo một tệp mới nếu nó không tồn tại, sau đó thêm vào dòng trên để thêm đường dẫn nhị phân MySQL vào các lệnh mà bạn có thể chạy. Thoát khỏi tệp với kiểu “control + x” và khi được nhắc lưu thay đổi bằng cách gõ “y”. Điều cuối cùng cần làm ở đây là tải lại trình bao để phần trên hoạt động ngay lập tức
httpd -v2
Thay đổi mật khẩu root MySQL
[Phần này được để lại để tham khảo - trong các gói macOS MySQL trước đó, mật khẩu được đặt trong quá trình cài đặt sẽ không thành công - do đó có thông tin bên dưới. Tuy nhiên, phiên bản mới hơn này dường như hoạt động]
Lưu ý rằng đây không giống với mật khẩu root hoặc quản trị viên của macOS - đây là mật khẩu duy nhất cho người dùng root MySQL
Dừng MySQL
httpd -v3
Khởi động nó ở chế độ an toàn
httpd -v4
Đây sẽ là một lệnh đang diễn ra cho đến khi quá trình kết thúc, vì vậy hãy mở một cửa sổ shell/terminal khác và đăng nhập mà không cần mật khẩu với quyền root
httpd -v5
httpd -v6
httpd -v7
Thay đổi chữ thường 'MyNewPass' thành những gì bạn muốn - và giữ dấu nháy đơn
httpd -v8
Bắt đầu MySQL
httpd -v9
Khởi động MySQL
Sau đó, bạn có thể khởi động máy chủ MySQL từ Tùy chọn hệ thống thêm vào hàng cuối cùng hoặc thông qua dòng lệnh
Tùy chọn hệ thống MySQL mới cũng có tính năng gỡ cài đặt - hữu ích nếu bạn đã cài đặt nó với mã hóa bảo mật không phù hợp với bạn và muốn thử tính năng khác. Bạn cũng có thể xem đường dẫn đến cấu hình và nguồn dữ liệu của MySQL trong tab cấu hình
Hoặc để Dòng lệnh bắt đầu MySQL
httpd -v9
Để tìm phiên bản MySQL từ thiết bị đầu cuối, hãy nhập tại dấu nhắc
apachectl configtest1
Điều này cũng đưa bạn vào một cuộc đối thoại tương tác shell với MySQL, gõ \q để thoát
Sửa lỗi MySQL Socket 2002
Khắc phục lỗi ổ cắm 2002 lờ mờ - liên kết nơi MySQL đặt ổ cắm và nơi macOS cho rằng nó nên ở đó, MySQL đặt nó vào /tmp và macOS tìm kiếm nó trong /var/mysql ổ cắm là một loại tệp cho phép ứng dụng khách MySQL
apachectl configtest2
apachectl configtest3
Trước tiên hãy sửa lỗi ổ cắm 2002 nếu bạn chưa làm như vậy từ phần MySQL-
apachectl configtest2
apachectl configtest3
Tải về phpMyAdmin, gói zip tiếng Anh sẽ phù hợp với nhiều người dùng, sau đó giải nén nó và di chuyển thư mục chứa nội dung của nó vào thư mục đổi tên cấp gốc của tài liệu thành 'phpmyadmin'
Tạo thư mục cấu hình
apachectl configtest6
Thay đổi quyền
apachectl configtest7
Chạy thiết lập trong trình duyệt
http. //localhost/~username/phpmyadmin/setup/ hoặc http. // localhost/phpmyadmin/thiết lập/
Bạn cần tạo một localhost kết nối máy chủ mysql mới, nhấp vào máy chủ mới.
Chuyển sang tab Xác thực và đặt mật khẩu và người dùng root MySQL cục bộ.
Thêm tên người dùng “root” [có thể đã được điền sẵn, hãy thêm mật khẩu mà bạn đã thiết lập cho người dùng root MySQL đã thiết lập, nhấp vào lưu và bạn được đưa trở lại màn hình trước đó.
[Đây không phải là Quản trị viên macOS hoặc mật khẩu root - đó là người dùng root MySQL]
Bây giờ đi đến http. //localhost/~username/phpmyadmin/ giờ đây sẽ cho phép bạn tương tác với cơ sở dữ liệu MySQL của mình
Để chạy một trang web không có vấn đề về quyền, tốt nhất bạn nên đặt gốc của web và nội dung của nó ở chế độ có thể ghi được vì đây là sự phát triển cục bộ nên không phải là vấn đề bảo mật
Giả sử bạn có một trang web trong thư mục Trang web của người dùng tại vị trí sau ~/Sites/testsite, bạn sẽ đặt nó ở chế độ có thể ghi như vậy
apachectl configtest8
Nếu bạn lo lắng về bảo mật thì thay vì làm cho nó có thể ghi được trên thế giới, bạn có thể đặt chủ sở hữu thành Apache _www nhưng khi làm việc trên các tệp, bạn sẽ phải xác thực nhiều hơn với tư cách quản trị viên, bạn "không phải" chủ sở hữu, bạn sẽ làm điều này như vậy
apachectl configtest9
Điều này sẽ đặt nội dung theo cách đệ quy thuộc sở hữu của người dùng Apache
Nếu bạn có trang web được lưu trữ ở gốc Tài liệu cấp Hệ thống tại /Library/WebServer/Documents/testsite thì nó sẽ phải là cái sau
/Library/WebServer/Documents/0
Một cách khác đơn giản hơn để thực hiện việc này nếu bạn có máy trạm một người dùng là thay đổi
Đó là nó. Bây giờ bạn có ngăn xếp AMP gốc chạy trên macOS Big Sur hoặc Catalina
Để thiết lập máy chủ ảo hay còn gọi là máy chủ trên Apache, hãy xem hướng dẫn tại đây
Nếu bạn là người dùng WordPress và muốn có một môi trường phát triển cục bộ mượt mà - cũng đáng để kiểm tra là Laravel Valet chạy trên macOS - hãy xem Hướng dẫn về Valet WordPress của tôi trên macOS