阿里云國際站大陸代理商:阿里云國際版服務(wù)器,該怎么搭建個人得網(wǎng)站?
聚搜云(m.gzjcsc123.com)是上海聚搜信息技術(shù)有限公司旗下品牌,坐落于魔都上海,服務(wù)于全球、2019年成為阿里云代理商生態(tài)合作伙伴。與阿里云代理商、騰訊云、華為云、西部數(shù)碼、美橙互聯(lián)、谷歌云、AWS亞馬遜云國際站代理商、聚搜云,長期戰(zhàn)略合作的計劃!阿里云國際站代理商專業(yè)的云服務(wù)商!
在今天的帖子中,我將向您展示我如何在阿里云上部署網(wǎng)站
首先我這面使用的是阿里云國際香港實例
為了省事,這面是通過阿里云國際站經(jīng)銷商【聚搜云】4526.cn來注冊充值的,只需要提供一個郵箱就好
下面說下具體的部署
實例上使用WordPress構(gòu)建了我的網(wǎng)站,其中包含Nginx,PHP 7.2,F(xiàn)astCGI,MariaDB和Redis緩存,以實現(xiàn)最佳性能。
在你開始之前,我假設(shè)你已經(jīng)對云、網(wǎng)絡(luò)和Linux命令行有了基本的了解。
您還需要為您的網(wǎng)站提供一個功能域名。
步驟#1:創(chuàng)建新帳戶
如果您還沒有帳戶,可以在此處注冊
。新用戶可以享受價值$ 300- $ 1200的免費試用,有效期為2個月。如果您不確定如何執(zhí)行此操作,請參閱本教程
。
設(shè)置帳戶后,您就可以部署高性能WordPress網(wǎng)站了!
步驟#2:創(chuàng)建新的ECS實例
通過輸入您的電子郵件和密碼登錄阿里云控制臺
。出于安全目的,您可能需要輸入安全代碼。
在阿里云控制臺中,單擊產(chǎn)品,然后從列表中選擇彈性計算服務(wù)。
單擊實例,然后從左上角的下拉菜單中選擇您的區(qū)域。將顯示可用區(qū)域的列表。
單擊創(chuàng)建實例。對于我的實例,我選擇了以下配置。
計費方式:包年包月
實例類型:IO 優(yōu)化
虛擬處理器: 1
內(nèi)存: 4GB
家庭:平衡型百萬4
數(shù)量: 1 單位
我選擇了一個具有 4GB 物理內(nèi)存 (RAM) 和 1 個虛擬 CPU 的 IO 優(yōu)化實例。如果您的網(wǎng)站將托管更多動態(tài)內(nèi)容,請考慮購買更高規(guī)格的實例。
現(xiàn)在,您必須為實例選擇適當?shù)挠诚?。我為我的服?wù)器選擇了一個Ubuntu 16.04映像。
鏡像類型: 公眾形象
操作系統(tǒng) (OS): Ubuntu
操作系統(tǒng)版本: 16.04 64位
啟用安全增強功能。此功能將添加一些安全功能,例如后門檢測,遠程登錄警報等。
還有其他一些配置需要考慮,我為其余的配置選擇了默認設(shè)置。
步驟#3:設(shè)置阿里云DNS
阿里云 DNS
是一項權(quán)威的高可用性和高度可擴展的域名解析和管理服務(wù)。DNS代表域名系統(tǒng),它幫助我們將IP地址映射到域名。要使用阿里云的 DNS 服務(wù),您需要更新域控制面板中的名稱服務(wù)器。名稱服務(wù)器將由阿里云提供。
在開始之前,您需要獲取實例的公有 IP。請按照以下步驟繼續(xù)操作:
登錄 ECS 管理控制臺
單擊實例
記下實例的公有 IP
登錄阿里云控制臺
從產(chǎn)品列表中單擊 CloudDNS
單擊基本數(shù)字網(wǎng)絡(luò)
點擊添加域名
輸入您的域名,然后點擊確認
將顯示幾個名稱服務(wù)器。在域的控制面板中更新它們。DNS 遷移最多可能需要 48 小時,因此您必須耐心等待!
現(xiàn)在,您必須添加兩個"A"記錄。
為第一條"A"記錄輸入以下詳細信息。
記錄類型: A
主機:@
ISP 線路:默認
值:實例的 IP 地址
TTL:10 分鐘
為其他"A"記錄輸入以下詳細信息。
記錄類型: A
主持人: *
ISP 線路:默認
值:實例的 IP 地址
TTL:10 分鐘
步驟 #4:連接到我們的實例
您可以通過 VNC 或 SSH 連接到您的實例。VNC需要高速互聯(lián)網(wǎng)連接,而SSH即使在連接速度較慢的情況下也能正常工作。所以,我更喜歡使用SSH而不是VNC。
通過 Linux / Mac
連接打開命令行并輸入以下代碼:
ssh root@your-instance-ip
鍵入 yes 并輸入 root 密碼。如果密碼正確,您將成功登錄。
通過 Windows
連接如果您使用的是 Windows 計算機,則需要使用第三方程序,例如 PuTTY。使用 PuTTY 連接到服務(wù)器。輸入實例的用戶名和密碼以登錄
步驟#5:檢查驅(qū)動程序錯誤
首次啟動實例時,最好檢查是否存在與驅(qū)動程序相關(guān)的錯誤消息和警告。在 Linux 中,dmesg 命令用于查看驅(qū)動程序消息。
英特爾 RAPL 驅(qū)動程序顯示一條錯誤消息。如果遇到相同的問題,可以通過運行以下命令安全地將驅(qū)動程序列入黑名單。
echo "blacklist intel_rapl" >> /etc/modprobe.d/blacklist.conf
內(nèi)核在下次啟動期間不會加載此驅(qū)動程序。通過鍵入 reboot 命令重新啟動服務(wù)器。
步驟#6:更新系統(tǒng)
Ubuntu 基于 Debian。APT包管理器用于所有基于Debian的發(fā)行版,包括Ubuntu。
apt update && apt full-upgrade -y
這會將所有軟件包和內(nèi)核更新到最新版本。建議在分發(fā)升級后重新啟動。
讓我們清理系統(tǒng)并刪除不再需要的所有軟件包。
apt clean -y && apt remove -y
步驟#7:設(shè)置默認時區(qū)
運行以下命令:
dpkg-reconfigure tzdata
選擇您的地理區(qū)域,然后選擇您的城市。
步驟#8:安裝Nginx
Nginx是一款高性能的Web服務(wù)器,能夠處理數(shù)千個并發(fā)連接。它是Apache Web服務(wù)器的絕佳替代品。
在安裝之前,讓我們安裝所需的軟件包:
apt install software-properties-common zip sendmail vim nano -y
您將安裝最新版本的Nginx,這在官方Ubuntu存儲庫中不可用。
添加 Nginx 存儲庫:
echo "deb Index of /packages/ubuntu/ xenial nginx" >> /etc/apt/sources.list.d/nginx.list
添加Nginx的簽名密鑰:
curl -O https://nginx.org/keys/nginx_signing.key && apt-key add ./nginx_signing.key
更新軟件包列表:
apt update
安裝NGINX:
apt install nginx -y
驗證Nginx是否安裝成功:
nginx -v
刪除默認配置:
刪除默認網(wǎng)頁:
rm /var/www/html/index.nginx-debian.html
在啟動期間啟動 Nginx:
systemctl enable nginx
步驟#9:安裝PHP-FPM
添加 PHP 7.2 PPA:
add-apt-repository ppa:ondrej/php -y
更新軟件包列表:
apt update
安裝 PHP:
apt install php7.2-fpm -y
驗證 PHP 是否已成功安裝:
php -v
安裝所需的 PHP 擴展:
apt install php7.2-redis php7.2-imap php7.2-xmlrpc php7.2-mysqlnd php7.2-imagick php7.2-gd php7.2-mbstring php7.2-common php7.2-zip php7.2-curl -y
在啟動期間啟動 PHP:
systemctl enable php7.2-fpm
步驟#10:安裝MariaDB
添加 MariaDB PPA:
add-apt-repository 'deb [arch=amd64,i386,ppc64el] http://mirror.sax.uk.as61049.net/mariadb/repo/10.1/ubuntu xenial main' -y
更新軟件包列表:
apt update
安裝 MariaDB 服務(wù)器:
apt install mariadb-server -y
在安裝過程中,系統(tǒng)將提示您輸入 root 密碼。重新輸入相同的密碼并按Enter鍵。
請注意,默認安裝不安全。您可以通過運行以下命令來保護安裝:
mysql_secure_installation
系統(tǒng)將要求您輸入您的 root 密碼。然后,系統(tǒng)將提示您一些問題。我使用了以下設(shè)置(按Y表示是,按N表示否):
更改根密碼?不
刪除匿名用戶?是的
是否允許遠程根登錄?是的
刪除測試數(shù)據(jù)庫并對其進行訪問?是的
現(xiàn)在重新加載權(quán)限表?是的
在啟動期間啟動 MariaDB:
systemctl enable mysql
步驟#11:創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)庫用戶
以 root 用戶身份登錄:
mysql -u root -p
輸入您的根密碼。您將登錄到 MariaDB 控制臺。
創(chuàng)建新用戶:
CREATE USER "example-user"@"localhost" IDENTIFIED BY "password";
將"示例用戶"和"密碼"替換為您自己的用戶名和密碼。
創(chuàng)建一個新數(shù)據(jù)庫:
CREATE DATABASE wordpress;
向新創(chuàng)建的用戶授予所有權(quán)限:
GRANT ALL PRIVILEGES ON . to "example-user"@"localhost";
重新加載權(quán)限表:
FLUSH PRIVILEGES;
退出控制臺:
EXIT;
步驟#12:配置Nginx
打開Nginx配置文件:
nano /etc/nginx/nginx.conf
不要忘記將 example.com 替換為您的實際域名。
粘貼以下內(nèi)容:
1. user www-data;
2. worker_processes auto;
3. error_log /var/log/nginx/error.log warn;
4. pid /var/run/nginx.pid;
5. events {
6. worker_connections 10240;
7. multi_accept on;
8. use epoll;
9. }
10. http {
11. include /etc/nginx/mime.types;
12. default_type application/octet-stream;
13. log_format main '$remote_addr - $remote_user [$time_local] "$request" '
14. '$status $body_bytes_sent "$http_referer" '
15. '"$http_user_agent" "$http_x_forwarded_for"';
16. access_log /var/log/nginx/access.log main;
17. fastcgi_cache_path /var/www/cache levels=1:2 keys_zone=example.com:200m inactive=60m;
18. fastcgi_cache_key "$scheme$request_method$host$request_uri";
19. sendfile on;
20. tcp_nopush on;
21. tcp_nodelay on;
22. types_hash_max_size 2048;
23. server_tokens off;
24. keepalive_timeout 15;
25. client_max_body_size 512M;
26. add_header X-Frame-Options SAMEORIGIN;
27. add_header X-Content-Type-Options nosniff;
28. add_header X-XSS-Protection "1; mode=block";
29. add_header Referrer-Policy "strict-origin-when-crOSS-origin";
30. add_header X-FastCGI-Cache $upstream_cache_status;
31. gzip_vary on;
32. gzip_comp_level 5;
33. gzip_min_length 1024;
34. gzip_proxied any;
35. gzip_buffers 16 8k;
36. gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript text/x-js;
37. limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;
38. limit_req_status 444;
39. gzip on;
40. include /etc/nginx/conf.d/*.conf;
41. include /etc/nginx/sites-enabled/*;
42. server {
43. listen 80 default_server;
44. listen [::]:80 default_server;
45. server_name _;
46. return 444;
47. }
48. }
這是我們的全球Nginx配置。要退出nano,請按Ctrl + O,然后按Enter鍵。
您必須為您的域創(chuàng)建另一個:
nano /etc/nginx/sites-enabled/example.com
粘貼以下內(nèi)容:
1. server {
2. listen 80;
3. listen [::]:80;
4. server_name example.com www.example.com;
5. root /var/www/html;
6. index index.php;
7. set $skip_cache 0;
8. if ($request_method = POST) {
9. set $skip_cache 1;
10. }
11. if ($query_string != "") {
12. set $skip_cache 1;
13. }
14. if ($request_uri ~* "/wp-admin/|/xmlrpc.php|wp-.*.php|/feed/|index.php|sitemap(_index)?.xml") {
15. set $skip_cache 1;
16. }
17. if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in") {
18. set $skip_cache 1;
19. }
20. if ($request_uri ~* "/cart/*$|/checkout/*$|/my-account/*$") {
21. set $skip_cache 1;
22. }
23. location / {
24. try_files $uri $uri/ /index.php?$args;
25. }
26. location ~ \.php$ {
27. try_files $uri =404;
28. fastcgi_split_path_info ^(.+\.php)(/.+)$;
29. fastcgi_pass unix:/run/php/php7.2-fpm.sock;
30. fastcgi_index index.php;
31. fastcgi_cache example.com;
32. include fastcgi.conf;
33. fastcgi_cache_bypass $skip_cache;
34. fastcgi_no_cache $skip_cache;
35. fastcgi_cache_valid 10m;
36. }
37. location ~* \.(jpg|jpeg|gif|png)$ {
38. expires 365d;
39. }
40. location ~* \.(pdf|css|ico|js|swf)$ {
41. expires 10d;
42. }
43. }
測試 Nginx 配置:
nginx -t
如果測試成功,請通過鍵入以下內(nèi)容重新啟動nginx:
systemctl restart nginx
步驟 #13:為對象緩存配置 Redis 服務(wù)器
安裝 Redis 服務(wù)器:
apt install redis-server -y
在引導(dǎo)期間啟動 Redis 服務(wù)器:
systemctl enable redis-server
配置 Redis 服務(wù)器的內(nèi)存限制:
echo "maxmemory 256mb" >> /etc/redis/redis.conf
重新啟動 Redis 服務(wù)器:
systemctl restart redis-server
重新啟動 PHP:
systemctl restart php7.2-fpm
步驟#14:配置PHP
打開 PHP 7.2 配置文件:
nano /etc/php/7.2/fpm/php.ini
更改以下值:
步驟#15:通過讓我們加密安裝免費的SSL證書
添加讓我們加密 PPA:
add-apt-repository ppa:certbot/certbot
更新軟件包列表 :
apt update
Install certbot for Nginx:
apt-get install python-certbot-nginx -y
獲取 SSL:
certbot --nginx -d example.com -d www.example.com
按2并按回車鍵。
您將獲得SSL證書,certbot將自動為您配置它。
請記住,SSL 證書將在 90 天后過期。運行以下命令以手動續(xù)訂證書:
certbot renew
步驟#16:安裝WordPress
移動到 Nginx 根目錄:
cd /var/www/html
下載WordPress:
wget wget https://wordpress.org/latest.zip
解壓縮包
unzip latest.zip
將所有文件移動到Nginx的根目錄:
mv wordpress/* ./ && rmdir wordpress
創(chuàng)建用于存儲緩存的目錄:
mkdir -p /var/www/cache
更改Nginx根目錄的所有權(quán):
chown -R www-data:www-data /var/www/
現(xiàn)在,在瀏覽器的地址欄中鍵入網(wǎng)站的URL。
按照屏幕上的說明完成安裝。您需要輸入步驟 10 中的數(shù)據(jù)庫詳細信息。
另外,不要忘記安裝Nginx緩存和Redis緩存插件。
結(jié)論
我希望你喜歡這個指南。這就是我如何使用WordPress和彈性計算服務(wù)(ECS)
實例在阿里云上部署我的博客。如果您遇到任何問題,請聯(lián)系【聚搜云】
