Php có được bao gồm trong apache không?
Show
Scott Theo dõi 5 Tháng Năm, 2020 · 1 phút đọc Làm thế nào để chạy PHP trên máy mac cục bộApache và PHP được cài đặt tự động trên tất cả các máy Mac Chạy Apachesudo su- Kiểm tra nó bằng cách mở trình duyệt và đưa vào 7sau đó đặt một tệp php vào thư mục gốc tài liệu của bạn đi tới thư mục gốc của máy chủ apache của bạn cd /Library/Webserver/Documents sau đó sudo nano test.php Sau đó ghi vào tệp php của bạn echo "Hello world we did it! Booyakasha!"; Sau đó mở trình duyệt của bạn Nhiều chủ sở hữu trang web sử dụng PHP với trang web của họ để mở rộng khả năng của trang web. Trước khi bạn có thể bật PHP trên máy Mac, trước tiên bạn phải bật Apache. Cả PHP và Apache đều là các chương trình phần mềm mã nguồn mở miễn phí và cả hai đều được cài đặt trên tất cả máy Mac. PHP là phần mềm phía máy chủ và Apache là phần mềm máy chủ web được sử dụng rộng rãi nhất. Kích hoạt Apache và PHP trên Mac không khó 01 của 04 Kích hoạt Apache trên MacOSĐể bật Apache, hãy mở ứng dụng nằm trong thư mục Ứng dụng > Tiện ích của Mac. Bạn cần chuyển sang người dùng root trong Terminal để có thể chạy các lệnh mà không gặp bất kỳ sự cố nào về quyền. Để chuyển sang người dùng root và khởi động Apache, hãy nhập đoạn mã sau vào Terminal sudo su - khởi động apachectl Đó là nó. Nếu bạn muốn kiểm tra xem nó có hoạt động không, hãy nhập http. //localhost/ trong trình duyệt và bạn sẽ thấy trang kiểm tra tiêu chuẩn của Apache 02 của 04 Kích hoạt PHP cho ApacheTạo bản sao lưu của cấu hình Apache hiện tại trước khi bạn bắt đầu. Đây là một cách thực hành tốt vì cấu hình có thể thay đổi khi nâng cấp trong tương lai. Thực hiện việc này bằng cách nhập thông tin sau vào Terminal cd /etc/apache2/ cp httpd. conf httpd. conf. dãy núi Tiếp theo, chỉnh sửa cấu hình Apache với vi httpd. conf Bỏ ghi chú dòng tiếp theo (xóa #) LoadModule php5_module libexec/apache2/libphp5. vì thế Sau đó, khởi động lại Apache khởi động lại apachectl Ghi chú. Khi Apache đang chạy, danh tính của nó đôi khi là "httpd", viết tắt của "HTTP daemon. " Mã ví dụ này giả sử phiên bản PHP 5 và MacOS Sierra. Khi các phiên bản được nâng cấp, mã phải thay đổi để phù hợp với thông tin mới 03 của 04 Xác minh rằng PHP đã được bậtĐể xác minh rằng PHP đã được bật, hãy tạo một trang phpinfo() trong DocumentRoot của bạn. Trong MacOS Sierra, DocumentRoot mặc định nằm trong /Library/WebServer/Documents. Xác minh điều này từ cấu hình Apache grep DocumentRoot httpd. conf Tạo trang phpinfo() trong DocumentRoot của bạn tiếng vang ' Bây giờ hãy mở trình duyệt và nhập http. // localhost/phpinfo. php để xác minh rằng PHP đã được kích hoạt cho Apache 04 của 04 Các lệnh bổ sung của ApacheBạn đã học cách khởi động Apache ở chế độ Terminal với apachectl start. Dưới đây là một vài dòng lệnh bạn có thể cần. Chúng nên được thực thi với tư cách là người dùng root trong Terminal. Nếu không, hãy thêm tiền tố cho chúng Dừng Apache dừng apachectl duyên dáng dừng lại dừng duyên dáng apachectl Khởi động lại Apache khởi động lại apachectl Khởi động lại duyên dáng apachectl duyên dáng Để tìm phiên bản Apache httpd -v Ghi chú. Bắt đầu, khởi động lại hoặc dừng "duyên dáng" ngăn quá trình tố tụng bị dừng đột ngột và cho phép hoàn tất các quy trình đang diễn ra Trích dẫn bài viết này Định dạng mla apa chicagotrích dẫn của bạn Bradley, Angela. "Cách cài đặt PHP trên máy Mac. "ThinkCo. https. //www. suy nghĩ. com/how-to-install-php-on-a-mac-2694012 (truy cập ngày 2 tháng 12 năm 2022) Tại Tower, chúng tôi sử dụng Apache để lưu trữ các trang web như nền tảng học tập, blog và trang web sản phẩm chính của chúng tôi. Mặc dù điều này không có nghĩa là chúng tôi phải sử dụng Apache để chạy các trang web cục bộ, nhưng việc sử dụng một ngăn xếp tương tự để phát triển và sản xuất nói chung là một ý tưởng hay. Điều này có nghĩa là thiết lập môi trường phát triển với Apache. Trên macOS, phần lớn chúng tôi sử dụng, có khá nhiều tùy chọn. Chúng tôi có thể thiết lập Apache trong một máy ảo, có lẽ được điều khiển bằng Vagrant. Chúng ta có thể sử dụng Docker để chạy Apache trong một container. Ngoài ra còn có các giải pháp với giao diện người dùng đồ họa như MAMP. Tuy nhiên, một giải pháp thuận tiện và đơn giản là chỉ thiết lập Apache chạy tự nhiên trong macOS — không trình bao bọc, không máy ảo, không container hóa. Trong bài đăng này, chúng tôi sẽ hướng dẫn cách thiết lập Apache và PHP, sử dụng các phiên bản được cài đặt bằng trình quản lý gói Homebrew cho macOS macOS đi kèm với các phiên bản Apache và PHP tích hợp sẵn và chúng tôi có thể dễ dàng sử dụng chúng. Tuy nhiên, có một vài nhược điểm với phương pháp này. Chúng tôi không có quyền kiểm soát các phiên bản chính xác được sử dụng và phiên bản có sẵn có thể không được cập nhật. Tôi gặp sự cố khi các bản cập nhật hệ điều hành ghi đè lên cấu hình của tôi cho máy chủ Apache tích hợp. Cuối cùng, chạy 1 để kiểm tra phiên bản của PHP tích hợp sẽ đưa ra một thông báo cảnh báo rằng PHP sẽ bị xóa khỏi các phiên bản macOS trong tương lai — thực tế, trong macOS Monterey sắp tới, PHP dường như đã biến mất. Thay vì sử dụng các phiên bản tích hợp sẵn, chúng tôi sẽ cài đặt Apache và PHP bằng Homebrew. Chúng ta sẽ xem xét cách thiết lập môi trường phát triển cục bộ bằng cách sử dụng những môi trường này và như thường lệ, chúng ta sẽ cố gắng đề cập đến “tại sao” cũng như “cái gì”; Dưới đây là các bước chúng tôi sẽ thực hiện
1. Cài đặtCó thể tìm thấy hướng dẫn cách cài đặt Homebrew trên trang web chính thức của Homebrew. Giả sử Homebrew đã được cài đặt, tất cả những gì bạn cần làm để cài đặt Apache và PHP là chạy lệnh sau. 2 ( 3 đề cập đến máy chủ web Apache)Một từ liên quan đến con đường. trên máy Mac có Apple Silicon, Homebrew sẽ sử dụng 4 làm tiền tố. Tiền tố là một loại thư mục cơ sở; . Các tệp nhị phân sẽ có trong 5, các tệp cấu hình trong 6, v.v. Trên máy Mac dựa trên Intel, thay vào đó, thư mục cơ sở này có thể sẽ là 7. Trong bài viết này, tôi sẽ đề cập đến các đường dẫn sử dụng tiền tố Homebrew là 4. Nếu tiền tố của bạn khác, vui lòng thay đổi đường dẫn cho phù hợp. Để tìm ra thư mục cơ sở Homebrew đang sử dụng trên máy của bạn, hãy chạy 92. URL phát triểnTrước khi chúng ta bắt đầu cấu hình Apache và PHP, hãy nói ngắn gọn về chủ đề URL phát triển. Tôi nghĩ rằng một thiết lập tốt để phát triển cục bộ là sử dụng một TLD cụ thể như cd /Library/Webserver/Documents 30, truy cập các dự án khác nhau của tôi thông qua các URL như cd /Library/Webserver/Documents 31, cd /Library/Webserver/Documents 32, v.v. Trong hướng dẫn này, chúng tôi sẽ chỉ sử dụng tệp cd /Library/Webserver/Documents 33 để trỏ các miền “giả mạo” của chúng tôi tới máy chủ web cục bộ của chúng tôi. Nếu có hứng thú, một bài đăng trong tương lai có thể đề cập đến cách thiết lập một dịch vụ như dnsmasq để tự động lấy tất cả các yêu cầu tới máy chủ kết thúc bằng cd /Library/Webserver/Documents 30 và gửi chúng tới máy chủ phát triển cục bộ của chúng tôicd /Library/Webserver/Documents 30 là miền cấp cao nhất dành riêng và do đó, khi sử dụng miền này, bạn sẽ không gặp phải các sự cố như những người sử dụng cd /Library/Webserver/Documents 36 cho môi trường phát triển đã gặp phải khi Google mua lại TLD cd /Library/Webserver/Documents 36Tệp cd /Library/Webserver/Documents 33 cung cấp một cách thuận tiện để liên kết tên máy chủ với địa chỉ IP. Thông thường, khi chúng tôi truy cập một URL như cd /Library/Webserver/Documents 39, địa chỉ IP thực của máy chủ phải được xác định thông qua một thứ gọi là Hệ thống tên miền hoặc viết tắt là DNS. Tệp cd /Library/Webserver/Documents 33 cung cấp cho chúng tôi một cách dễ dàng để ghi đè tệp này. Đối với mục đích của bài viết này, giả sử chúng ta đang làm việc với một dự án có tên là sudo nano test.php 41, dự án mà chúng ta muốn phân phát tại URL sudo nano test.php 42. Chúng tôi sẽ thêm dòng này ở dưới cùng của cd /Library/Webserver/Documents 33sudo nano test.php 7Sau khi lưu tệp, truy cập sudo nano test.php 42 trong trình duyệt sẽ dẫn đến yêu cầu được gửi đến địa chỉ IP cho máy của chúng tôi3. Cấu hình ApacheTiếp theo, hãy bắt tay vào cấu hình Apache thực tế. Trong trường hợp của tôi, tệp cấu hình chính của Apache được đặt tại sudo nano test.php 45 (một lần nữa, trên máy Mac dựa trên Intel, đây có thể là sudo nano test.php 46). Trong tệp này, có một vài thay đổi cần thực hiện
Dòng này yêu cầu Apache lắng nghe lưu lượng truy cập trên cổng 8080. Truy cập các cổng có số thấp hơn 1024 yêu cầu quyền root và do đó, lắng nghe trên cổng 8080 cho phép người dùng chạy Apache mà không cần root. Tuy nhiên, vì lưu lượng HTTP đi đến cổng 80 theo mặc định, thay vào đó, chúng tôi muốn nghe trên cổng đó cd /Library/Webserver/Documents 3Rất có thể, bạn muốn chạy nhiều trang web trên máy tính của mình, với một số tên máy chủ trong cd /Library/Webserver/Documents 33. Tuy nhiên, tất cả những thứ này sẽ tấn công cùng một máy chủ Apache. Để phục vụ nhiều trang web từ một máy chủ Apache, Apache có thể xem tên máy chủ của yêu cầu đến và chuyển yêu cầu tới một trong nhiều máy chủ ảo. Hỗ trợ máy chủ ảo phải được bật bằng cách xóa sudo nano test.php 48 ở phía trước dòng bên dưới, biến nó từ một nhận xét thành một lệnh Apache để tải cấu hình máy chủ ảo từ tệp được đề cậpsudo nano test.php 4Chúng tôi sẽ bỏ ghi chú một dòng khác để tải mô-đun sudo nano test.php 49. Mô-đun này được sử dụng để viết lại các URL đến. Ví dụ: nhiều khung web sử dụng nó để kích hoạt “các URL đẹp”, cho phép khách truy cập trang web sử dụng các URL như echo "Hello world we did it! Booyakasha!"; 70 trong khi dịch chúng thành các URL như echo "Hello world we did it! Booyakasha!"; 71 cho phần phụ trợ. Mô-đun này có thể sẽ hữu ích, vì vậy hãy kích hoạt nó bằng cách xóa sudo nano test.php 48 bên dưới echo "Hello world we did it! Booyakasha!"; 7Apache đi kèm với cấu hình cho một trang web mặc định, với tài liệu gốc là echo "Hello world we did it! Booyakasha!"; 73. Chúng tôi sẽ không sử dụng trang web này vì chúng tôi sẽ sử dụng máy chủ ảo thay thế. Như hiện tại, mọi thứ sẽ hoạt động, nhưng Apache sẽ đưa ra cảnh báo mỗi khi khởi động, nói rằng nó không thể xác định tên máy chủ để sử dụng cho trang web mặc định này. Chúng tôi sẽ đặt tên máy chủ trên cơ sở mỗi máy chủ ảo sau. Tuy nhiên, để tắt thông báo cảnh báo, chúng tôi sẽ bỏ ghi chú chỉ thị echo "Hello world we did it! Booyakasha!"; 74 mặc định trong echo "Hello world we did it! Booyakasha!"; 75 (hoặc chỉ cần nhập bất kỳ tên máy chủ nào bạn muốn) 44. Cấu hình PHPChúng tôi muốn PHP có sẵn trên máy chủ của chúng tôi. Đối với điều này, chúng tôi sẽ thêm một lệnh echo "Hello world we did it! Booyakasha!"; 76 khác sau các lệnh khác, tải một mô-đun do PHP cung cấp như đã cài đặt qua Homebrew trước đó (trên máy Mac dựa trên Intel, thay đổi 4 thành 7) 8Điều này tải mô-đun PHP. Có một số cấu hình bổ sung cần thiết. Hãy thêm cấu hình PHP khác vào một tệp riêng trong thư mục echo "Hello world we did it! Booyakasha!"; 79, giống như với cấu hình máy chủ ảo. Chúng ta cần bao gồm nó một cách rõ ràng từ tệp cấu hình chính, vì vậy hãy tìm phần có chỉ thị 40 và thêm phần này sau phần cuối cùng 1Phần còn lại của cấu hình PHP của bạn nằm trong tệp ________ 441 3Chúng tôi bắt đầu bằng cách kiểm tra xem mô-đun PHP có sẵn hay không, điều này có vẻ dư thừa vì chúng tôi vừa thêm nó vào tệp echo "Hello world we did it! Booyakasha!"; 75. Tuy nhiên, các tệp này có thể được chỉnh sửa độc lập với nhau, vì vậy hãy tuân theo quy ước của các tệp khác trong thư mục echo "Hello world we did it! Booyakasha!"; 79 và kiểm tra xem các mô-đun chúng tôi sử dụng có sẵn không. Chúng tôi sẽ tìm các tệp kết thúc bằng 44 và đặt trình xử lý của chúng thành 45 — một trình xử lý được cung cấp bởi mô-đun PHP. Trình xử lý trong Apache đại diện cho một hành động cần thực hiện đối với một tệp. Mặc dù hầu hết các tệp chỉ được cung cấp bằng trình xử lý tích hợp, nhưng các tệp PHP phải được PHP diễn giải trước khi được cung cấpMột số hướng dẫn sử dụng các chỉ thị 46 hoặc 47 tại đây, lấy tham số cho các phần mở rộng tệp mà chúng áp dụng cho. Chúng có thể gây ra các vấn đề bảo mật khi chúng kiểm tra các tiện ích mở rộng được định cấu hình của chúng với mọi tiện ích mở rộng của tệp. Ví dụ: một ứng dụng web có thể cho phép người dùng tải lên tệp 48. Tuy nhiên, nếu người dùng tải lên một tệp có tên kết thúc bằng 49, thì tệp này có thể được thực thi dưới dạng PHP nếu các lệnh trên được sử dụng. Do đó, chúng tôi sử dụng chỉ thị 80 cùng với 81. Không phải là chúng tôi có thể gặp phải những sự cố này khi chúng tôi chạy Apache cục bộ cho chính mình, nhưng chúng tôi cũng có thể thiết lập mọi thứ đúng cáchChỉ thị 82 đảm bảo rằng nếu URL cho một thư mục được yêu cầu và thư mục chứa tệp 83 (hoặc tệp 84), thì tệp đó sẽ được cung cấp5. Thiết lập máy chủ ảoBây giờ chúng tôi đã thiết lập Apache để hỗ trợ PHP và máy chủ ảo. Chúng tôi vẫn cần thêm cấu hình riêng cho từng máy chủ ảo. Trước đó, chúng tôi đã bỏ ghi chú một dòng để bao gồm tệp 85 ( 86 trên máy Mac dựa trên Intel). Bây giờ, hãy chỉnh sửa nó để thực sự định cấu hình máy chủ ảo 9Điều này cấu hình một máy chủ ảo trên cổng 80. echo "Hello world we did it! Booyakasha!"; 74 đặt tên máy chủ cho trang web ảo. Khi chúng tôi truy cập sudo nano test.php 42 trong trình duyệt, thay đổi chúng tôi đã thực hiện đối với cd /Library/Webserver/Documents 33 sẽ đảm bảo yêu cầu được gửi đến máy chủ Apache cục bộ. Apache sẽ tìm máy chủ ảo có tên máy chủ tương ứng và phục vụ trang web đó. Chỉ thị 10 chỉ định vị trí trên hệ thống tệp nơi tệp sẽ được phân phát tồn tại. Đảm bảo thay đổi đường dẫn này, cùng với phiên bản khác của nó trong chỉ thị 11, thành đường dẫn thực của trang web trên máy của bạnChỉ thị 11 liên quan đến quyền. Trong tệp echo "Hello world we did it! Booyakasha!"; 75, có một phần mặc định từ chối quyền truy cập vào bất kỳ tài nguyên nào. Quyền truy cập vào bất cứ thứ gì nên công khai phải được cho phép cụ thể. Vì vậy, đối với các tệp trong thư mục gốc trang web của chúng tôi, chúng tôi cấp cho mọi người quyền truy cập vào tất cả các tài nguyên thông qua chỉ thị 14. Chỉ thị 15 kiểm soát chỉ thị nào có thể bị ghi đè trong tệp 16. Tệp 16 có thể được sử dụng cho cấu hình trên mỗi thư mục — ví dụ: nhiều CMS sử dụng tệp này cùng với mô-đun sudo nano test.php 49 đã đề cập trước đó để thiết lập URL của chúng. Ở đây, chúng tôi cho phép tất cả các chỉ thị được ghi đèTrong khi chúng tôi đang ở đó, chúng tôi có thể tiếp tục và xóa hoặc nhận xét các máy chủ ảo giả hiện có trong tệp này, nếu không Apache sẽ đưa ra một số cảnh báo khi khởi động, vì gốc tài liệu cho các trang web này có thể không tồn tại 6. lên và chạyĐó là tất cả các cấu hình được thực hiện. Tất cả những gì còn lại là khởi động máy chủ. Nếu bạn muốn Apache tự động khởi động với máy tính của mình, bạn có thể sử dụng lệnh 19 của Homebrews để khởi động máy chủ và đồng thời kích hoạt nó để tự khởi động 0 30 sau đó sẽ tắt cả máy chủ và tắt tính năng tự khởi động cho nóCá nhân tôi có xu hướng chỉ sử dụng “giao diện điều khiển máy chủ” tích hợp sẵn của Apache để khởi động máy chủ khi tôi cần. 31 sẽ khởi động máy chủ và 32 sẽ dừng nó. Hy vọng rằng sau khi khởi động máy chủ, việc truy cập tên máy chủ đã chọn trong trình duyệt của bạn sẽ giúp trang web của bạn được phục vụ chính xácĐó là tất cả cho ngày hôm nay. Tôi hy vọng bạn tìm thấy hướng dẫn này hữu ích. Tất nhiên, chúng tôi chỉ đề cập đến Apache và PHP — có nhiều bổ sung mà bạn có thể muốn thực hiện cho ngăn xếp này, chẳng hạn như máy chủ cơ sở dữ liệu MySQL. Nếu bạn quan tâm đến một bài viết trong tương lai đề cập đến vấn đề này hoặc bất kỳ khía cạnh nào khác của kho lưu trữ dựa trên Apache, vui lòng cho chúng tôi biết Chúng tôi có thể cài đặt PHP mà không cần Apache không?Chỉ cần sudo apt install php là được .
PHP đã được cài đặt trên máy Mac chưa?Cả PHP và Apache đều là các chương trình phần mềm mã nguồn mở miễn phí và cả hai đều được cài đặt trên tất cả các máy Mac . PHP là phần mềm phía máy chủ và Apache là phần mềm máy chủ web được sử dụng rộng rãi nhất. |