Php có được bao gồm trong apache không?

Php có được bao gồm trong apache không?

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 Apache

sudo su-
apachectl start

Kiểm tra nó bằng cách mở trình duyệt và đưa vào

Listen 8080
7

sau đó đặ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 Apache

Tạ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 Apache

Bạ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 chicago

trí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

Listen 8080
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 đặt Apache và PHP
  2. Định cấu hình URL phát triển
  3. Cấu hình Apache
  4. Cấu hình PHP
  5. Thiết lập máy chủ ảo
  6. lên và chạy

1. Cài đặt

Có 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.

Listen 8080
2 (
Listen 8080
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

Listen 8080
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
Listen 8080
5, các tệp cấu hình trong
Listen 8080
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à
Listen 8080
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à
Listen 8080
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
Listen 8080
9

2. URL phát triển

Trướ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ôi

cd /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
36

Tệ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
33

sudo nano test.php
7

Sau 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ôi

3. Cấu hình Apache

Tiế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

Listen 8080

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
3

Rấ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ập

sudo nano test.php
4

Chú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!";
?>
7

Apache đ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)

Listen 8080
4

4. Cấu hình PHP

Chú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
Listen 8080
4 thành
Listen 8080
7)

Listen 8080
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ị
Listen 8080
40 và thêm phần này sau phần cuối cùng

Listen 8080
1

Phần còn lại của cấu hình PHP của bạn nằm trong tệp ________ 441

Listen 8080
3

Chú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
Listen 8080
44 và đặt trình xử lý của chúng thành
Listen 8080
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ấp

Một số hướng dẫn sử dụng các chỉ thị

Listen 8080
46 hoặc
Listen 8080
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
Listen 8080
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
Listen 8080
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ị
Listen 8080
80 cùng với
Listen 8080
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ách

Chỉ thị

Listen 8080
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
Listen 8080
83 (hoặc tệp
Listen 8080
84), thì tệp đó sẽ được cung cấp

5. Thiết lập máy chủ ảo

Bâ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

Listen 8080
85 (
Listen 8080
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

Listen 8080
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ị
Listen 8080
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ị
Listen 8080
11, thành đường dẫn thực của trang web trên máy của bạn

Chỉ thị

Listen 8080
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ị
Listen 8080
14. Chỉ thị
Listen 8080
15 kiểm soát chỉ thị nào có thể bị ghi đè trong tệp
Listen 8080
16. Tệp
Listen 8080
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

Listen 8080
19 của Homebrews để khởi động máy chủ và đồng thời kích hoạt nó để tự khởi động

Listen 8080
0

Listen 8080
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.

Listen 8080
31 sẽ khởi động máy chủ và
Listen 8080
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.