Nếu bạn có một VPS sử dụng Windows Server với các mục đích cá nhân. Thì bạn cũng hoàn toàn có thể biến nó thành một máy chủ đơn giản để cài đặt nhiều website riêng với phần mềm XAMPP mà không ảnh hưởng đến mục đích ban đầu của bạn.
XAMPP hay WAMP luôn là 2 sự lựa chọn hàng đầu của giới lập trình Website khi họ cần tới môi trường để chạy giả lập Website trên Browser. XAMPP sử dụng Apache chạy trực tiếp trên locahost. Nhưng bạn hoàn toàn có thể đưa web server của mình lên online được. Nếu sử dụng máy tính cá nhân thì bạn cần gán IP tĩnh cho modem mạng. Còn nếu sử dụng VPS thì chỉ cần làm theo đúng hướng dẫn của mình trong bài viết này.
Cài đặt web server với XAMPP -> Đổi mật khẩu, fix lỗi & bảo mật cho phpMyadmin -> Thêm Doamin vào Web Server -> Cài chứng chỉ SSL free
Mình sẽ sử dụng hẳn Windows Server 2022 mới nhất để demo cho anh em. Các bản cũ hơn thì cũng tương tự thôi không khác gì cả. Mình chỉ hướng dẫn bảo mật cơ bản cho Database. Còn về phần bảo mật VPS thì mình sẽ nói trong một bài viết khác. Cám ơn SwatiGaming vì mình có sử dụng tài liệu của bạn. Dưới đây là cấu hình VPS mình sử dụng:
Cài đặt XAMPP và bảo mật phpmyadmin
Cài đặt XAMPP
Các bạn truy cập trang chủ để tải bản XAMPP mới nhất về: apachefriends.org
Sau khi tải xong các bạn chạy file .exe và làm theo các bước sau:
Sau khi quá trình cài đặt kết thúc các bạn nhấn Finish và nếu nó hỏi có muốn chạy XAMPP luôn không thì cứ chọn có. Bây giờ thì các bạn chạy web server và MySQL luôn nhé:
Vậy là xong rồi. Chúng ta sẽ chuyển đến bước tiếp theo. Nguồn ảnh: thegioididong.com
Đổi mật khẩu, fix lỗi & bảo mật cho phpMyadmin
Truy cập đường dẫn http://localhost/phpmyadmin/
để vào trang quản trị phpMyadmin
Ảnh trên là giao diện Tiếng Việt. Nếu các bạn sử dụng giao diện Tiếng Anh thì tiến hành đổi mật khẩu cho User bằng cách chọn User accounts:
Tại đây các bạn sẽ thấy có nhiều User được tạo sẵn. Đầu tiên chúng ta sẽ xóa User name “Any” vì nó không có mật khẩu và ai cũng có thể truy cập được Database của bạn.
Bây giờ chúng ta sẽ đổi mật khẩu tài khoản root của localhost bằng cách chọn “Edit privileges” bên cạnh tài khoản cần sửa:
Tại đây tìm và chọn “Change password“
Bây giờ các bạn chỉ cần điền mật khẩu mới và chọn “GO” là xong. User root đã được đổi mật khẩu. Lưu ý đây là tài khoản dùng để đăng nhập vào phpMyadmin.
Sau khi đổi mật khẩu xong. PhpMyadmin sẽ bị lỗi do file config chưa được chỉnh sửa. Không sao hết, các bạn chỉ cần sửa nó trong file config.inc.php
là được.
Đường dẫn file config.inc.php
của phpMyadmin tại C:\xampp\phpMyAdmin
Sau khi mở file config.inc.php
lên. Các bạn hãy điền mật khẩu mà mình vừa đổi vào đoạn $cfg['Servers'][$i]['password'] = '';
như hình bên dưới:
Các bạn đừng vội tắt file này đi. Tại dòng $cfg['Servers'][$i]['auth_type'] = 'config';
bạn sẽ cần thay đổi “config” thành “cookie“. Lý do là vì nếu không đổi bạn sẽ không thể thực hiện đăng xuất và đăng nhập tài khoản trên phpMyadmin được.
Xong rồi. Về cơ bản hiện tại các bạn đã đổi mật khẩu đăng nhập phpMyadmin được rồi. Bây giờ chúng ta tiến hành thêm mật khẩu cho tất cả các tài khoản User còn lại nhé!
Sau khi đổi mật khẩu hết cho các tài khoản. PhpMyadmin sẽ thông báo lỗi tiếp như hình dưới:
Bây giờ chúng ta sẽ quay lại file config.inc.php
. Tại đây tìm dòng $cfg['Servers'][$i]['controlpass'] = '';
và thêm mật khẩu các bạn tạo cho User có tên là pma
.
Vẫn ở tại file này. Các bạn hãy tìm dòng $cfg['blowfish_secret'] = 'xampp';
và đổi “xampp” thành một chuỗi ký tự bất kỳ nhé. Bắt buộc chúng ta phải thay đổi dòng này để bảo mật hơn. Lưu ý là tối đa chỉ có 32 ký tự thôi nhé. Như trong demo mình điền nhiều quá sau nó lại báo lỗi.
Bây giờ chúng ta sẽ đổi đường link truy cập phpMyadmin nhé. Việc này sẽ khiến mấy đứa tò mò khó dò ra Database của các bạn hơn. Chúng ta tìm file httpd-xampp.conf
theo đường dẫn C:\xampp\apache\conf\extra
Tìm dòng Alias /phpmyadmin "C:/xampp/phpMyAdmin/"
thay đổi /phpmyadmin
thành bất kỳ cái gì mà các bạn muốn
Tiếp theo các bạn xóa dòng Require local
và thêm vào 3 dòng bên dưới:
Order allow,deny
Allow from all
Require all granted
Mục đích của việc này là để khi các bạn thêm Domain vào web server có thể truy cập phpMyadmin thông qua các Domain đó. Bây giờ các bạn tắt và bật lại Module Apache trên XAMPP Control Panel là có thể sử dụng đường link mới của phpMyadmin.
Xong rồi. Giờ Web Server của bạn đã sẵn sàng để thêm Domain và tạo trang web.
Thêm Domain, đăng ký chứng chỉ SSL free và cài đặt website WordPress
Thêm Doamin (tên miền) vào Web Server
Để thêm một Domain (tên miền) vào server các bạn truy cập thư mục extra tại C:\xampp\apache\conf\extra
sau đó tạo thêm một thư mục sites
. Trong thư mục sites các bạn tạo thêm 1 file trống đặt tên theo dạng domain.conf
và chèn đoạn code bên dưới vào
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "C:/xampp/htdocs/example"
ServerName example.com
ServerAlias www.example.com
ErrorLog "logs/example.com-error.log"
CustomLog "logs/example.com-access.log" common
</VirtualHost>
<VirtualHost *:443>
ServerAdmin [email protected]
DocumentRoot "C:/xampp/htdocs/example"
ServerName example.com
ErrorLog "logs/example.com-error.log"
CustomLog "logs/example.com-access.log" common
SSLEngine on
SSLCACertificateFile "C:/xampp/apache/ssl/ca_bundle.crt"
SSLCertificateFile "C:/xampp/apache/ssl.crt/certificate.crt"
SSLCertificateKeyFile "C:/xampp/apache/ssl.key/private.key"
</VirtualHost>
Giải thích:
- ServerAdmin: Email admin quản lý Domain
- DocumentRoot: Đường dẫn tới thư mục của Domain
- ServerName: Domain cần thêm
- ServerAlias: Vẫn là Doamin nhưng có thêm www
- ErrorLog: Đường dẫn tới file báo lỗi
- CustomLog: Đường dẫn tới file báo tiến trình hoạt động
- SSLEngine: on là bật bảo mật SSL, off thì là tắt
- SSLCACertificateFile: Đường dẫn tới file ca_bundle.crt
- SSLCertificateFile: Đường dẫn tới file certificate.crt
- SSLCertificateKeyFile: Đường dẫn tới file private.key
Các bạn để ý 3 file ca_bundle.crt
certificate.crt
private.key
có được khi đăng ký SSL free của sslforfree mình sẽ hướng dẫn chi tiết bên dưới. Nếu có nhiều domain thì các bạn có thể thay đổi tên cho dễ nhớ. Lưu ý là đổi tên trong file domain.conf
thì cũng phải đổi tên 3 file tương ứng khi tải về.
Bây giờ các bạn mở file httpd-vhosts.conf
trong thư mục C:\xampp\apache\conf\extra
. Thêm dòng code bên dưới vào cuối cùng:
Include conf/extra/sites/vngaming.conf
Trong trường hợp các bạn có nhiều hơn 1 website thì chỉ cần tạo thêm 1 file domain.conf
trong thư mục sites và config lại. Sau đó thêm tiếp vào trong file httpd-vhosts.conf
là được.
Tiếp theo vào thư mục C:\xampp\htdocs
và tạo thêm một thư mục khác để chứa website của bạn. Lưu ý là đặt tên phải giống như dòng DocumentRoot
trong file domain.conf
Đăng ký chứng chỉ bảo mật SSL free với sslforfree
Trước kia sslforfree hoàn toàn miễn phí và không giới hạn số domain các bạn đăng ký SSL (thậm chí còn không phải tạo tài khoản). Nhưng ở thời điểm hiện tại đã khác hoàn toàn. Các bạn sẽ cần tạo một tài khoản thành viên. Mặc dù vẫn được đăng ký SSL free nhưng sẽ bị giới hạn là 3 website và chỉ được cấp chứng chỉ 90 ngày!
Bây giờ các bạn hay đăng ký 1 tài khoản sslforfree tại địa chỉ này nhé: www.sslforfree.com
Sau khi đăng ký được tài khoản. Tại giao diện Dashboard các bạn chọn New Certificate để tạo chứng chỉ bảo mật SSL cho website
Điền Domain của bạn vào và ấn Next Step để sang bước tiếp theo
Tại bước này các bạn chỉ chọn được 90-Day Certificate thôi vì 1 năm là mất tiền. Sau khi chọn thì ấn Next Step để qua bước tiếp theo.
Bước này không quan trọng. Cứ thế ấn Next Step để đi tiếp. Nếu bạn tò mò có thể ấn vào dấu ?
để đọc chơi.
Bước này là bước giới thiệu các gói sản phẩm là chính chứ mình thì cứ Free mà chọn thôi. Chọn xong thì ấn Next Step để tiếp tục.
Đây là bước khá quan trọng vì nó bắt mình phải xác minh Domain. Có 3 các xác minh là qua Email, DNS (CNAME) và up File lên Host. Nếu bạn chưa có Doamin thì mình giới thiệu tới bạn web site cung cấp Domain miễn phí: www.freenom.com
Trong bài viết này mình sẽ hướng dẫn các bạn xác minh Domain qua các DNS (CNAME) nhé. Anh em giỏi hoặc thích thì có thể tự mò các cách xác minh khác nhé. Mình xin giải thích qua 1 chút như sau:
- Email Verification: Bạn phải có Email Server dạng
[email protected]
thì mới dùng được kiểu xác minh này - DNS (CNAME): Tạo 1 Record CNAME với các thông tin có sẵn thông qua nhà cung cấp Domain là chơi được
- HTTP File Upload: Nếu bạn đã có sẵn website thì upload 1 file được cung cấp lên thư mục gốc của website là được
Như hình bên dưới là mình sử dụng ZoneDNS để quản lý Domain. Các nhà cung cấp khác bạn cứ điền đúng là được
Sau khi tạo xong các bạn ấn Next Step. Đợi tầm vài phút sau đó chọn Verify Domain. Sau khi xác minh xong Domain thì các bạn chọn Apache ở phần Server Type và click vào Download Cretificate (.zip)
là tải được chứng chỉ bảo mật SSL của website của bạn về.
Rồi xong. Bây giờ các bạn chỉ cần copy 3 file chứng chỉ trong tệp ZIP mới tải về vào các thư mục tương ứng trong file domain.conf
của mình. Nhớ là nếu có nhiều website thì đổi tên cho dễ nhớ nhé. Với file ca_bundle.crt
thì các bạn tạo thêm 1 thư mục tên là ssl
trong đó luôn nhé. Đường dẫn: C:\xampp\apache\conf
- File ca_bundle.crt ném vào thư mục ssl
- File certificate.crt ném vào thư mục ssl.crt
- File private.key ném vào thư mục ssl.key
Xong rồi bây giờ các bạn Stop và Start module Apache trên XAMPP Control Panel để tận hưởng thành quả nhé!
Tạo Database và cài đặt website với mã nguồn mở WordPress
Tải và copy file mã nguồn WordPress vào thư mục chứa website:
Bây giờ các bạn truy cập phpMyadmin để tạo Database cho website của mình như bên dưới!
Ở đây mình dùng luôn tài khoản User root để cài đặt website. Mình không khuyến khích các bạn làm điều này, các bạn nên tạo User riêng cho từng Database riêng bằng cách vào User account -> Add user account
- User name: Điền tên đăng nhập
- Host name: Chọn Local là nó tự nhảy localhost
- Password: Nhập mật khẩu
- Re-type: Nhập lại mật khẩu
- Authentication plugin: Mặc định
- Global privileges: Tích vào Check all
Tắt tường lửa, mở port đưa website lên online
VPS hiện tại đang là Private nên chưa thể truy cập các website của bạn trên máy tính khác được. Mình sẽ hướng dẫn cách tắt tường lửa và mở port để người khác cũng truy cập vào website của bạn được.
Tắt tường lửa
Đầu tiên vào Control Panel trên Windows Server và tìm Windows Defender Firewall:
Chọn Turn Windows Defender Firewall on or off ở menu bên trái để tắt tường lửa:
Chọn Turn off hết rồi lưu lại là xong
Mở Port để người khác truy cập được vào website
Quay lại trang Windows Defender Firewall
và chọn Advanced settings
ở menu bên trái:
Chọn Inbound Rules
ở bên trái rồi ấn vào New Rule
ở bên phải:
Bước tiếp theo cách bạn tích chọn vào ô Port rồi ấn Next để tiếp tục:
Các bạn tiếp tục tích chọn TCP và All local ports và ấn Next:
Tại đây các bạn nhớ tích chọn Allow the connection sao đó mới Next nhé:
Tiếp theo các bạn phải tích chọn hết cả 3 ô Domain, Pricate và Public nhé:
Cuối cùng các bạn đặt một tên nào đó cho dễ nhớ về sau chỉnh sửa và ấn Finish để kết thúc.
Tiếp theo các bạn mở Port ở Outbound Rules nữa là xong. Làm tương tự như phần Inbound Rules:
Vậy là đã hoàn thành. Các bạn đã có thể thử truy cập website của mình trên điện thoại hoặc một máy tính khác. Giờ thì bắt tay vào thiết kế trang web của mình và tận hưởng thành quả thôi!
Video toàn bộ quá trình cài đặt
Update…
Kết luận
Vậy là xong. Mình đã hướng dẫn các bạn cài đặt hoàn chỉnh một web server với mô hình Apache bằng XAMPP. Như mình đã nói thì nếu không dùng VPS các bạn cần gán IP tĩnh cho Modem mạng của bạn. Đây là một bài viết cực kỳ dài của mình nhưng nó khá chi tiết. Mong rằng các bạn có thể cài đặt và xây dựng một website như ý. Website khác copy bài viết vui lòng ghi nguồn https://ntha.icu.