Bạn đang có ý định xây dựng cho mình một website cá nhân nhưng kinh phí để thuê và duy trì hosting thì quá đắt. Bạn đang tập làm web và muốn có 1 không gian để thử nghiệm. Hãy làm theo từng bước hướng dẫn sau để tự tạo cho mình một hosting miễn phí với dịch vụ OpenShift Online by Redhat. Và bạn có thể tùy thích cài đặt những dịch vụ, mã nguồn mà bạn biết sử dụng lên như: Wordpress, Drupal, Python, PHP, MySQL.... Trong bài viết này mình sẽ hướng dẫn tạo hosting cài đặt mã nguồn Wordpress đi kèm với dịch vụ cloudflare.
[alert-note]Cập nhật: Hiện tại những tài khoản mới đăng ký thì chỉ được dùng thử 30 ngày, hosting sau 30 ngày sẽ bị xóa. Những tài khoản cũ vẫn sử dụng và tạo ứng dụng web bình thường. [/alert-note]
OpenShift Online là gì?
OpenShift Online thực chất không phải là một hosting thông thường mà ta vẫn thường hay nhắc mà đó chính là một ứng dụng tạo ra một nền tảng hosting công cộng ứng dụng công nghệ máy chủ điện toán đám mây để người dùng có thể sử dụng, tạo ra một hosting cho riêng mình và có thể tùy chỉnh các phần mềm được cài đặt lên trên nó. Nó có thể hỗ trợ Java, Python, Perl, Ruby và tất nhiên là có PHP và nó mới bổ sung PhpMyAdmin vào, nghĩa là bạn có thể chạy bất cứ mã nguồn PHP & MySQL nào trong đó có WordPress.
Nghe thì có vẻ phức tạp nhưng thực chất mọi thao tác trong OpenShift đã được đơn giản hóa đi rất nhiều bằng việc bạn có thể tự tạo ra ứng dụng riêng được hỗ trợ từ các package, các package này nghĩa là các gói phần mềm tùy theo từng mục đích sử dụng và nó cũng đã tối ưu để sử dụng, trong đó có package dành cho WordPress.
Nguồn: google.com
Ưu điểm:
- Tạo tối đa 3 Website
- Mỗi website dung lượng 1GB, băng thông không giới hạn
- Có thể Add domain riêng nhưng với dạng: www.tendomain.xxx
Nhược điểm:
- Nếu 1 ngày không có người truy cập, website sẽ vào trạng thái idle (mất vài giây để khởi động lại).
- Nếu lượng traffic quá lớn có thể bị delete mà không cần báo trước (nghe nói chứ chưa gặp trường hợp này)
- Truy cập từ Việt Nam đôi lúc rất chậm.
Thích hợp:
- Tạo website test code.
- Website có lượng traffic không quá lớn.
- Tạm thời khi chưa có tiền mua Host xịn.
- Đầy đủ công cụ và thích làm gì là tùy bạn khám phá.
Không thích hợp:
Những ai chưa có kiến thức về các thành phần cũng như cách thức hoạt động của một website.
A. ĐĂNG KÝ TÀI KHOẢN OPENSHIFT
Việc đăng ký cũng rất đơn giản, trước tiên bạn truy cập vào: https://www.openshift.com/app/account/new Sau đó bạn chỉ cần nhập email, mật khẩu, mã captcha và bấm Submit.
Tiếp theo bạn vào Email đăng ký lúc nãy và bấm vào link mà Openshift gửi qua mail để kích hoạt tài khoản hoàn toàn.
B. TẠO APPLICATION CHO TÀI KHOẢN OPENSHIFT
Sau khi đăng nhập bạn bấm Create your first application now để tạo ứng dụng đầu tiên.
Mục đích chúng ta tạo website với mã nguồn Wordpress nên có thể chọn Wordpress 4 (cài đặt tự động) hoặc PHP 5.4 để tự cài đặt.
[alert-warning]Lưu ý 1: Nếu bạn cài Wordpress 4 thì sẽ bị lỗi 1 số Plugin, theme và bạn không thể điều chỉnh domain về http://www.domain.xxx mà chỉ sử dụng dạng subdomain http://subdomain.domain.xxx[/alert-warning]
[alert-warning]Lưu ý 2: Với OpenShift Free sẽ có 2 lựa chọn để bạn tạo website
1. No Scaling: Tạo 3 website riêng lẻ với mỗi Gear riêng (1 Gear = 1GB lưu trữ, 1 DB, 1 lượng traffic nhất định)
2. Scale with web traffic: Tạo 1 – 2 website (nên chọn 1) với Gear chia sẽ (Tự động điều chỉnh dung lượng, traffic cho website khi cần)
Với phương án 1 bạn có thể cài tự động các ứng dụng: Wordpress 4, MySQL, Phpmyadmin từ OpenShift. Nhưng với Phương án 2 thì bạn bắt buộc phải cài Phpmyadmin thủ công.[/alert-warning]
Vì chúng ta cần 1 website với 1 dung lượng lớn hơn, traffic có thể tăng đột biến nên chọn phương án 2.
Để cài đặt 1 website chạy với Wordpress hoàn chỉnh bạn cần cài đặt: PHP 5.4, mySQL. Trước tiên chọn cài đặt ứng dụng PHP 5.4
Tiếp theo đặt tên domain theo dạng tênDatabase-têndomain.rhcloud.com
Kéo xuống dưới chọn PA2: Scale with web traffic, chọn tiếp No Preference sau đó nhấn Create Application
Sau khi tạo xong nhấn vào Not now, continue
Việc tiếp theo là cài MySQL và Phpmyadmin. Như đã nói ở trên bạn chỉ có thể cài MySQL từ Openshift còn Phpmyadmin sẽ cài thủ công sau đó.
Bạn nhấn vào Add MySQL 5.5 để bắt đầu cài đặt
Nhấn Add Cartridge để bắt đầu.
Sau khi cài xong sẽ có thông tin đăng nhập với User/pass đăng nhập mySQL và tên Database. Bạn có thể lưu lại lúc cần.
C. CÀI ĐẶT FTP CLIENT, PHPMYADMIN:
Để cài đặt Phpmyadmin thì bắt buộc bạn phải sử dụng trình FTP để upload mã nguồn lên server.
Công cụ cần có:
WinSCP: https://winscp.net/eng/download.php#download2
Putty Key Generator: http://the.earth.li/~sgtatham/putty/latest/x86/puttygen.exe
Putty Cmd: http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe
Download và chép file Putty.exe vào đường dẫn tương ứng:
C:\Program Files\PuTTY (windows 32bit)
C:\Program Files (x86)\PuTTY (Windows 64bit)
phpMyAdmin-4.4.15.2-english (chỉ tương thích với PHP 5.4, MySQL 5.5): https://files.phpmyadmin.net/phpMyAdmin/4.4.15.2/phpMyAdmin-4.4.15.2-english.zip
Trước tiên chạy Putty GEN.exe để lấy key ssh. Bạn bấm Generate để bắt đầu
Rê chuột liên tục vào vùng trống để quá trình tạo key nhanh hơn.
Copy đoạn Key lại sau đó nhấn Save Private key
Vào Setting của Openshift dán Key vừa tạo vào. Bấm Save.
Mở WinSCP lên cửa sổ đăng nhập hiện ra chọn New Site
- File Protocol: SFTP
- Port: 22
- Hostname: gõ lại domain do Openshift cung cấp.
- Username chính là dãy số này:
Bấm Advanced
Bấm Authentication và mở file Key vừa lưu lúc nãy
Bấm OK > Save và bắt đầu Login.
Thư mục gốc của website sẽ ở địa chỉ này: /var/lib/openshift/[YourID]/app-root/runtime/repo
Với yourID vừa copy ở trên.
Upload file phpMyAdmin-4.4.15.2-english.zip lên, đổi tên sao cho dễ thao tác (ví dụ: php.zip)
Vào Commands > Open in PuTTY
Gõ vào dòng lệnh:
CD /var/lib/openshift/56a5d7327628e1cd0c000029/app-root/runtime/repo
Với địa chỉ thư mục gốc website của bạn
Sau đó gõ tiếp lệnh để unzip file phpmyadmin hoặc file mã nguồn wordpress (chỉ áp dụng với file nén dạng *.zip nhé)
Unzip php.zip
Sau khi unzip xong bạn có thể đổi tên tùy thích
Mở thư mục Phpmyadmin lên kéo xuống dưới tìm file config.sample.inc.php đổi tên thành config.inc.php, mở file lên ở chế độ Edit
Vào đường dẫn: /var/lib/openshift/[yourID]/.env/mysql/
Mở file OPENSHIFT_MYSQL_DB_URL
Sẽ có nội dung sau:
mysql://adminsYSn9dT:Tsm9eezpfLrJ@56a5d83a7628e193770000fc-tremocoivo.rhcloud.com:50541/
Mở qua file Config.inc.php thêm 2 đoạn này vào sau dòng 27: $i++;
$i++;
$cfg['Servers'][$i]['port'] = '50541'; // MySQL port - leave blank for default port
$cfg['Servers'][$i]['socket'] = getenv('OPENSHIFT_MYSQL_DB_SOCKET'); // Path to the socket - leave blank for default socket
Sửa dòng sau:
$cfg['Servers'][$i]['host'] = '56a5d83a7628e193770000fc-tremocoivo.rhcloud.com';
Với Port, Host copy như trong hình, lấy được từ file OPENSHIFT_MYSQL_DB_URL
Kéo xuống dưới thêm nội dung vào 2 dòng này:
$cfg['UploadDir'] = getenv('OPENSHIFT_TMP_DIR');
$cfg['SaveDir'] = getenv('OPENSHIFT_TMP_DIR');
Bấm Save để lưu lại lên Host.
Vào thử đường dẫn xem thế nào. Nếu hiện ra trang đăng nhập thì nhập User/pass của mySQL vào.
Nếu cấu hình chính xác sẽ đăng nhập thành công và vào giao diện quản trị của phpmyadmin
Đến đây đã thiết lập xong Phpmyadmin, tuy nhiên để tránh người khác truy cập và để bảo vệ tốt hơn cho database bạn cần bảo mật thư mục phpmyadmin bằng cách Tạo mật khẩu thư mục và CHMOD.
Chúng ta cần CHMOD về 600 cho các file config.inc.php và .htaccess
Click chuột phải vào file cần thay đổi permissions > chọn Properties sau đó sửa mục Octal về 0600
Để tạo mật khẩu bảo vệ thư mục bạn cần cấu hình file .htaccess và thêm file .htpasswd
Để tạo file đó bạn cần vào trang sau:
http://tools.dynamicdrive.com/password/
Tại mục Enter Usernames bạn điền tên User để đăng nhập
Tại mục Enter Corresponding Passwords bạn nhập mật khẩu (chỉ chấp nhận chữ và số)
Bạn có thể nhập nhiều user/pass bằng cách mỗi user/pass nằm trên 1 dòng.
Tại mục số 2 bạn dán đường dẫn đến thư mục chứa file .htpasswd (đường dẫn tuyệt đối copy từ WinSCP)
Sau đó nhấn Submit sẽ được chuyển đến trang kết quả.
Trong WinSCP vào thư mục phpmyadmin tạo 2 file có tên .htaccess và .htpasswd
Copy lần lượt 2 tham số vào các file tương ứng mà trang web đưa ra.
Để tăng cường bảo mật file .htaccess bạn copy như đoạn dưới
RewriteEngine On
RewriteRule ^(setup/|libraries/|nx.php) - [F,L,NC]
AuthName "Restricted Area"
AuthType Basic
AuthUserFile /var/lib/openshift/56a5d7327628e1cd0c000029/app-root/runtime/repo/xxx/.htpasswd
AuthGroupFile /dev/null
require valid-user
Nếu chính xác thì thư mục phpmyadmin sẽ hiện popup yêu cầu nhập mật khẩu. Bạn thử nhập user/pass để kiểm tra.
Vậy là xong phần cấu hình hosting. Bây giờ bạn chỉ upload source wordpress lên và cài đặt và các bạn lưu ý thông tin database chính là thông tin từ file OPENSHIFT_MYSQL_DB_URL ở trên.
mysql://adminsYSn9dT:Tsm9eezpfLrJ@56a5d83a7628e193770000fc-tremocoivo.rhcloud.com:50541/
Bạn điền như sau:
User: adminsYSn9dT
Pass: Tsm9eezpfLrJ
Database name: thuthuat
Server: 56a5d83a7628e193770000fc-tremocoivo.rhcloud.com:50541
D. ADD DOMAIN RIÊNG:
Với domain mặc định của OpenShift có vẻ không chuyên nghiệp lắm và việc add domain riêng cho OpenShift cũng có chút khó khăn so với các hosting chuyên nghiệp khác. Với việc chỉ chấp nhận đường dẫn domain dạng www.têndomain.xxx hoặc subdomain.têndomain.xxx mà không hỗ trợ nake domain dạng têndomain.com.
Bạn cần đến dịch vụ của bên thứ 3 đó là Cloudflare.com (search gg để biết thêm thông tin)
Đây là 1 dịch vụ DNS trung gian với nhiều ưu điểm nhanh, mạnh, bảo mật. Và quan trọng là giải quyết được vấn để trỏ domain của OpenShift. Có nghĩa là khi người dùng gõ tên website của bạn kiểu têndomain.xxx sẽ tự động chuyển về www.têndomain.xxx
Trước tiên bạn đăng nhập vào https://www.cloudflare.com sau đó vào DNS và thêm 2 Records như sau
Sau đó bạn qua tab Page Rules và tạo 1 rule theo hình
Vậy là xong cấu hình DNS, còn 1 bước cuối cùng là thêm Domain vào OpenShift.
Vào OpenShift ngay tại domain hiện tại nhấn Change
Và bạn add lần lượt domain của bạn với www và không có www
Vậy là xong, bây giờ bạn có thể tận hưởng thành quả của mình rồi nhé.
Mình có tạo sẵn 1 hosting với đầy đủ thông số, private key để demo, các bạn có thể lấy thông tin và đăng nhập để test nhé. Nếu có thắc mắc có thể trao đổi với mình qua fanpage https://www.facebook.com/blogkongnghe hoặc để lại comment bên dưới.
[sociallocker]
Thông tin FTP Client:
- Host: http://thuthuat-tremocoivo.rhcloud.com/
- Username: 56a5d7327628e1cd0c000029
- Private Key: http://www.hieuit.net/file/demo01-kongnghe.ppk
Thông tin Database:
Database: thuthuat User: adminsYSn9dT Password: Tsm9eezpfLrJ
[/sociallocker]
Nguồn: Tạo hosting miễn phí với OpenShift Online
0 comments:
Post a Comment