Trong bài trước mình đã hướng dẫn chi tiết cách để cài đặt server DigitalOcean dễ dàng mà không cần nhiều kiến thức kỹ thuật. Tuy nhiên, điểm bất lợi là server chỉ chạy được một domain mà thôi. Trong bài viết này, mình sẽ hướng dẫn chi tiết cách để add thêm domain giúp server DigitalOcean có thể chạy được nhiều website khác nhau.
Add thêm domain vào server DigitalOcean
Lưu ý:
- Những chỗ có màu đỏ cần phải thay thế bằng thông tin của bạn.
- Các thao tác dòng lệnh, bạn chỉ cần copy rồi nhấn chuột phải là được.
1. Tạo snapshot sao lưu server đề phòng có vấn đề thì restore lại
– Tắt server: vào Power/Power Off
– Tạo bản sao lưu: Snapshots/Take a Snapshot
– Khởi động server trong Power
2. Cài đặt cho domain đang sử dụng (ngoncai.com)
– Copy cài đặt mặc định bằng cách dùng lệnh sau trong cửa sổ Terminal Console
sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/ngoncai.com
– Chỉnh sửa config:
sudo nano /etc/apache2/sites-available/ngoncai.com
+ Add thêm ServerName, ServerAlias
+ Chỉnh sửa lại DocumentRoot giống như trên
+ Chuyển AllowOverride từ None thành All để sử dụng permalink
+ Lưu config bằng cách nhấn Ctrl+O (WriteOut), Enter và Ctrl+X để về màn hình Terminal
– Active config
sudo a2ensite ngoncai.com
– Khởi động lại Apache
sudo service apache2 restart
– Giờ bạn hãy check lại xem domain chính hiện tại đã truy cập đường bình thường hay không, permalink có hoạt động không. Nếu tất cả không có vấn đề gì thì move sang bước 3.
3. Add thêm domain mới (digitalocean.chiasecoupon.com)
– Trỏ domain mới đến IP server DigitalOcean
– Dùng SFTP tạo folder digitalocean.chiasecoupon.com và public_html trong /home (dùng để chứa nội dung site mới)
Lúc này sẽ có 2 folder là:
- /home/digitalocean.chiasecoupon.com
- /home/digitalocean.chiasecoupon.com/public_html
– Copy cài đặt mặc định
sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/digitalocean.chiasecoupon.com
– Chỉnh sửa config
sudo nano /etc/apache2/sites-available/digitalocean.chiasecoupon.com
+ Tương tự trên, mình thêm ServerName, ServerAlias, chỉnh lại DocumentRoot và AllowOverride
+ Lưu config bằng cách nhấn Ctrl+O (WriteOut), Enter và Ctrl+X để về màn hình Terminal
– Active config
sudo a2ensite digitalocean.chiasecoupon.com
– Khởi động lại Apache
sudo service apache2 restart
– Mọi thứ đã xong, giờ bạn đợi domain nhận IP mới rồi truy cập vào là ok. Bạn có thể test 2 domain mình add thành công vào server là http://ngoncai.com và http://digitalocean.chiasecoupon.com
– Khi cài đặt website mới, bạn có thể sử dụng cùng thông tin database như của WordPress cho đơn giản.
4. Add thêm các domain khác vào server
Bạn chỉ cần lặp lại bước 3.
Sử dụng trình quản lý file Dolphin.php để có thể unzip trên server
Khi cài đặt một site nào đó mình toàn nén toàn bộ code trên local rồi up file zip lên, sử dụng cPanel để unzip. Nó tiết kiệm thời gian rất nhiều so với việc up từng file lên một.
Để cho đơn giản mình sẽ không cài những bộ quản lý cồng kềnh như cPanel, kloxo.. mà sẽ dùng 1 code file manager php đơn giản có chức năng zip + unzip rất tốt là Dolphin.php. Khi nào cần mới chạy nên sẽ không tốn nhiều RAM.
Bạn Dolphin.php-0.1-RC1 về, giải nén ra rồi upload lên website và chạy. Account đăng nhập mặc định là login, pass là password.
Có thể bạn cần CHMOD folder về 777 hoặc dùng winrar để tạo file nén ZIP thì mới có thể thực hiện các thao tác nén + giải nén được (). Sau khi cài đặt xong website thì CHMOD lại như ban đầu.
Một số thao tác cài đặt server khác
Ngoài những cái trên, mình bổ sung thêm một số thao tác khác bạn nên thực hiện cho server chạy ổn định như:
1. Sửa lỗi gửi mail chậm khi dùng server DigitalOcean
Mặc định khi chạy gói cài đặt WordPress thì bạn đã có thể dùng hàm sendmail để gửi email bằng server rồi. Tuy nhiên tốc độ gửi mail rất chậm. Với thao tác nhỏ bên dưới bạn sẽ cải thiện được tốc độ rất nhiều
+ Dùng Terminal Console chạy dòng lệnh:
nano /etc/hosts
+ Thêm domain host của bạn vào, như của mình là ngoncai.com
+ Lưu config bằng cách nhấn Ctrl+O (WriteOut), Enter và Ctrl+X để về màn hình Terminal
+ Khởi động lại Apache
sudo service apache2 restart
+ Test lại hàm gửi email xem, tốc độ giờ cực kì nhanh nhé.
2. Cài đặt DNS sử dụng của DigitalOcean
DO cho phép bạn trỏ domain đến và cài đặt các record như những NS thông thường khác, xem hướng dẫn tại đây.
3. Tạo thêm database và add user mysql
Vậy là xong toàn bộ tutorial cài đặt server DigitalOcean căn bản. Nếu bạn không cài được hoặc cần support hướng dẫn bất cứ cái gì liên quan, hãy post comment bên dưới nhé, mình sẽ cố gắng tìm câu trả lời.
Truy cập vào DigitalOcean tại đây.
Chúc bạn thành công!
Cảm ơn bạn đã chia sẻ nha
Chào Bạn,
Cho mình hỏi Bạn vấn đề này nhé : Server mình mua trên DigitalOcean , domain mình mua của Mắt Bão , hiện tại web của mình đã cấu hình chạy ok , đã cấp được email theo tên của domain, nhưng mình lại không tìm được thông tin của mail server : Port, Incoming , Outgoing .. .
Nhờ bạn tư vấn giúp mình vấn đề này vì mình không biết phải vào đâu hay cài tool gì để xem và quản lý.
Thanks!
Mail server mặc định ko cài cùng VPS, nếu muốn sử dụng thì bạn cần cài đặt thêm vào.
Ngoài ra có thể tham khảo thêm một số nhà cung cấp mail service như mandrill, mailgun nữa bạn
Hi bạn,
Bạn có thể hướng dẫn mình cách setup được không, hiện tại mình vẫn chưa setup được mail server trên VPS.
Thanks
Bạn muốn tự cài đặt mail server hay sử dụng luôn những dịch vụ sẵn có?
Nếu tự cài thì bạn tham khảo hướng dẫn này: http://www.opends.info/2013/10/setup-zimbra-mail-server.html
Hi Bạn,
Cám ơn Bạn đã reply , nhưng hiện tại mình đã cấp được email và dùng webmail để gởi nhận mail bình thường rồi bạn.
Cái mình muốn là gởi tự động email bằng code , để làm được điều này thì mình cần phải biết được các thông tin về Port, Incoming , Outgoing của mail server .
Nhờ bạn tư vấn giúp mình vấn đề này.
Thanks!
cái dolphin cài và sử dụng ra sao đó bạn hướng dẫn mình chút được không
Bạn down về giải nén rồi up lên là chạy thôi, ko cần cài đặt gì cả
Mình tải lên rồi nhưng khi truy cập bằng browser thì ra trang trắng. Không biết có yêu cầu gì đặc biệt nữa không? Mình dùng Sentora CP trên VPS của Vultr, upload dolphin vào thư mục /dolphin của domain bằng FTP.
Nếu lỗi trắng trang bạn cần đọc thêm thông tin trong file error_log để xem nguyên nhân ở đâu thì mới xử lý được.
Luận ơi cái phần này khó quá khi mình điền cái “sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/ngoncai.com” Nó hiện thông báo là cp: cannot star …sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/ngoncai.com. No Such file or directory
Có video thì tốt quá giúp mình với.
vào etc/my.cnf để lấy pass của root mysql
Mình biết nó rồi nhưng user wordpress ko tạo được thêm database,
MÌnh đã reset được pass root nhưng nó vẫn chưa cho tạo thêm db
Báo No Privileges
Your MySQL root password is in /root/.my.cnf (https://www.digitalocean.com/community/articles/one-click-install-wordpress-on-ubuntu-12-10-with-digitalocean)
của mysql mà, mình ko thấy chỗ nào của mysql cả,
mình cài mặc định wordpress theo hướng dẫn và giờ cần add thêm db
À nhầm, bạn xem trong file wp-config.php ấy, mình có ghi trong bài viết này rồi: https://canhme.com/kinh-nghiem/huong-dan-cai-dat-server-digitalocean-mien-phi-2-thang/
Chào Luân Trần!
Làm sao mình có thể biết được mật khẩu root của mysql? Hướng dẫn cho mình nhé!
Trong email DigitalOcean có gửi cho bạn đó.
Mình đã cài Dolphin nhưng sao ko unzip đc
Bạn dùng lại phiên bản Dolphin.php-0.1-RC1 mình mới cập nhật trong bài viết để dùng xem sao nhé, mình đã test dùng bình thường
bạn có thể hướng dẫn mình thêm subdomain vào được ko?
vd: mình muốn thêm music.hoangmic.com vào nữa thì làm sao?
Add subdomain giống hệt domain nhé, như trong bài viết này mình add subdomain đó chứ bạn
bạn ơi cái total cache cài xong nó cứ lưu cache page lại, truy cập vào trang chủ ngày hôm nay thì nó hiện bài của ngày hôm qua thôi, muốn thấy bài viết mới của ngày hôm nay thì phải xóa cache trình duyệt, mà web của mình thì ngày nào cũng post bài, người đọc ngày nào cũng phải xóa khiến họ thấy rất phiền, có cách nào chỉnh cho nó đừng lưu cache page để người ta vào đọc liền thấy bài mới ko?
tài khoản admin và thành viên thì không bị thế.
Ban su dung plugin WP Super Cache va lua chon cache rebuid (tu dong xoa cache khi viet bai moi) se khong bi tinh trang nhu hien gio.
Phần gửi email có làm theo gợi ý của Luân nhưng khách họ comment xong thì mình vẫn không nhận được email nữa.
Site của Luân lúc trước nhận email bình thường không (tại giờ truy cập thấy server error rồi).
Tức là email không gửi đi được à bạn? Nếu bạn dùng WP thì có thể phải dùng thêm plugin WP Mail SMTP để cài đặt mail server nữa.
Mình đang cài ISPConfig cho server nên bị lỗi, chưa tìm cách fix được
OK Luân, để mình thử xem sao.
Quá đen cho đội bán than
Enabling backups will automatically create a snapshot of your Droplet every few days.
Please note: We will begin charging for automated backups starting on July 1st, 2013. You will receive your first bill for enabled backups on August 1st, 2013. Pricing is set at 20% of the Droplet’s monthly cost (e.g. It will cost $1/mo. to enable backups for a 512MB Droplet).
https://www.digitalocean.com/community/articles/how-to-set-up-multiple-wordpress-sites-on-a-single-ubuntu-vps
Bài này khá đầy đủ đây
Second Site của bác email ngon lành không bác? Bên em vẫn loay hoay mãi .
Hay. Phải công nhận Luân viết bài rất có trách nhiệm. Cảm ơn bạn nhiều nhé. Mình sẽ purchase để ủng hộ.
Hì, thank you bạn
Tiến thấy có cái lỗi kỳ kỳ. Ví dụ:
tamsao.com và http://www.tamsao.com đều vào ok
nhưng tamsao.com/hello-world/ được, còn tamsao.com/hello-world/ thì không vào được.
Domain mình bên Godaddy, không biết Luân có redirect domain nào bên Godaddy chưa, có thể show mình record table được không ạ? Còn DNS bên DO có cần setting thì đặc biệt không bạn?
Thank you.
Mình không hiểu rõ bạn muốn hỏi gì vì cả 2 link vào được bình thường (http://tamsao.com/hello-world/ vs http://www.tamsao.com/hello-world/). DNS bên DO mình không dùng nên chỉ đưa ra link hướng dẫn kia mọi người làm theo thôi
Sorry, mình viết thiếu “WWW’.
Mình fix được rồi, thêm CNAME * @ vào là được.
mình cũng bị giống bạn. chỉ mình cách fix vs
À và làm sao add được database mới vào phpmyadmin cho domain mới vậy Luân? Ví dụ trên chỉ dùng lại cái DB và code của domain chính nên chưa biết làm DB mới thế nào.
Hướng dẫn thêm Database và add user mysql bạn xem ở đây nhé: https://www.digitalocean.com/community/articles/how-to-create-a-new-user-and-grant-permissions-in-mysql. Do nó hơi advanced chút nên mình không viết bài hướng dẫn
OK, cảm ơn Luân, mình sẽ vọc xem sao
Hi Luân. Sau khi tạo thêm site thì upload theme bị lỗi:
“Unable to create directory wp-content/uploads/2013/08. Is its parent directory writable by the server?”
Thử chmod 777 / chown xong thì nó lại báo
“To perform the requested action, WordPress needs to access your web server. Please enter your FTP credentials to proceed. If you do not remember your credentials, you should contact your web host.”
Nói chung là server hiện tại không cho mình upload file lên từ dashboard của WP.
Luân có cách nào không?
Đây là vấn đề ngớ ngẩn của WP nhiều người gặp phải rồi, trước mình có tìm cách và giải quyết được nhưng lâu rồi ko nhớ rõ. Bạn thử tham khảo trên mạng xem, ví dụ bài này
Cái này không hẳn là do WP. Nói chung là ngay cả upload image, edit file đều không được do không write xuống server được.
Mấy site của Luân ở DO đều upload good cả chứ?
Site thứ 2 mình tự up code lên thì ko sao, site mặc định DO tạo cho thì đúng là bị lỗi thật. Mình đã sửa được bằng cách tạo folder uploads trong wp-content rồi CHMOD uploads thành 777
Mình sài mặc định của DO có sao đâu? :v
Hoặc dùng cái này nếu sài NGINX
chown -R nginx:nginx /home/website-nào-đó/public_html
Bạn ơi!
Cho mình hỏi?
Mình cài wordpress trên digitalocean.
Nhưng khi mình import file xml vào wordpress thì nó chỉ cho max 2mb
Mình muốn tăng dung lượng upload để import file > 2MB trong php.ini. Nhưng mình không tìm thấy file php.ini?
Bạn có thể chỉ cho mình, nó được để ở đâu trên server của digitalocean k bạn?
Thanks
Trong cửa sổ Terminal bạn nhập: sudo nano /etc/php5/apache2/php.ini, nhấn Ctrl+W để tìm dòng upload_max_filesize rồi thay giá trị mặc định 2M. Save lại bằng cách Ctrl+O, Enter rồi Ctrl+X. Cuối cùng khởi động lại Apache bằng lệnh: sudo service apache2 restart
Thanks!
Mình quên bước restart apache2 nên k đc?
Giờ thì oke rồi!
Cho mình hỏi là làm sao để chuyển cái này như 1 máy tính được nhỉ ?
Điều khiển bằng remove desktop trên win ?
Hình như remote desktop dành cho server windows nhé, còn đây là Linux
Bạn dùng putty nhé. hoặc cài đặt webmin để điều khiển trên trình duyệt
Đang bị dính cái này Verify Your Account lol :v
Ngon hơn con host tại godady ở Sing nhiều :v
Làm theo cái này dc
http://community.linuxmint.com/tutorial/view/853
Okie bạn. Site chạy ngon ko?