Apache - cài đặt và cấu hình. Cài đặt Apache trên Windows (7)

Cập nhật lần cuối: 20/10/2017

Hãy tải xuống gói máy chủ web Apache từ http://www.apachelounge.com/. Hãy chọn phiên bản mới nhất của máy chủ. Trên trang tải xuống, chúng tôi có thể tìm thấy hai phiên bản của gói Apache - dành cho hệ thống 64 bit và 32 bit.

Trước khi cài đặt Apache, cần lưu ý rằng nếu hệ điều hành của chúng tôi là Windows thì gói dành cho C++ phải được cài đặt trên hệ thống, gói này có thể được tìm thấy tại địa chỉ dành cho 64-bit và 32-bit.

Sau khi tải xuống gói từ Apache, hãy giải nén kho lưu trữ đã tải xuống. Trong đó chúng ta sẽ tìm thấy thư mục trực tiếp chứa các tệp máy chủ web - thư mục Apache24. Chúng ta hãy di chuyển thư mục này sang ổ C sao cho đường dẫn đầy đủ tới thư mục là C:/Apache24.

Bây giờ chúng ta cần cài đặt Apache làm dịch vụ Windows. Để thực hiện việc này, hãy khởi chạy dòng lệnh Windows với tư cách quản trị viên và truy cập thư mục máy chủ web bằng lệnh

httpd.exe -k cài đặt

Nếu quá trình cài đặt hoàn tất thành công, dòng lệnh sẽ hiển thị thông báo "Dịch vụ Apache2.4 được cài đặt thành công". Máy chủ cũng sẽ được kiểm tra:

Trong trường hợp của tôi, như trong hình trên, Apache không thể kết nối với cổng 80, cổng này là mặc định trong cấu hình, vì tôi có cổng 80 đang nghe trên một máy chủ web khác - IIS. Đây là một trong những vấn đề thường gặp khi chạy Apache. Để giải quyết vấn đề này, chúng ta cần tắt dịch vụ IIS hoặc chỉ định một cổng mới cho Apache. Tôi sẽ chọn con đường thứ hai.

Sau khi cài đặt, chúng ta sẽ cấu hình máy chủ để kết nối nó với trình thông dịch PHP đã cài đặt trước đó. Để làm điều này trong thư mục C:\Apache24\conf Hãy tìm tệp httpd.conf và mở nó trong trình soạn thảo văn bản.

Tệp httpd.conf định cấu hình hoạt động của máy chủ web. Chúng tôi sẽ không đề cập đến các mô tả của nó mà sẽ chỉ thực hiện những thay đổi nhỏ mà chúng tôi cần để làm việc với PHP.

Đầu tiên chúng ta hãy tìm dòng

Nghe 80

Dòng này cho biết cổng nghe. Mặc định là cổng 80. Nếu không có xung đột với các cổng thì bạn có thể để nguyên như vậy. Tôi sẽ thay đổi cổng thành 8080.

#Tên máy chủ www.example.com:80

và thay đổi nó thành

Tên máy chủ localhost:8080

Bây giờ hãy kết nối PHP. Để thực hiện việc này, hãy tìm phần cuối của khối tải mô-đun trong tệp httpd.conf Mô-đun tải

//........... #LoadModule watchdog_module module/mod_watchdog.so #LoadModule xml2enc_module module/mod_xml2enc.so

Và ở cuối khối này chúng ta sẽ thêm các dòng

LoadModule php7_module "C:/php/php7apache2_4.dll" PHPIniDir "C:/php"

DocumentRoot "c:/Apache24/htdocs"

Theo mặc định, thư mục "c:/Apache24/htdocs" được sử dụng làm nơi lưu trữ tài liệu. Hãy thay thế dòng này bằng dòng sau:

DocumentRoot "c:/localhost"

Hãy thay đổi đường dẫn của tệp trong đó thông tin về lỗi hoặc lượt truy cập trang web sẽ được ghi lại. Để làm điều này, hãy tìm dòng

ErrorLog "log/error.log"

Và hãy thay thế nó bằng

ErrorLog "c:/localhost/error.log"

CustomLog "logs/access.log" phổ biến

Và hãy thay thế nó bằng

CustomLog "c:/localhost/access.log" chung

Và chúng ta cũng sẽ tìm thấy khối và thêm hai dòng vào nó:

Ứng dụng AddType/x-httpd-php .php Ứng dụng AddType/x-httpd-php-source .phps

Và cuối cùng chúng ta sẽ tìm thấy khối :

DirectoryIndex chỉ mục.html

Và thay thế nó bằng như sau:

DirectoryIndex chỉ mục.html chỉ mục.htm chỉ mục.shtml chỉ mục.php

Đây là cấu hình yêu cầu tối thiểu cần thiết để hoạt động với PHP. Để quản lý server (start, stop, restart) chúng ta có thể sử dụng tiện ích đi kèm bộ kit - . Tiện ích này có thể được tìm thấy trong thư mục C:\Apache24\bin

Hãy khởi chạy tiện ích. Biểu tượng ApacheMonitor sẽ xuất hiện trong khay. Nhấp vào nó và chọn Bắt đầu trong menu ngữ cảnh xuất hiện.

Nếu mọi thứ được cấu hình đúng, máy chủ web sẽ khởi động.

Bây giờ nhiệm vụ của chúng ta là đảm bảo rằng php được kết nối và hoạt động chính xác. Để thực hiện việc này, hãy đi tới thư mục c:/localhost mà chúng tôi đã tạo để lưu trữ tài liệu và thêm tệp văn bản thông thường vào đó. Hãy đổi tên nó thành index.php và thêm nội dung sau vào nó:

Trong trường hợp này, chúng tôi đã tạo một tập lệnh đơn giản hiển thị thông tin chung về PHP. Bây giờ hãy truy cập tập lệnh này bằng cách nhập địa chỉ vào thanh trình duyệt http://localhost:8080/index.php

Chuyện gì đã xảy ra ở đây vậy? Khi truy cập một trang web trên máy cục bộ, http://localhost được chỉ định làm địa chỉ. Vì chúng tôi đã chỉ định 8080 làm cổng nên cổng này cũng được biểu thị trong địa chỉ qua dấu hai chấm. Nếu chúng ta sử dụng cổng 80, cổng này là mặc định thì không cần phải chỉ định nó.

Sau đó, tên của tài nguyên đang được truy cập sẽ được chỉ định. Trong trường hợp này, tệp index.php được sử dụng làm tài nguyên. Và vì tệp httpd.conf chỉ định thư mục là nơi lưu trữ tài liệu của máy chủ web C:\localhost, thì chính trong thư mục này mà máy chủ web sẽ tìm kiếm các tệp cần thiết.

Và vì chúng tôi đã chỉ ra ở trên trong quá trình định cấu hình rằng tệp có thể được sử dụng làm trang chính chỉ mục.php, thì chúng ta cũng có thể truy cập tài nguyên này một cách đơn giản http://localhost:8080/

Việc này hoàn tất việc cài đặt và cấu hình máy chủ web Apache và chúng ta có thể tạo các trang web của mình.

Cài đặt máy chủ web trên Linux:

  • Nếu bạn có Ubuntu thì bài viết “Cách cài đặt máy chủ web Apache với PHP 7, MariaDB/MySQL và phpMyAdmin (LAMP) trên Ubuntu 16.10” là phù hợp với bạn.
  • Nếu bạn có Arch Linux thì bài viết “Cài đặt LAMP (Linux, Apache, MySQL/MariaDB, PHP7 và phpMyAdmin) trên Arch Linux/BlackArch” là phù hợp với bạn.

Máy chủ cục bộ là một công cụ rất hữu ích. Nó chắc chắn sẽ hữu ích cho quản trị viên web, lập trình viên PHP và người kiểm tra thâm nhập. Tất cả các chương trình có trong quá trình cài đặt máy chủ web thông thường đều là nguồn mở và miễn phí. Máy chủ web cục bộ tiêu thụ tài nguyên tối thiểu và thực sự không khó để cài đặt và định cấu hình.

Hướng dẫn này sẽ cho bạn biết cách cài đặt máy chủ web cục bộ mà không cần sử dụng các tập hợp làm sẵn. Phương pháp này có ưu điểm của nó. Điều quan trọng nhất trong số đó là: kiểm soát hoàn toàn những gì bạn cài đặt; khả năng sử dụng các phiên bản phần mềm mới nhất.

Nếu bạn làm theo hướng dẫn chính xác, thì mọi thứ chắc chắn sẽ có tác dụng với bạn! Ngoại trừ những người có Windows XP - nếu bạn có hệ điều hành này, thì các hướng dẫn đặc biệt đã được thực hiện cho bạn.

Tôi sẽ đưa ra một ví dụ về cài đặt trên Windows 10, nhưng nếu bạn có một phiên bản Windows khác, thì đừng để điều này làm phiền bạn - quy trình ở mọi nơi đều giống nhau. Tôi sẽ tải xuống phiên bản mới nhất (mới nhất) của chương trình tại thời điểm viết bài. Nếu đến thời điểm bạn đọc có phiên bản mới được phát hành thì hãy tải xuống.

Các bước cài đặt:

Bạn cũng có thể thấy nó hữu ích:

1. Chuẩn bị (tải các chương trình có trong server, tạo cấu trúc server)

Chúng tôi cần:

  • Apache(trực tiếp máy chủ web)
  • PHP– môi trường để chạy các chương trình PHP (được hầu hết các trang web yêu cầu)
  • MySQL– hệ thống quản lý cơ sở dữ liệu (được hầu hết các trang web yêu cầu)
  • phpMyAdmin– một công cụ rất thuận tiện để quản lý cơ sở dữ liệu

Trang web chính thức của các nhà phát triển Apache là httpd.apache.org. Bạn có thể tải xuống Apache từ trang này. Nhưng phiên bản chính thức được xây dựng bằng trình biên dịch cũ, vì lý do này, nó không hoạt động với các phiên bản PHP mới. Các tác giả PHP khuyên dùng Apache từ apachelounge.com/download. Do đó, đối với hướng dẫn này, chúng tôi tải xuống Apache từ trang apachelounge.com/download.

Nếu bạn có phiên bản Windows 64 bit, thì bạn có thể chọn cả phiên bản thành phần 64 bit và 32 bit. Nguyên tắc chính là tất cả các thành phần phải có cùng kích thước bit. Nếu bạn có phiên bản Windows 32 bit thì tất cả các thành phần phải là 32 bit. Điều này không áp dụng cho phpMyAdmin, được viết bằng PHP. Đối với các chương trình PHP, khái niệm độ sâu bit không được áp dụng.

Phiên bản miễn phí của MySQL được gọi là Máy chủ cộng đồng MySQL. Nó có thể được tải xuống trên trang. Có một trình cài đặt thực thi trên cùng trang này, nhưng tôi khuyên bạn nên tải xuống kho lưu trữ ZIP. Trên trang tải xuống, chúng tôi được yêu cầu đăng ký hoặc đăng nhập vào tài khoản hiện có - nhưng điều này là không cần thiết. Chỉ cần nhấp vào liên kết " Không, cảm ơn, hãy bắt đầu tải xuống" Hãy chú ý đến độ sâu bit.

Chúng tôi cũng cần tệp Visual Studio 2017 có thể phân phối lại C++, tức là. Thành phần có thể phân phối lại Visual C++ cho Visual Studio 2017 (hoặc bất kỳ phiên bản nào khác sau này), bạn có thể tải xuống trên trang web chính thức của Microsoft bằng liên kết (liên kết trực tiếp để tải xuống phiên bản 64 bit; liên kết trực tiếp để tải xuống phiên bản 32 bit). Tập tin này là cần thiết cho máy chủ web. Và MySQL yêu cầu Gói có thể phân phối lại Visual C++ cho Visual Studio 2015. Nó có thể được tải xuống từ .

Vì vậy, tôi đã tải xuống các tệp sau:

  • httpd-2.4.29-Win64-VC15.zip
  • php-7.2.0-Win32-VC15-x64.zip
  • mysql-8.0.11-winx64.zip
  • phpMyAdmin-4.7.6-all-lingu.zip
  • vc_redist.x64.exe
  • vcredist_x64.exe

Cài đặt tập tin vc_redist.x64.exevcredist_x64.exe.

2. Tạo cấu trúc máy chủ web

Hãy tạo cấu trúc thư mục của máy chủ của chúng tôi. Ý tưởng chính là tách các tệp thực thi và tệp trang web với cơ sở dữ liệu. Điều này thuận tiện cho việc bảo trì máy chủ, bao gồm cả việc sao lưu.

Ở gốc của đĩa C:\ tạo một thư mục Máy chủ. Trong thư mục này tạo 2 thư mục con: thùng rác(đối với các tệp thực thi) và dữ liệu.

Đi tới thư mục dữ liệu và tạo các thư mục con ở đó D.B.(đối với cơ sở dữ liệu) và htdocs(đối với các trang web).

Đi tới thư mục C:\Máy chủ\dữ liệu\DB\ và tạo một thư mục trống ở đó dữ liệu.

3. Cài đặt Apache 2.4

Nội dung của kho lưu trữ đã tải xuống (chính xác hơn là chỉ có thư mục Apache24), giải nén vào C:\Máy chủ\bin\.

Đi tới thư mục c:\Server\bin\Apache24\conf\ và mở tập tin httpd.conf bất kỳ trình soạn thảo văn bản nào.

Trong đó chúng ta cần thay thế một số dòng.

Xác định SRVROOT "c:/Apache24"

Xác định SRVROOT "c:/Server/bin/Apache24"

#Tên máy chủ www.example.com:80

Tên máy chủ localhost

DocumentRoot "$(SRVROOT)/htdocs"

DocumentRoot "c:/Server/data/htdocs/"

DirectoryIndex chỉ mục.html

DirectoryIndex Index.php Index.html Index.htm

# AllowOverride kiểm soát những lệnh nào có thể được đặt trong tệp .htaccess. # Nó có thể là "Tất cả", "Không" hoặc bất kỳ kết hợp từ khóa nào: # AllowOverride Giới hạn xác thực FileInfo AuthConfig # AllowOverride Không có

# AllowOverride kiểm soát những lệnh nào có thể được đặt trong tệp .htaccess. # Nó có thể là "Tất cả", "Không" hoặc bất kỳ kết hợp từ khóa nào: # AllowOverride Giới hạn xác thực FileInfo AuthConfig # AllowOverride All

#LoadModule rewrite_module mô-đun/mod_rewrite.so

LoadModule rewrite_module mô-đun/mod_rewrite.so

Lưu và đóng tập tin. Thế là xong, quá trình thiết lập Apache đã hoàn tất! Bạn có thể tìm thấy mô tả về từng chỉ thị đã thay đổi trên trang này.

Mở dòng lệnh (điều này có thể được thực hiện bằng cách nhấn đồng thời các phím Win + X). Chọn Windows PowerShell (Quản trị viên) ở đó và sao chép vào đó:

C:\Server\bin\Apache24\bin\httpd.exe -k cài đặt

Nếu nhận được yêu cầu từ tường lửa dành cho Apache, hãy nhấp vào Cho phép.

Bây giờ hãy nhập vào dòng lệnh:

C:\Server\bin\Apache24\bin\httpd.exe -k bắt đầu

Và nhấn Enter.

Nhập root làm tên người dùng. Để trống trường mật khẩu. Nếu mọi thứ được thực hiện chính xác thì mọi thứ sẽ trông như thế này:

7. Sử dụng máy chủ và sao lưu dữ liệu

Trong danh mục c:\Server\data\htdocs\ tạo thư mục và tập tin, ví dụ:

c:\Server\data\htdocs\test\ajax.php - theo đó, tệp này sẽ có sẵn tại http://localhost/test/ajax.php, v.v.

Để tạo bản sao lưu hoàn chỉnh của tất cả các trang web và cơ sở dữ liệu, chỉ cần sao chép thư mục C:\Máy chủ\dữ liệu\.

Trước khi cập nhật mô-đun, hãy tạo bản sao lưu của thư mục thùng rác- trong trường hợp có vấn đề, bạn có thể dễ dàng quay lại các phiên bản trước.

Khi cài đặt lại máy chủ hoặc cập nhật nó, bạn cần phải cấu hình lại các tập tin cấu hình. Nếu bạn có bản sao của những tệp này, quá trình có thể được tăng tốc đáng kể. Nên sao lưu các tập tin sau:

  • c:\Server\bin\Apache24\conf\httpd.conf
  • c:\Server\bin\mysql-8.0\my.ini
  • c:\Server\bin\PHP\php.ini
  • c:\Server\data\htdocs\phpMyAdmin\config.inc.php

Tất cả các cài đặt được lưu trữ trong đó.

8. Thiết lập PHP bổ sung

PHP hiện nay là một công cụ rất mạnh mẽ, linh hoạt và thân thiện với người dùng. Trên máy tính cục bộ, bạn có thể sử dụng nó để giải quyết nhiều tác vụ khác nhau không nhất thiết liên quan đến việc tạo trang Web. Khi giải quyết các vấn đề đặc biệt, bạn có thể gặp phải các hạn chế được đặt trong cài đặt. Các cài đặt này được chứa trong tệp php.ini (c:\Server\bin\PHP\php.ini. Hãy xem xét một số cài đặt trong số chúng:

Bộ nhớ_limit = 128M

đặt dung lượng bộ nhớ tối đa mà tập lệnh có thể sử dụng

Post_max_size = 8M

đặt lượng dữ liệu tối đa sẽ được chấp nhận khi gửi bằng phương thức POST

;default_charset = "UTF-8"

đặt mã hóa (theo mặc định, dòng được nhận xét)

Tải lên_max_filesize = 2M

kích thước tối đa của một tập tin được tải lên máy chủ. Kích thước ban đầu được đặt ở kích thước rất nhỏ - chỉ hai megabyte. Ví dụ: khi tải cơ sở dữ liệu vào phpMyAdmin, bạn sẽ không thể tải lên tệp lớn hơn 2 megabyte cho đến khi mục cài đặt này được thay đổi.

Max_file_uploads = 20

số lượng tệp tối đa để tải lên cùng một lúc

Max_execution_time = 30

thời gian thực hiện tối đa cho một tập lệnh

Việc thay đổi các cài đặt này là hoàn toàn tùy chọn, nhưng việc biết về chúng sẽ rất hữu ích.

9. Cài đặt bổ sung cho phpMyAdmin

Chúng tôi đã định cấu hình phpMyAdmin và đối với hầu hết mọi người, chức năng cơ bản là đủ. Tuy nhiên, trên trang bắt đầu phpMyAdmin có thông báo: “Các tính năng bổ sung của phpMyAdmin chưa được định cấu hình đầy đủ, một số chức năng đã bị tắt”.

Các tính năng mới là:

  • hiển thị mối quan hệ giữa các bảng (có liên quan);
  • thêm thông tin về các bảng (bắt đầu từ phiên bản 2.3.0, bạn có thể mô tả trong bảng đặc biệt 'table_info' cột nào sẽ được hiển thị trong chú giải công cụ khi di chuyển con trỏ qua phím liên quan);
  • tạo sơ đồ PDF (bắt đầu từ phiên bản 2.3.0, bạn có thể tạo các trang PDF trong phpMyAdmin hiển thị mối quan hệ giữa các bảng của bạn);
  • hiển thị các nhận xét về cột (kể từ phiên bản 2.3.0, bạn có thể đưa ra nhận xét mô tả từng cột cho mỗi bảng. Và chúng sẽ hiển thị trong phần "xem trước bản in". Kể từ phiên bản 2.5.0, các nhận xét được sử dụng trên các trang riêng của bảng và trong các chế độ xem chế độ, xuất hiện dưới dạng chú giải công cụ phía trên các cột (bảng thuộc tính) hoặc được nhúng trong tiêu đề bảng ở chế độ xem. Chúng cũng có thể được hiển thị trong kết xuất bảng);
  • tạo dấu trang (kể từ phiên bản 2.2.0, phpMyAdmin cho phép người dùng đánh dấu các truy vấn. Điều này có thể hữu ích cho các truy vấn được sử dụng thường xuyên);
  • lịch sử truy vấn SQL (bắt đầu từ phiên bản 2.5.0, bạn có thể lưu lịch sử của tất cả các truy vấn SQL được thực hiện thông qua giao diện phpMyAdmin);
  • nhà thiết kế (bắt đầu từ phiên bản 2.10.0, công cụ Designer đã có sẵn; nó cho phép bạn quản lý trực quan mối quan hệ giữa các bảng);
  • thông tin về các bảng được sử dụng gần đây;
  • tùy chỉnh giao diện các bảng thường xuyên sử dụng;
  • theo dõi (bắt đầu từ phiên bản 3.3.x, đã có sẵn cơ chế theo dõi. Nó giúp bạn theo dõi mọi lệnh SQL được thực thi bởi phpMyAdmin. Hỗ trợ ghi lại thao tác dữ liệu và ghi lệnh. Sau khi được bật, bạn sẽ có thể lập bảng phiên bản);
  • cài đặt người dùng (bắt đầu từ phiên bản 3.4.x, phpMyAdmin cho phép người dùng đặt hầu hết các cài đặt và lưu chúng vào cơ sở dữ liệu);
  • menu tùy chỉnh (bắt đầu từ phiên bản 4.1.0, bạn có thể tạo các nhóm người dùng chỉ có quyền truy cập vào các mục menu được chỉ định. Một người dùng có thể được chỉ định vào một nhóm và sẽ chỉ nhìn thấy các mục menu có sẵn cho nhóm của họ);
  • ẩn/hiện các mục điều hướng (bắt đầu từ phiên bản 4.1.0 bạn có thể ẩn/hiện các mục trong cây điều hướng).
  • và những người khác

Bây giờ chúng ta sẽ cấu hình đầy đủ các tính năng bổ sung này. Đi tới liên kết http://localhost/phpmyadmin/chk_rel.php và nhấp vào "Tạo cơ sở dữ liệu". Sau này, tất cả các tính năng mới sẽ được kích hoạt.

Một số ảnh chụp màn hình về các tính năng mới:

1) Nhà thiết kế

2) Theo dõi

10. Lắp đặt phích cắm thư

Trong thư mục C:\Server\bin\, tạo một thư mục mới có tên Sendmail. Bây giờ trong thư mục này tạo một file sendmail.php với nội dung sau:

#!/usr/bin/env php

Mở file cấu hình PHP, nó nằm ở đây C:\Server\bin\PHP\php.ini. Và thêm một dòng ở đó:

Sendmail_path = "C:\Server\bin\PHP\php.exe C:\Server\bin\Sendmail\sendmail.php --dir C:\Server\bin\Sendmail\emails"

Lưu tập tin và khởi động lại máy chủ. Tuyệt vời, bây giờ tất cả email đã gửi sẽ được lưu vào thư mục C:\Server\bin\Sendmail\email\

Thư sẽ có phần mở rộng .eml và chúng có thể được mở, ví dụ, bằng chương trình Thunderbird. Hoặc một trình soạn thảo văn bản thông thường.

11. Thêm thư mục PHP vào PATH trên Windows

Nếu điều này không được thực hiện, có thể có vấn đề với một số mô-đun PHP, bao gồm php_curl.dll, php_intl.dll, php_ldap.dll, php_pdo_pgsql.dll và php_pgsql.dll. Ít nhất, mỗi khi máy chủ khởi động, thông tin sau sẽ xuất hiện trong nhật ký:

Cảnh báo PHP: Khởi động PHP: Không thể tải thư viện động "C:\\Server\\bin\\PHP\\ext\\php_curl.dll" - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\ xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\ xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\ xbf\xbd\xef\xbf\xbd.\r\n trong Không xác định trên dòng 0 PHP Cảnh báo: Khởi động PHP: Không thể tải thư viện động "C:\\Server\\bin\\PHP\\ext\\php_intl.dll " - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef \xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n trong Không xác định trên dòng 0 Cảnh báo PHP: Khởi động PHP: Không thể tải thư viện động " C:\\Server\\bin\\PHP\\ext\\php_ldap.dll" - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\ xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\ xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r \n trong Không xác định trên dòng 0 PHP Cảnh báo: Khởi động PHP: Không thể tải thư viện động "C:\\Server\\bin\\PHP\\ext\\php_pdo_pgsql.dll" - \xef\xbf\xbd\xef\xbf \xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef \xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n trong Không xác định trên dòng 0 PHP Cảnh báo: Khởi động PHP: Không thể tải thư viện động "C:\\Server\\bin\\PHP\ \ext\\php_pgsql.dll" - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\ xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\ xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n trong Không xác định trên dòng 0

Để tránh những cảnh báo này, bạn cần thêm đường dẫn tới PHP vào các biến môi trường hệ thống của mình.

Nhấp vào nút Bắt đầu (hoặc bất cứ thứ gì nó được gọi trên Windows 10?), bắt đầu nhập " Thay đổi các biến môi trường hệ thống» và mở cửa sổ cài đặt tương ứng.

Ở đó nhấp vào " Biến môi trường»:

Trong cửa sổ " Biến hệ thống» tìm và bấm vào Con đường, sau đó nhấn vào " Thay đổi»:

Di chuyển mục lên trên cùng:

Đóng tất cả các cửa sổ và lưu các thay đổi của bạn.

Khởi động lại máy chủ.

12. Bị treo, lưu lượng truy cập chậm và/hoặc lỗi máy chủ AcceptEx không đồng bộ không thành công

Nếu máy chủ của bạn bị treo ngay cả khi không tải - nó không hiển thị các trang web cho đến khi được khởi động lại và trong nhật ký máy chủ có lỗi Asynchronous AcceptEx failed:

AH00455: Đã định cấu hình Apache/2.4.9 (Win64) PHP/5.5.13 -- tiếp tục hoạt động bình thường AH00456: Máy chủ Apache Lounge VC11 được xây dựng: ngày 16 tháng 3 năm 2014 12:42:59 AH00094: Dòng lệnh: "c:\\Server\\ bin\\Apache24\\bin\\httpd.exe -d C:/Server/bin/Apache24" AH00418: Parent: Đã tạo tiến trình con 4952 AH00354: Child: Bắt đầu 64 luồng công việc. (OS 64) Tên mạng được chỉ định không còn khả dụng. : AH00341: winnt_accept: AcceptEx không đồng bộ không thành công. (OS 64) Tên mạng được chỉ định không còn khả dụng. : AH00341: winnt_accept: AcceptEx không đồng bộ không thành công. (OS 64) Tên mạng được chỉ định không còn khả dụng. : AH00341: winnt_accept: AcceptEx không đồng bộ không thành công. (OS 64) Tên mạng được chỉ định không còn khả dụng. : AH00341: winnt_accept: AcceptEx không đồng bộ không thành công. (OS 64) Tên mạng được chỉ định không còn khả dụng. : AH00341: winnt_accept: AcceptEx không đồng bộ không thành công. (OS 64) Tên mạng được chỉ định không còn khả dụng. : AH00341: winnt_accept: AcceptEx không đồng bộ không thành công.

Sau đó thêm vào tệp cấu hình Apache:

AcceptFilter http không có AcceptFilter https không có EnableSendfile tắt EnableMMAP tắt

13. Cấu hình cURL trong máy chủ web Apache trên Windows

Nếu bạn không biết cURL là gì thì bạn không cần nó. Những thứ kia. Hãy bỏ qua bước này.

cURL là một tiện ích bảng điều khiển cho phép bạn trao đổi dữ liệu với các máy chủ từ xa bằng cách sử dụng một số lượng giao thức rất lớn. cURL có thể sử dụng cookie và hỗ trợ xác thực. Nếu một ứng dụng web yêu cầu cURL thì điều này phải được chỉ định trong phần phụ thuộc. Nhiều ứng dụng phổ biến không yêu cầu cURL, ví dụ phpMyAdmin và WordPress không cần cấu hình cURL.

Nếu cURL không được cấu hình đúng, bạn sẽ gặp lỗi:

Lỗi nghiêm trọng: Gọi hàm không xác định Curl_multi_init() trong ...

lỗi cuộn tròn: Sự cố chứng chỉ SSL: không thể lấy chứng chỉ nhà phát hành địa phương

Để làm cho cURL hoạt động trong Apache trên Windows, bạn cần:

1) Đảm bảo thêm thư mục PHP vào PATH (biến môi trường hệ thống). Cách thực hiện việc này đã được giải thích ngay ở trên:

2) Trong hồ sơ C:\Server\bin\PHP\php.ini dòng này không được chú thích phần mở rộng=curl

Điều này thường không bắt buộc, nhưng nếu muốn, bạn có thể tạo một bản sao lưu của các tệp nhị phân (có thể thực thi) của máy chủ. Tất cả các tập tin này đều nằm trong thư mục C:\Máy chủ\bin\. Đây là Apache, MySQL và PHP - tức là. các chương trình chịu trách nhiệm về hoạt động của máy chủ nhưng chúng tôi có thể tải xuống từ các trang web chính thức và định cấu hình lại bất kỳ lúc nào.

Nếu bạn muốn tạo một bản sao lưu của chúng (ví dụ: trước khi nâng cấp máy chủ), hãy dừng dịch vụ:

C:\Server\bin\Apache24\bin\httpd.exe -k dừng net dừng mysql

Và sao chép thư mục vào nơi an toàn C:\Máy chủ\bin\.

Nhân tiện, bạn có thể sao chép toàn bộ máy chủ, tức là. thư mục C:\Máy chủ\– trong trường hợp này, bạn sẽ đồng thời nhận được một bản sao lưu của cả tệp thực thi và dữ liệu (cơ sở dữ liệu, trang web).

Khi quá trình sao chép hoàn tất, hãy khởi động lại dịch vụ:

C:\Server\bin\Apache24\bin\httpd.exe -k bắt đầu khởi động mạng mysql

15. Cập nhật máy chủ

Tất cả các thành phần tạo nên máy chủ web đang được phát triển tích cực và các phiên bản mới được phát hành thường xuyên. Khi một phiên bản mới được phát hành, bạn có thể cập nhật một thành phần (ví dụ: PHP) hoặc nhiều thành phần cùng một lúc.

Xóa một máy chủ

Nếu bạn không cần máy chủ nữa, hoặc bạn muốn cài đặt lại, hãy dừng các dịch vụ và xóa chúng khỏi chế độ tự khởi động bằng cách thực hiện tuần tự trên dòng lệnh:

C:\Server\bin\Apache24\bin\httpd.exe -k dừng c:\Server\bin\Apache24\bin\httpd.exe -k gỡ cài đặt net stop mysql c:\Server\bin\mysql-8.0\bin\ mysqld --remove

Xóa các tập tin máy chủ; để thực hiện việc này, hãy xóa thư mục C:\Máy chủ\. Cảnh báo, thao tác này sẽ xóa tất cả cơ sở dữ liệu và trang web của bạn.

Cách bảo vệ máy chủ web Apache của bạn khỏi bị hack trên Windows

Với PHP (có thể lựa chọn phiên bản), với MySQL và phpMyAdmin. Trang web này được lưu trữ chính xác trên đó: hỗ trợ kỹ thuật đáp ứng và đủ điều kiện, cài đặt WordPress và các ứng dụng web khác chỉ bằng một cú nhấp chuột, như một món quà khi thanh toán một năm, chuyển trang miễn phí. Khi đặt hosting + miễn phí 1 tháng (mã khuyến mại b33e0e2f).

Máy chủ web là một chương trình chạy trên máy cục bộ hoặc từ xa và mục đích chính của nó là cho phép người dùng xem các tài liệu web. Khi nhập địa chỉ trang web vào thanh địa chỉ, khi bạn nhấn phím Enter, trình duyệt sẽ tạo ra yêu cầu gửi đến máy tính từ xa - máy chủ web.

Máy chủ HTTP Apache (viết tắt của máy chủ vá lỗi) là một trong những chương trình phổ biến và rộng rãi nhất được tạo cho các nhà phát triển web và quản trị viên tài nguyên Internet. Theo các nhà nghiên cứu độc lập, Apache được cài đặt trên 50% máy tính của tất cả người dùng máy chủ HTTP.

Ưu điểm chính của Apache là tính ổn định, tốc độ và tính linh hoạt, đó là nhờ tổ chức mô-đun của nó, cũng như thực tế là việc phát triển được thực hiện bởi một nhóm lập trình viên mở, mặc dù dưới tên chính thức là Apache Software Foundation.

Apache hỗ trợ một số lượng lớn hệ điều hành và nền tảng phần cứng và thường được sử dụng trong hệ điều hành Windows. Điều quan trọng nữa là máy chủ web này được phân phối hoàn toàn miễn phí.

Cách cài đặt máy chủ Apache cho hệ điều hành Windows 7 sẽ được thảo luận trong bài viết này.

Cài đặt Apache

Trước hết, bạn cần tải xuống phiên bản mới nhất của bản phân phối Apache mà không hỗ trợ SSL và chạy cài đặt. Trong cửa sổ chào mừng, bạn cần nhấp vào “Tiếp theo”, đọc thỏa thuận cấp phép của nhà phát triển và xác nhận thỏa thuận của bạn với thỏa thuận đó.

Sau đó, trong cửa sổ cài đặt, bạn cần điền vào các trường như trong hình bên dưới và trong phần “ Địa chỉ Email của quản trị viên"Cho biết địa chỉ email của bạn, nhấp vào "Tiếp theo" và đặt nút chuyển sang vị trí "Tùy chỉnh".




Tiếp theo, bạn cần tạo thư mục www trên ổ C và chỉ định nó làm thư mục cài đặt cho Apache, nhấp vào “Tiếp theo” trong cửa sổ này và “Cài đặt” trong cửa sổ tiếp theo. Khi quá trình cài đặt hoàn tất, hãy nhấp vào “Hoàn tất”.

Nếu mọi việc suôn sẻ, biểu tượng quản lý máy chủ web Apache sẽ xuất hiện trong khay. Bạn có thể dừng và khởi động lại nó bằng cách nhấp chuột trái vào biểu tượng.

Bằng cách nhấp chuột phải vào cùng một biểu tượng, bạn có thể truy cập các dịch vụ hệ thống khác nhau của hệ điều hành hoặc mở màn hình Apache.

Để kiểm tra xem máy chủ Apache đã cài đặt có đang chạy hay không, hãy nhập http://localhost vào thanh địa chỉ trình duyệt của bạn

Nếu một trang xuất hiện với dòng chữ khích lệ “Nó hoạt động! ", điều này có nghĩa là quá trình cài đặt Apache đã thành công và nó đang hoạt động bình thường.

Thiết lập máy chủ web cơ bản

Mặc dù Apache rất thuận tiện và cực kỳ đáng tin cậy, nhưng không phải ai cũng sẵn sàng sử dụng nó như một máy chủ cục bộ vì một số lý do và lý do chính là sự vắng mặt của bất kỳ bộ cấu hình đồ họa nào ngay cả trong môi trường Microsoft Windows, điều này khá bất thường đối với hầu hết mọi người. người dùng.

Máy chủ được cấu hình bằng cách chỉnh sửa thủ công tệp cấu hình httpd.conf. Tuy nhiên, trái ngược với ý kiến ​​​​về sự khó hiểu và phức tạp của quy trình này, thao tác này không có gì phức tạp vì hai lý do: thứ nhất, để biến Apache mới cài đặt thành một máy chủ được cấu hình để hoạt động thoải mái và chấp nhận được, bạn cần phải thay đổi tệp cấu hình khá nhiều dữ liệu và thứ hai, các bình luận httpd.conf chứa rất nhiều thông tin hữu ích cần thiết để hiểu cấu hình.

Những gì là cần thiết?

  • Chạy Apache trên nền tảng Windows 7;
  • Lưu trữ các tập tin của trang web trong tương lai trong một thư mục thân thiện với người dùng (ví dụ: C:www);
  • Không gặp vấn đề với mã hóa và đặc biệt là hiển thị bảng chữ cái Cyrillic;
  • Khả năng làm việc với một số trang web cùng một lúc.

Để giải quyết thành công những vấn đề này, hãy vào thư mục cài đặt Apache, tìm và mở tệp httpd.conf trong thư mục con conf. Xin lưu ý rằng các dòng bắt đầu bằng “băm” là nhận xét văn bản và các dòng không có biểu tượng “băm” ở đầu được sử dụng làm cài đặt máy chủ web.

Trước tiên, bạn cần định cấu hình thư mục sẽ được máy chủ sử dụng làm thư mục trang web. Tìm dòng trong văn bản bắt đầu bằng DocumentRoot. Lệnh này xác định thư mục nào sẽ là thư mục gốc.

Sửa nó thành DocumentRoot “C:/www”. Cần làm rõ rằng các dấu gạch chéo trong tệp này phải nghiêng sang phải chứ không phải sang trái, như người dùng Windows có lẽ đã quen với việc này. Sau các thao tác trên, vấn đề về vị trí trang web của bạn đã được giải quyết.

Tùy chọn (xác định những chức năng máy chủ nào sẽ khả dụng) AllowOverride (xác định những lệnh nào từ .htaccess có thể ghi đè những lệnh đó trong httpd.conf) Thứ tự (đặt các quy tắc nhất định để truy cập máy chủ)

Danh sách các tham số được sử dụng:

Tùy chọn. Có thể có các tùy chọn sau:

  • Bao gồm – được phép sử dụng SSI;
  • Bao gồmNOEXEC – việc sử dụng SSI được cho phép với các hạn chế (không được phép #include và #exec);
  • Chỉ mục – cho phép sử dụng tệp chỉ mục và nếu URL trỏ đến một thư mục trang web (ví dụ: www.domain.ru/dir/) trong đó không có tệp chỉ mục, nội dung của thư mục này sẽ được hiển thị và nếu tùy chọn này không xuất hiện, một cảnh báo sẽ được đưa ra rằng quyền truy cập bị cấm;
  • ExecCGI – cho phép thực thi các tập lệnh CGI;
  • FollowSymLinks – máy chủ tuân theo các liên kết tượng trưng hiện có của thư mục (được sử dụng trong hệ thống Unix);
  • SymLinksIfOwnerMatch – máy chủ chỉ đi theo các liên kết tượng trưng thư mục hiện có nếu tệp đích có cùng chủ sở hữu với liên kết;
  • Tất cả – tất cả những điều trên đều được phép;
  • Không – tất cả những điều trên đều bị cấm;
  • MultiViews – khả năng chọn nội dung cụ thể và hiển thị nội dung đó tùy thuộc vào tùy chọn của trình duyệt (ngay cả khi Tùy chọn tất cả được bật. Được chỉ định riêng).

Cho phép vượt qua. Tùy chọn:

  • AuthConfig – cho phép bạn sử dụng các lệnh để ủy quyền;
  • FileInfo – cho phép sử dụng các lệnh để làm việc với nhiều loại tài liệu khác nhau;
  • Chỉ mục - cho phép sử dụng các lệnh để làm việc với các tệp lập chỉ mục;
  • Giới hạn – cho phép sử dụng các lệnh để xác định quyền truy cập vào máy chủ;
  • Tùy chọn – cho phép sử dụng các lệnh để làm việc với một số chức năng thư mục cụ thể;
  • Tất cả – tất cả những điều trên cùng nhau;
  • Không – không có điều nào ở trên cùng nhau.

Đặt hàng. Tùy chọn:

  • Từ chối, Cho phép – Từ chối được xác định trước lệnh Cho phép, quyền truy cập được cho phép theo mặc định, ngoại trừ các máy chủ được chỉ định trong dòng sau Từ chối;
  • Allow,Deny – Cho phép được xác định trước lệnh Từ chối, quyền truy cập bị từ chối theo mặc định, ngoại trừ các máy chủ được chỉ định trong dòng sau Cho phép từ;
  • Lỗi lẫn nhau – chỉ được phép truy cập vào những máy chủ không có trong Từ chối và có trong Cho phép.

Dựa trên những điều trên, hãy thử thiết lập máy chủ của bạn. Trong tệp httpd.conf, lệnh Thư mục tồn tại ở hai bản sao theo mặc định - . Không nên chạm vào tùy chọn đầu tiên, vì vậy trong tùy chọn thứ hai, hãy đặt các tham số như sau:

Tùy chọn Chỉ mục FollowSymLinks AllowOverride Không Thứ tự cho phép, từ chối Cho phép từ tất cả

Nói cách khác, các tùy chọn sau được chọn cho thư mục C:/www và tất cả các thư mục con của nó:

  • Trong số các chức năng có thể có của máy chủ hiện tại, cho phép lập chỉ mục trong các thư mục và điều hướng thông qua các liên kết tượng trưng;
  • Tuy nhiên, khả năng ghi đè tham số bằng cách sử dụng tệp .htaccess hoàn toàn không có, do bạn có toàn quyền truy cập vào máy chủ nên điều đó không liên quan - mọi thứ đều có thể được định cấu hình qua httpd.conf;
  • Truy cập vào máy chủ web được phép từ tất cả các máy chủ.

Bây giờ, hãy lưu tệp httpd.conf và khởi động lại Apache bằng Apache Monitor hoặc sử dụng lệnh apache –k restart trên dòng lệnh. Việc thiết lập thư mục gốc của trang web đã hoàn tất.

Bạn nên kiểm tra xem bạn đã làm mọi thứ đúng chưa. Tạo một trang web đơn giản trong thư mục C:www, mở trình duyệt của bạn và nhập http://127.0.0.1/your_created_page. Trang này sẽ mở ra. Nếu không, bạn phải kiểm tra cẩn thận tất cả các thay đổi đối với tệp httpd.conf xem có chính xác không.

Nếu trang mở thành công, rất có thể thay vì các ký tự Cyrillic, bạn sẽ thấy các ký tự không thể đọc được. Chúng có thể được hiển thị vì hai lý do. Đầu tiên, máy chủ web cung cấp cho trình duyệt của bạn yêu cầu trang mã hóa mặc định. Thứ hai, thật kỳ lạ, mã hóa này không phải là Cyrillic.

Nếu Internet Explorer khét tiếng trong những trường hợp như vậy xác định mã hóa từ chính trang đó, thì chẳng hạn, Mozilla Firefox và Opera hoàn toàn không có khuynh hướng thực hiện những hành động đó và phương pháp thiết lập mã hóa thủ công trong trình duyệt khó có thể được gọi là thuận tiện. Do đó, bạn cần định cấu hình Apache để trả về mã hóa được yêu cầu theo mặc định.

Tìm dòng trong tệp httpd.conf bắt đầu bằng AddDefaultCharset . Rất có thể, mã hóa là ISO-8859-1, không chứa các ký tự Cyrillic. Thay đổi ISO-8859-1 thành windows-1251, lưu tệp và khởi động lại Apache. Giờ đây, việc hiển thị chính xác ngôn ngữ tiếng Nga trên trang web của bạn sẽ hoạt động trên mọi trình duyệt.

Máy chủ Apache khá dễ thiết lập để hoạt động với nhiều trang web. Địa chỉ có thể được sử dụng cho chúng là 127.0.0.2, 127.0.0.3, v.v. Trong trường hợp này, chỉ trang mặc định (127.0.0.1) mới hiển thị trên mạng, nhưng điều này không quan trọng đối với công việc cục bộ. Phần của tệp httpd.conf, trong đó mọi thứ cần thiết cho việc này được định cấu hình, nằm ở cuối và được gọi là Virtualhost.

Apache là máy chủ Internet được sử dụng nhiều nhất trên các hệ thống Linux. Máy chủ Internet được sử dụng để phục vụ các trang Internet theo yêu cầu từ máy khách. Khách hàng thường yêu cầu và xem các trang Internet bằng các ứng dụng trình duyệt Internet như Firefox, Opera, Chrome hoặc Mozilla.

Người dùng nhập một bộ định vị tài nguyên thống nhất (URL) để xác định máy chủ Internet theo tên miền đủ điều kiện (FQDN) và đường dẫn đến tài nguyên được yêu cầu. Ví dụ: để xem trang chủ của trang web Ubuntu, người dùng chỉ phải nhập FQDN:

www.ubuntu.com

SymLinksIfOwnerMatch- Đi theo các liên kết tượng trưng nếu tệp hoặc thư mục đích có cùng chủ sở hữu với liên kết.

cài đặt httpd

Phần này bao gồm một số cài đặt cấu hình cơ bản cho dịch vụ. httpd.

KhóaTệp- Câu lệnh LockFile thiết lập đường dẫn tới lockfile khi server được biên dịch với tùy chọn USE_FCNTL_SERIALIZED_ACCEPT hoặc USE_FLOCK_SERIALIZED_ACCEPT. Nó phải được lưu trên đĩa cục bộ. Bạn nên để lại giá trị mặc định trừ khi thư mục nhật ký nằm trên một chia sẻ NFS. Nếu không, giá trị ban đầu sẽ được thay đổi thành thư mục đĩa cục bộ chỉ có quyền đọc cho root.

Tệp Pid- lệnh PidFile đặt một tệp trong đó máy chủ ghi ID tiến trình của nó (pid). Tập tin này chỉ có thể được đọc bởi root. Trong hầu hết các trường hợp, tham số này nên được giữ nguyên.

Người dùng- Câu lệnh User đặt userid (ID người dùng) được máy chủ sử dụng để phản hồi các yêu cầu. Cài đặt này xác định quyền truy cập của máy chủ. Bất kỳ tệp nào mà người dùng này không thể truy cập được cũng sẽ không thể truy cập được đối với khách truy cập vào trang web của bạn. Người dùng mặc định là "dữ liệu www".

Nhóm- Lệnh Group tương tự như lệnh User. Nhóm thiết lập nhóm mà máy chủ sẽ phản hồi các yêu cầu. Giá trị mặc định cũng là "dữ liệu www".

Mô-đun Apache2

Apache2 là một máy chủ mô-đun. Điều này có nghĩa là chỉ có chức năng cơ bản nhất mới được đưa vào lõi của máy chủ. Các tính năng nâng cao có sẵn thông qua các mô-đun có thể được tải vào Apache2. Theo mặc định, một bộ mô-đun cơ bản được bao gồm trong máy chủ tại thời điểm biên dịch. Nếu máy chủ được biên dịch để sử dụng các mô-đun được tải động thì các mô-đun có thể được biên dịch riêng và thêm vào bất kỳ lúc nào bằng lệnh Mô-đun tải. Nếu không thì Apache2 phải được biên dịch lại để thêm hoặc xóa mô-đun.

Ubuntu biên dịch Apache2 với khả năng tải mô-đun một cách linh hoạt. Các chỉ thị cấu hình có thể được đưa vào dựa trên sự hiện diện của mô-đun tương ứng trong khối .

Bạn có thể cài đặt các mô-đun Apache2 bổ sung và sử dụng chúng với máy chủ Internet của mình. Ví dụ: chạy lệnh sau trong terminal để cài đặt mô-đun ủy quyền MySQL:

Sudo apt-get cài đặt libapache2-mod-auth-mysql

Tìm kiếm các mô-đun bổ sung trong thư mục /etc/apache2/mods-available.

Sử dụng tiện ích a2enmod để kích hoạt mô-đun:

Sudo a2enmod auth_mysql dịch vụ sudo apache2 khởi động lại

Tương tự, a2dismod sẽ vô hiệu hóa mô-đun:

Sudo a2dismod auth_mysql sudo dịch vụ apache2 khởi động lại

Thiết lập HTTPS

mô-đun mod_ssl thêm một tính năng quan trọng cho máy chủ Apache2 - khả năng mã hóa các kết nối. Do đó, khi trình duyệt của bạn kết nối bằng SSL, tiền tố https:// sẽ được sử dụng ở đầu URL trên thanh điều hướng.

mô-đun mod_ssl có sẵn trong gói chung Apache2. Chạy lệnh sau trong terminal để kích hoạt mô-đun này:

Sudo a2enmod ssl

Cài đặt mặc định cho HTTPS nằm trong tệp /etc/apache2/sites-available/default-ssl. Để Apache2 cung cấp HTTPS, các tệp khóa và chứng chỉ cũng được yêu cầu. Thiết lập HTTPS ban đầu sử dụng chứng chỉ và khóa được tạo bởi gói ssl-cert. Những thứ này có thể dùng để thử nghiệm nhưng phải được thay thế bằng chứng chỉ phù hợp với trang web hoặc máy chủ của bạn. Để biết thông tin về cách tạo khóa và lấy chứng chỉ, hãy xem phần Chứng chỉ.

Để định cấu hình Apache2 cho HTTPS, hãy nhập thông tin sau:

Sudo a2ensite mặc định-ssl

Các thư mục /etc/ssl/certs và /etc/ssl/private được sử dụng theo mặc định. Nếu bạn đã cài đặt chứng chỉ và khóa trong các thư mục khác, hãy nhớ thay đổi các tùy chọn SSLCertificateFile và SSLCertificateKeyFile cho phù hợp.

Với Apache2 hiện được định cấu hình thành HTTPS, hãy khởi động lại dịch vụ để cho phép các cài đặt mới:

Dịch vụ Sudo khởi động lại Apache2

Tùy thuộc vào cách bạn cấp chứng chỉ, bạn có thể cần nhập cụm mật khẩu khi khởi động Apache2.

Bạn có thể truy cập các trang của máy chủ bảo mật bằng cách nhập https://your_hostname/url/ vào thanh địa chỉ của trình duyệt.

Quyền chia sẻ bản ghi

Để nhiều người dùng có quyền ghi vào cùng một thư mục, bạn phải cấp quyền truy cập ghi cho nhóm hợp nhất họ. Ví dụ sau cấp quyền ghi vào thư mục /var/www cho nhóm "quản trị viên web".

Sudo chgrp -R quản trị trang web /var/www sudo find /var/www -type d -exec chmod g=rwxs "()" \; sudo find /var/www -type f -exec chmod g=rws "()" \;

Nếu quyền truy cập phải được cấp cho nhiều nhóm trên mỗi thư mục, hãy sử dụng Danh sách truy cập được kiểm soát (ACL).

Hôm nay chúng ta sẽ khởi chạy máy chủ web Apache 2.2.2 và xem xét các cài đặt cơ bản của nó.
Để bắt đầu, hãy kiểm tra quá trình cài đặt diễn ra như thế nào: Mở trình duyệt của bạn và nhập http://localhost - Bạn sẽ thấy trang chào mừng: Nó hoạt động! Vì vậy, quá trình cài đặt đã diễn ra tốt đẹp đối với chúng tôi.

Tiếp theo, nhấp chuột phải vào biểu tượng cây bút trên thanh tác vụ và chọn “Dịch vụ mở”. Trong cửa sổ quản lý dịch vụ mở ra, chọn dòng “Apache2.2” và nhấp đúp vào nó, sau đó trong tab “Chung”, chọn khởi động dịch vụ theo cách thủ công - “Loại khởi động: Thủ công . Điều này phải được thực hiện để ngăn chặn các dịch vụ không cần thiết tải hệ thống. Xét rằng máy tính ở nhà không chỉ được sử dụng để phát triển web mà còn cho nhiều nhu cầu khác, việc khởi động và dừng các dịch vụ được sử dụng không liên tục theo cách thủ công là điều có thể chấp nhận được nhất.

Trong thư mục gốc của ổ C: bạn cần tạo thư mục "apache" - nó sẽ chứa các máy chủ ảo (tên miền), tệp nhật ký lỗi chung "error.log" (được chương trình tạo tự động khi khởi chạy lần đầu), tệp nhật ký lỗi chung tệp truy cập toàn cầu "access.log" (được tạo tự động). Trong thư mục “apache”, chúng tôi tạo một thư mục trống khác - “localhost”, trong đó, chúng tôi tạo thư mục “www”, sau đó sẽ cần dự án trang web của chúng tôi dưới dạng tập lệnh cục bộ. Cấu trúc thư mục có vẻ kỳ lạ này được quyết định bởi cấu trúc thư mục tương tự trong các hệ thống Unix và nhằm mục đích đơn giản hóa việc hiểu và sử dụng nó trong tương lai.

Chỉnh sửa tệp httpd.conf
1. Để tải mô-đun mod_rewrite, hãy tìm và bỏ ghi chú (xóa ký hiệu “#” ở đầu dòng) dòng này:

LoadModule rewrite_module mô-đun/mod_rewrite.so


2. Để tải trình thông dịch PHP, bạn cần thêm dòng sau vào cuối khối tải mô-đun:

#LoadModule php5_module "C:/php/php5apache2_2.dll"


3. Xác định thư mục chứa tệp cấu hình PHP bằng cách thêm dòng sau:

#PHPIniDir "C:/php"


bỏ ghi chú sau khi cài đặt php

4. Tìm dòng:

DocumentRoot "C:/server/htdocs"

Chỉ định thư mục gốc để quản lý trang web (bạn đã tạo nó sớm hơn một chút):

DocumentRoot "C:/apache"

5. Tìm khối này:


Tùy chọn Theo dõiSymLinks
AllowOverride Không có
Lệnh từ chối, cho phép
Tư chôi tât cả


Và thay thế nó bằng như sau:


Tùy chọn Bao gồm Chỉ mục FollowSymLinks
Cho phépGhi đè Tất cả
Cho phép từ tất cả

6. Xóa hoặc nhận xét khối điều khiển thư mục gốc (chúng ta sẽ không cần nó), khối này không có nhận xét sẽ trông giống như thế này:


#
# Các giá trị có thể có cho chỉ thị Tùy chọn là "Không", "Tất cả",
# hoặc bất kỳ sự kết hợp nào của:
# Chỉ mục bao gồm FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Lưu ý rằng "MultiViews" phải được đặt tên *rõ ràng* --- "Tùy chọn tất cả"
# không đưa nó cho bạn.
#
# Lệnh Tùy chọn vừa phức tạp vừa quan trọng. Xin vui lòng xem
# http://httpd.apache.org/docs/2.2/mod/core.html#options
# để biết thêm thông tin.
#
Tùy chọn Chỉ mục FollowSymLinks

#
# AllowOverride kiểm soát những lệnh nào có thể được đặt trong tệp .htaccess.
# Nó có thể là "Tất cả", "Không" hoặc bất kỳ tổ hợp từ khóa nào:
# Tùy chọn Giới hạn FileInfo AuthConfig
#
AllowOverride Không có

#
# Kiểm soát ai có thể lấy nội dung từ máy chủ này.
#
Lệnh cho phép, từ chối
Cho phép từ tất cả

7. Tìm khối:


DirectoryIndex chỉ mục.html

Thay thế bằng:


DirectoryIndex chỉ mục.html chỉ mục.htm chỉ mục.shtml chỉ mục.php

8. Tìm dòng:

ErrorLog "log/error.log"


Thay thế bằng nội dung sau (trong trường hợp này sẽ thuận tiện hơn khi xem tệp lỗi máy chủ toàn cầu):

Nhật ký lỗi "C:/apache/error.log"

9. Tìm dòng:

CustomLog "logs/access.log" phổ biến


Thay đổi thành:

Nhật ký tùy chỉnh "C:/apache/access.log" phổ biến

10. Để SSI hoạt động (hỗ trợ phía máy chủ), các dòng sau nằm trong khối phải được tìm thấy và không bị ghi chú:

Văn bản AddType/html .shtml
AddOutputFilter BAO GỒM .shtml

11. Thêm hai dòng bên dưới vào cùng một khối:

Ứng dụng AddType/x-httpd-php .php
Ứng dụng AddType/x-httpd-php-source .phps

12. Cuối cùng, tìm và bỏ ghi chú các dòng:

Bao gồm conf/extra/httpd-mpm.conf
Bao gồm conf/extra/httpd-autoindex.conf
Bao gồm conf/extra/httpd-vhosts.conf
Bao gồm conf/extra/httpd-manual.conf
Bao gồm conf/extra/httpd-default.conf

Lưu các thay đổi và đóng tệp "httpd.conf"

Bây giờ hãy mở tệp "C:\server\conf\extra\httpd-vhosts.conf" và thực hiện các thay đổi sau trong đó.

Các khối mẫu máy chủ ảo hiện có phải được loại bỏ và chỉ chèn các khối sau:

Tên Máy chủ ảo *:80


DocumentRoot "C:/apache/localhost/www"
Tên máy chủ localhost
ErrorLog "C:/apache/localhost/error.log"
Nhật ký tùy chỉnh "C:/apache/localhost/access.log" phổ biến

Lưu các thay đổi và đóng tệp "httpd-vhosts.conf"

Hãy tiếp tục - thiết lập khởi chạy thủ công dịch vụ Apache2.2 mà chúng ta đi theo đường dẫn: "Bắt đầu" → "Bảng điều khiển" → "Công cụ quản trị" → "Dịch vụ" Dịch vụ"), trong cửa sổ quản lý dịch vụ mở ra , chọn dòng "Apache2.2" và nhấp đúp vào nó, sau đó trong tab "Chung" chọn khởi động dịch vụ theo cách thủ công - "Loại khởi động: Thủ công" : thủ công"). Điều này phải được thực hiện để ngăn chặn các dịch vụ không cần thiết tải hệ thống. Xét thấy máy tính ở nhà không chỉ được sử dụng cho việc phát triển web mà còn cho nhiều nhu cầu khác, việc khởi động và dừng các dịch vụ được sử dụng không liên tục theo cách thủ công là phù hợp nhất.

Ví dụ về tạo máy chủ ảo

Nếu bạn cần cài đặt máy chủ ảo của riêng mình, hãy làm như sau:

Mở tệp "httpd-vhosts.conf" và tạo một khối trong đó với nội dung xấp xỉ sau:

# Thư mục chứa root của máy chủ của bạn.
DocumentRoot "C:/apache/dom.ru/www"
# Miền mà bạn có thể truy cập vào máy chủ ảo.
Tên máy chủ dom.ru
# Bí danh (tên bổ sung) của miền.
Bí danh máy chủ www.dom.ru
# Tệp sẽ ghi lỗi.
Nhật ký lỗi "C:/apache/dom.ru/error.log"
# Tệp nhật ký truy cập máy chủ.
Nhật ký tùy chỉnh "C:/apache/dom.ru/access.log" phổ biến

Sau đó, trong thư mục "apache", tạo thư mục "dom.ru", sau đó tạo thư mục "www".
Bước tiếp theo trong việc tạo máy chủ ảo là sửa đổi tệp C:\WINDOWS\system32\drivers\etc\hosts của hệ điều hành. Mở tệp này và thêm hai dòng vào nó:
127.0.0.1 dom.ru
127.0.0.1 www.dom.ru
Bây giờ hãy khởi động lại máy chủ Apache, mở trình duyệt của bạn, nhập "dom.ru" hoặc "www.dom.ru" vào thanh địa chỉ và bạn sẽ thấy mình đang ở trong máy chủ ảo của mình. Chỉ cần cẩn thận, bây giờ bạn có thể truy cập trang web gốc bằng tên máy chủ ảo ("www.dom.ru" nếu nó tồn tại) chỉ bằng cách nhận xét hoặc xóa dòng: "127.0.0.1 www.dom.ru" trong tập tin ở trên "hosts".
Tài liệu Apache, với máy chủ đang chạy, có sẵn tại http://localhost/manual/
Việc cài đặt và cấu hình máy chủ web Apache đã hoàn tất.