Cách chữa lỗi apache bị đụng cổ github

Chào mừng bạn đến với bài viết hướng dẫn về cách cài đặt ba công cụ quan trọng trong việc phát triển web: Apache, PHP và MySQL. Việc cài đặt và cấu hình đúng là bước quan trọng để bạn có thể phát triển ứng dụng web trên máy tính của mình. Chúng ta sẽ đi qua từng bước một để đảm bảo bạn hiểu rõ cách thực hiện.

1. Cài đặt Apache

Bước 1: Download Apache

  • Bạn có thể vào trang chủ của Apache để tìm kiếm cách tải xuống phù hợp với nhu cầu của bản thân. Ở đây chúng tôi chọn Apache Lounge.

Cách chữa lỗi apache bị đụng cổ github

  • Ở trang tải xuống của Apache Lounge chúng ta cần kiểm tra xem phiên bản Visual C++ tương ứng với phiên bản Apache và đảm bảo đã cài đặt nó trên máy tính của mình. Sau đó ta cần chọn phiên bản Apache phù hợp, ở đây Stringee hướng dẫn với phiên bản mới nhất là Apache 2.4.57.

Cách chữa lỗi apache bị đụng cổ github

\>> Xem thêm bài viết:

- Hướng dẫn cài đặt Web server Apache trên CentOS 7

- Cài đặt cấu hình cân bằng tải với HaProxy và Docker

- Tìm hiểu về ràng buộc (Constraint) trong SQL

Bước 2: Cấu hình Apache

  • Sau khi tải xuống Apache, tiếp theo chúng ta cần giải nén thư mục Apache 24 vào ổ C. Mặc định Apache sẽ được cài đặt lên ổ C. Trong trường hợp cài đặt Apache trên một phân vùng khác, chúng ta cần cấu hình lại giá trị DocumentRoot trong file http-vhost.conf hoặc file sites-enable.conf (với apache2). Trong bài viết này chúng ta sẽ tìm hiểu cách cài đặt trực tiếp trên ổ C theo mặc định để đảm bảo tính đơn giản, dễ hiểu và dễ thao tác.

Cách chữa lỗi apache bị đụng cổ github

  • Bây giờ quá trình cài đặt Apache của chúng ta đã hoàn tất. Tiếp theo, chúng ta chạy file httpd.exe trong thư mục C:\Apache24\bin để khởi động Apache.

Cách chữa lỗi apache bị đụng cổ github

  • Khi khởi chạy Apache thì một cửa sổ Terminal đồng thời sẽ nổi lên, có thể chúng ta sẽ thấy thông báo như trong hình.

Cách chữa lỗi apache bị đụng cổ github

  • Đây chỉ là một cảnh báo vì ServerName chưa được cấu hình đúng. Chúng ta có thể fix lỗi này bằng cách gán giá trị cho ServerName trong file C:\Apache24\conf\httpd.conf:

Cách chữa lỗi apache bị đụng cổ github

Cách chữa lỗi apache bị đụng cổ github

  • Tìm đến dòng

    ServerName www.example.com:80 và bỏ dấu # để chỉnh sửa nó thành domain của bạn, trong trường hợp này chúng ta chỉ chạy ở localhost nên mình sẽ chuyển cấu hình thành localhost.

Cách chữa lỗi apache bị đụng cổ github

  • Sau khi thực hiện các chỉnh sửa như trên, chúng ta khởi chạy lại Apache bằng cách tắt cửa sổ Terminal httpd.exe. Chúng ta khởi chạy lại Apache và lỗi trên sẽ không còn nữa. Sau khi đã làm các bước trên, chúng ta sẽ thử truy cập và xem Apache đã cấu hình thành công chưa bằng cách truy cập vào

    AllowOverride controls what directives may be placed in .htaccess files.

    It can be "All", "None", OR any combination of the keywords:

    AllowOverride FileInfo AuthConfig Limit

    AllowOverride All

    1 để kiểm tra. Đây là màn hình khi mà chúng ta truy cập thành công.

Cách chữa lỗi apache bị đụng cổ github

  • Trong file httpd.conf ta tiếp tục sửa các mục sau:

Sửa dòng

# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", OR any combination of the keywords:
#   AllowOverride FileInfo AuthConfig Limit
#
AllowOverride All

2 ->

# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", OR any combination of the keywords:
#   AllowOverride FileInfo AuthConfig Limit
#
AllowOverride All

3

Cách chữa lỗi apache bị đụng cổ github

Sửa:

# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", OR any combination of the keywords:
#   AllowOverride FileInfo AuthConfig Limit
#
AllowOverride None

Thành:

# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", OR any combination of the keywords:
#   AllowOverride FileInfo AuthConfig Limit
#
AllowOverride All

Kết quả:

Cách chữa lỗi apache bị đụng cổ github

  • Chúng ta tiếp tục mở cửa sổ Command Promt với quyền admin. Việc này có thể thực hiện bằng cách nhấn tổ hợp phím

    AllowOverride controls what directives may be placed in .htaccess files.

    It can be "All", "None", OR any combination of the keywords:

    AllowOverride FileInfo AuthConfig Limit

    AllowOverride All

    4 rồi chọn Terminal (Admin).
    Cách chữa lỗi apache bị đụng cổ github

Chú ý: Trong menu sau khi bấm tổ hợp

# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", OR any combination of the keywords:
#   AllowOverride FileInfo AuthConfig Limit
#
AllowOverride All

4 tên gọi của cửa sổ dòng lệnh có thể khác nhau nhưng sẽ tương tự như hình dưới. Đồng thời ở đây chúng ta nên dùng đúng cửa sổ Command Promt để đảm bảo không có lỗi ngoài ý muốn. Đối với những bạn sử dụng Terminal như trong hướng dẫn các bạn nên có thêm một bước chọn lại cửa sổ dòng lệnh như sau:

Cách chữa lỗi apache bị đụng cổ github

  • Chạy từng lệnh sau trong cửa sổ Terminal:

C:\Users\levan>cd C:\Apache24\bin
C:\Apache24\bin>httpd -k install
C:\Apache24\bin>httpd -k start

Cách chữa lỗi apache bị đụng cổ github

Chú ý: Bước này có thể hiển thị cửa sổ cảnh báo Windows firewall để cho phép các dịch vụ của Apache. Bạn hãy chọn Allow access.

Đến đây thì toàn bộ các bước cài đặt và cấu hình Apache đã hoàn thành.

\>>> Xem thêm bài viết về chủ SQL

- Hướng dẫn cài đặt Web server Apache trên CentOS 7 - Tìm hiểu về Regular Expression trong PHP - Hướng dẫn sử dụng Apache Httpclient trong Java

2. Cài đặt và cấu hình MySQL

MySQL được hỗ trợ trên đa nền tảng (Windows, Ubuntu và nhiều hệ điều hành khác).

Bước 1: Chuẩn bị bộ cài MySQL

  • Đối với Windows chúng ta có thể cài đặt nó bằng source .zip ở đây mà không cần phải chạy gói cài đặt MSI Installer. Trong bài viết này thì phiên bản MySQL đang là mysql-8.1.0-winx64.zip

Cách chữa lỗi apache bị đụng cổ github

  • Sau khi đã có file nén bộ cài MySQL chúng ta tiến hành giải nén nó vào ổ C và đổi tên nó thành MySQL.

Cách chữa lỗi apache bị đụng cổ github

Bước 2: Chỉnh sửa cấu hình MySQL

  • Sử dụng Nodepad để tạo file my.ini trong thư mục C:\MySQL với nội dung như sau:

[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 
datadir="c:/MySQL/data/"
default_authentication_plugin=mysql_native_password

Cách chữa lỗi apache bị đụng cổ github

Cách chữa lỗi apache bị đụng cổ github

Bước 3: Cài đặt MySQL

  • Khởi tạo và cài đặt MySQL, trong cửa sổ Terminal chúng ta chạy các lệnh sau:

C:\Users\levan>C:\MySQL\bin\mysqld --initialize-insecure --user=root
C:\Users\levan>C:\MySQL\bin\mysqld --install
C:\Users\levan>net start mysql

Cách chữa lỗi apache bị đụng cổ github

Sau khi thực hiện các bước trên chúng ta sẽ thấy thư mục C:\MySQL\data được tạo thành công. Và MySQL cũng sẽ tự động khởi chạy khi khởi động Windows.

Chú ý, trong một số trường hợp chúng ta có thể gặp phải lỗi như sau:

[ERROR] InnoDB: Operating system error number 87 in a file operation
[ERROR] InnoDB: File .\ib_logfile101: 'aio write' RETURN OS error 187.
[ERROR] InnoDB: Cannot CONTINUE operation

Lúc này bạn cần xóa toàn bộ file trong thư mục *C:\MySQL\data và thêm dòng sau vào file my.ini

innodb_flush_method=normal

Sau đó chúng ta chỉ cần chạy lại các lệnh để khởi chạy MySQL như phía trên đã hướng dẫn.

Cách chữa lỗi apache bị đụng cổ github

3. Cài đặt PHP

Bước 1: Download PHP

Chúng ta có thể lựa chọn phiên bản PHP cần tải xuống ở đây. Trong hướng dẫn này chúng ta sẽ sử dụng PHP phiên bản php-8.2.10-nts-Win32-vs16-x64.

*Chú ý: Ở đây ta có 2 bản cài PHP có thể chọn. Thread Safe để sử dụng PHP như một module của Apache. Non Thread Safe để sử dụng PHP thông qua FastCGI. Trong bài viết này mình sẽ hướng dẫn chạy qua FastCGI với Non Thread Safe

Tương tự như MySQL và Apache, chúng ta chỉ cần giải nén PHP vào ổ C để thuận tiện trong việc sử dụng. Lúc này chúng ta đã cài đặt xong PHP.

Cách chữa lỗi apache bị đụng cổ github

Bước 2: Cấu hình PHP

  • Sau khi giải nén PHP chúng ta cần tạo file cấu hình php.ini. Ở trong thư mục C:\PHP chúng ta có thể thấy file php.ini-production, ở đây ta nên copy file này và đổi tên nó thành php.ini

Cách chữa lỗi apache bị đụng cổ github

Sau đây là một số module thường sử dụng và cần mở lên sau khi cài đặt PHP. Thông thường chúng sẽ có sẵn trong file php.ini, chúng ta chỉ cần loại bỏ dấu

# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", OR any combination of the keywords:
#   AllowOverride FileInfo AuthConfig Limit
#
AllowOverride All

6. Lúc này các cấu hình mới được sử dụng, trong file php.ini chúng ta tìm đến các dòng cấu hình sau và sử dụng chúng theo hướng dẫn dưới đây.

Sửa:

;extension_dir = "ext"
// Phiên bản PHP7
;extension=php_curl.dll
;extension=php_gd2.dll
;extension=php_mysqli.dll
;extension=php_soap.dll
// Phiên bản PHP8
;extension=curl
;extension=gd
;extension=mysqli
;extension=soap

thành:

extension_dir = "ext"
// Phiên bản PHP7
extension=php_curl.dll
extension=php_gd2.dll
extension=php_mysqli.dll
extension=php_soap.dll
// Phiên bản PHP8
extension=curl
extension=gd
extension=mysqli
extension=soap

  • Cấu hình Apache chạy PHP

Tại trang download của Apache lounge chúng ta tìm file tải xuống có tên mod_fcgid và tải xuống.

Cách chữa lỗi apache bị đụng cổ github

Giải nén file vừa tải xuống và copy file mod_fcgid.so vào thư mục C:\Apache24\modules.

Cách chữa lỗi apache bị đụng cổ github

Tiếp tục mở file cấu hình C:\Apache24\conf\httpd.conf và thêm đoạn sau vào cuối file:

LoadModule fcgid_module modules/mod_fcgid.so
FcgidInitialEnv PATH "c:/php;C:/WINDOWS/system32;C:/WINDOWS;C:/WINDOWS/System32/Wbem;"
FcgidInitialEnv SystemRoot "C:/Windows"
FcgidInitialEnv SystemDrive "C:"
FcgidInitialEnv TEMP "C:/WINDOWS/Temp"
FcgidInitialEnv TMP "C:/WINDOWS/Temp"
FcgidInitialEnv windir "C:/WINDOWS"
FcgidIOTimeout 64
FcgidConnectTimeout 16
FcgidMaxRequestsPerProcess 1000
FcgidMaxProcesses 50
FcgidMaxRequestLen 8131072
# Location php.ini:
FcgidInitialEnv PHPRC "c:/php"
FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 1000
"
  AddHandler fcgid-script .php
  FcgidWrapper "c:/php/php-cgi.exe" .php

Cách chữa lỗi apache bị đụng cổ github

Vẫn trong file httpd.conf ta chỉnh sửa dòng

# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", OR any combination of the keywords:
#   AllowOverride FileInfo AuthConfig Limit
#
AllowOverride All

7 thành

# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", OR any combination of the keywords:
#   AllowOverride FileInfo AuthConfig Limit
#
AllowOverride All

8.

Cách chữa lỗi apache bị đụng cổ github

Trong thư mục C:\Apache24\htdocs (thư mục root Apache) ta tạo file info.php với nội dung:

# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", OR any combination of the keywords:
#   AllowOverride FileInfo AuthConfig Limit
#
AllowOverride All

0

Cách chữa lỗi apache bị đụng cổ github

Cuối cùng chúng ta chỉ cần Restart Apache thông qua Terminal bằng lệnh

# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", OR any combination of the keywords:
#   AllowOverride FileInfo AuthConfig Limit
#
AllowOverride All

9

Mở trình duyệt và truy cập vào đường dẫn

C:\Users\levan>cd C:\Apache24\bin
C:\Apache24\bin>httpd -k install
C:\Apache24\bin>httpd -k start

0 nếu có kết quả như sau thì việc cấu hình PHP đã hoàn tất:

Cách chữa lỗi apache bị đụng cổ github

4. Cài đặt PHPMyAdmin

  • Chúng ta tiến hành tải xuống bộ cài phpMyAdmin-5.2.1-all-languages.zip.
  • Sau khi tải thành công bộ

    C:\Users\levan>cd C:\Apache24\bin C:\Apache24\bin>httpd -k install C:\Apache24\bin>httpd -k start

    1 chúng ta tiến hành giải nén nó vào thư mục C:\Apache24\htdocs.

Cách chữa lỗi apache bị đụng cổ github

  • Trong thư mục C:\Apache24\htdocs\PHPMyAdmin chúng ta sẽ tìm thấy file config.sample.inc.php, chúng ta tiến hành copy file này và đổi tên thành config.inc.php.

Cách chữa lỗi apache bị đụng cổ github

  • Trong file C:\Apache24\htdocs\PHPMyAdmin\config.inc.php chúng ta tìm đến dòng $cfg['Servers'][$i]['AllowNoPassword'] và cập nhật giá trị nó về true. Ta có kết quả như sau:

Cách chữa lỗi apache bị đụng cổ github

  • Trong trình duyệt chúng ta truy cập vào đường dẫn

    C:\Users\levan>cd C:\Apache24\bin C:\Apache24\bin>httpd -k install C:\Apache24\bin>httpd -k start

    2 nếu thấy kết quả như sau thì quá trình cài đặt PHPMyAdmin đã thành công.

Cách chữa lỗi apache bị đụng cổ github

  • Vì trước đó chúng ta đã tiến hành cho phép đăng nhập không cần mật khẩu nên bây giờ chúng ta chỉ cần sử dụng username là root để tiến hành truy cập PHPMyAdmin. Kết quả như sau

Cách chữa lỗi apache bị đụng cổ github

Thông qua các bước trên thì quá trình cài đặt PHPMyAdmin đã hoàn tất và bạn có thể sử dụng các chức năng của nó.

Tổng kết

Qua bài viết này, bạn đã nắm vững cách cài đặt ba công cụ quan trọng để phát triển ứng dụng web: Apache, PHP và MySQL. Điều này sẽ giúp bạn tạo ra các ứng dụng web động và quản lý cơ sở dữ liệu một cách hiệu quả. Hãy tiếp tục học hỏi và khám phá để trở thành một nhà phát triển web thành công!


Stringee Communication APIs là giải pháp cung cấp các tính năng như gọi thoại, gọi video, tin nhắn chat, SMS hay tổng đài chăm sóc khách hàng có thể tích hợp trực tiếp vào các ứng dụng/website của doanh nghiệp nhanh chóng. Bộ giải pháp này giúp tiết kiệm đến 80% thời gian và chi phí cho doanh nghiệp bởi thông thường nếu tự phát triển các tính năng này có thể mất từ 1 - 3 năm.

Bộ API giao tiếp của Stringee hiện đang được tin dùng bởi các doanh nghiệp ở mọi quy mô, lĩnh vực ngành nghề như TPBank, VOVBacsi24, VNDirect, Shinhan Finance, Ahamove, Logivan, Homedy, Adavigo, bTaskee…