AWS EC2免費(fèi)主機(jī)如何安裝WordPress

1. 如何開通AWS免費(fèi)套餐

注冊(cè)AWS帳號(hào),綁定支持Visa的 信用卡后就可以免費(fèi)使用一年免費(fèi)套餐版的亞馬遜云服務(wù)了。

2. 配置EC2主機(jī)

設(shè)置AMI有限權(quán)限用戶(可選)

選擇機(jī)房地區(qū),北美,東京均可

設(shè)置訪問(wèn)密鑰,保存本地,便于用SSH軟件訪問(wèn)

選擇主機(jī),建議默認(rèn)主機(jī),AWS Linux AMI 免費(fèi)版,根據(jù)提示進(jìn)入下一步

設(shè)置安全組,出入站規(guī)則

3. 配置LAMP服務(wù)器環(huán)境

用PuTTy 和本地私鑰訪問(wèn)主機(jī),默認(rèn)用戶名為ec2-user@你的AWS服務(wù)器DNS, 連接成功后就可以配置環(huán)境了。

3.1.1 安裝服務(wù)器依賴軟件

首先,更新所有軟件:

sudo yum update -y

使用 yum install 命令可同時(shí)安裝Apache MySQL PHP 等軟件包和所有相關(guān)依賴項(xiàng)

sudo yum install -y httpd24 php70 mysql56-server php70-mysqlnd

啟動(dòng) Apache Web 服務(wù)器

sudo service httpd start

使用 chkconfig 命令將 Apache Web 服務(wù)器配置為在每次系統(tǒng)啟動(dòng)時(shí)啟動(dòng)

sudo chkconfig httpd on

測(cè)試Web 服務(wù)器:在 Web 瀏覽器中,鍵入AWS實(shí)例的公有 DNS 地址 (或公有 IP 地址),應(yīng)該可以

看到 Apache 測(cè)試頁(yè)面。

3.1.2 為Apache 設(shè)置讀寫網(wǎng)站目錄權(quán)限

設(shè)置文件權(quán)限

1. 將您的用戶 (這里指 ec2-user) 添加到 apache 組。

[ec2-user ~]$ sudo usermod -a -G apache ec2-user

Important!

您必須先退出,再重新登錄,然后才能接受新組。您可以使用 exit 命令,也可以關(guān)閉終端窗

口。

2. 先退出,再重新登錄,然后驗(yàn)證您是否為 apache 組的成員。

[ec2-user ~]$ exit

b. 要驗(yàn)證您是否為 apache 組的成員,請(qǐng)重新連接到實(shí)例,然后運(yùn)行以下命令:

[ec2-user ~]$ groups

會(huì)出現(xiàn) ec2-user wheel apache

3. 將 /var/www 及其內(nèi)容的組所有權(quán)更改到 apache 組。

[ec2-user ~]$ sudo chown -R ec2-user:apache /var/www

4. 要添加組寫入權(quán)限以及設(shè)置未來(lái)子目錄上的組 ID,請(qǐng)更改 /var/www 及其子目錄的目錄權(quán)限。

[ec2-user ~]$ sudo chmod 2775 /var/www

[ec2-user ~]$ find /var/www -type d -exec sudo chmod 2775 {} \;

5. 要添加組寫入權(quán)限,請(qǐng)遞歸地更改 /var/www 及其子目錄的文件權(quán)限:

[ec2-user ~]$ find /var/www -type f -exec sudo chmod 0664 {} \;

(可選)如果您的服務(wù)器已安裝并運(yùn)行,且文件權(quán)限設(shè)置正確,則您的 ec2-user 賬戶應(yīng)該能夠在 /var/www/html 目錄 (可從 Internet 訪問(wèn)) 中創(chuàng)建一個(gè) PHP 文件。


1. 在 Apache 文檔根目錄中創(chuàng)建一個(gè) PHP 文件。

echo "" > /var/www/html/phpinfo.php

嘗試運(yùn)行此命令時(shí),如果出現(xiàn)“Permission denied (權(quán)限被拒絕)”錯(cuò)誤,請(qǐng)嘗試先注銷,再重新登錄。

2. 在 Web 瀏覽器中,鍵入您剛剛創(chuàng)建的文件的 URL。此 URL 是實(shí)例的公用 DNS 地址,后接正斜杠和文

件名。例如:

http://my.public.dns.amazonaws.com/phpinfo.php

會(huì)出現(xiàn):

3.1.3 MySQL 配置

保障 MySQL 服務(wù)器的安全

MySQL 服務(wù)器的默認(rèn)安裝提供有多種功能,這些功能對(duì)于測(cè)試和開發(fā)都很有幫助,但對(duì)于產(chǎn)品服務(wù)器,應(yīng)

禁用或刪除這些功能。mysql_secure_installation 命令可引導(dǎo)您設(shè)置根密碼并刪除安裝中的不安全功能。即

使您不打算使用 MySQL 服務(wù)器,我們也建議執(zhí)行此步驟。

1. 啟動(dòng) MySQL 服務(wù)器。

[ec2-user ~]$ sudo service mysqld start

Initializing MySQL database:

...

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !

...

Starting mysqld: [ OK ]

2. 運(yùn)行 mysql_secure_installation。

[ec2-user ~]$ sudo mysql_secure_installation

a. 在提示時(shí),鍵入根賬戶的密碼。

i. 鍵入當(dāng)前根密碼。默認(rèn)情況下,根賬戶沒(méi)有設(shè)置密碼。按 Enter。

ii. 鍵入 Y 設(shè)置密碼,然后鍵入兩次安全密碼。有關(guān)創(chuàng)建安全密碼的更多信息,請(qǐng)參 http://

www.pctools.com/guides/password/。

設(shè)置 MySQL 根密碼僅是保護(hù)數(shù)據(jù)庫(kù)的最基本措施。在構(gòu)建或安裝數(shù)據(jù)庫(kù)驅(qū)動(dòng)的應(yīng)

用程序時(shí),通??梢詾樵搼?yīng)用程序創(chuàng)建數(shù)據(jù)庫(kù)服務(wù)用戶,并避免使用根賬戶執(zhí)行除

數(shù)據(jù)庫(kù)管理以外的操作。

b. 鍵入 Y 刪除匿名用戶賬戶。

c. 鍵入 Y 禁用遠(yuǎn)程根登錄。

d. 鍵入 Y 刪除測(cè)試數(shù)據(jù)庫(kù)。

e. 鍵入 Y 重新加載權(quán)限表并保存您的更改。

3.2 安裝PHP管理面板

前往 https://www.phpmyadmin.net/downloads/ 下載最新的phpMyAdmin壓縮包并上傳到網(wǎng)站文件目錄/var/www/html/。

提取該軟件包并將生成的目錄改為更容易管理的名稱。

[ec2-user html]$ tar -xvzf phpMyAdmin-latest-all-languages.tar.gz

[ec2-user html]$ mv phpMyAdmin-4.7.4-all-languages phpMyAdmin

在瀏覽器中,鍵入 phpMyAdmin 安裝的 URL,例如:

http://my.public.dns.amazonaws.com/phpMyAdmin

應(yīng)該會(huì)看到 phpMyAdmin 登錄頁(yè)面:


3.3 如何對(duì)LAMP 環(huán)境進(jìn)行升降級(jí)操作(可選)

經(jīng)過(guò)AWS良好測(cè)試,需要以下核心 LAMP 程序包:

httpd24

php56

mysql55-server

php56-mysqlnd

如果你已按照本教程開頭的建議安裝了最新的軟件包,必須首先卸載如下這些軟件包和其他依賴項(xiàng):

[ec2-user ~]$ sudo yum remove -y httpd24 php70 mysql56-server php70-mysqlnd perl-DBDMySQL56

其次,安裝替代環(huán)境:

[ec2-user ~]$ sudo yum install -y httpd24 php56 mysql55-server php56-mysqlnd

如果你以后決定升級(jí)到建議的環(huán)境,必須先刪除自定義軟件包和依賴項(xiàng):

[ec2-user ~]$ sudo yum remove -y httpd24 php56 mysql55-server php56-mysqlnd perl-DBDMy

再安裝你需要的LAMP軟件包

4. 設(shè)置Wordpress MySQL數(shù)據(jù)庫(kù), 安裝wordpress

4.1 創(chuàng)建 MySQL 用戶和數(shù)據(jù)庫(kù)以安裝 WordPress

安裝 WordPress 需要存儲(chǔ)信息,為自己的博客創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),并創(chuàng)建一個(gè)有權(quán)讀取該數(shù)據(jù)庫(kù)的信息并將信息保存到該數(shù)據(jù)庫(kù)的用戶。

4.1.1 啟動(dòng) MySQL 服務(wù)器。

[ec2-user ~]$ sudo service mysqld start

4.1.2. 以 root 用戶身份登錄到 MySQL 服務(wù)器。在系統(tǒng)提示時(shí)輸入您的 MySQL root 密碼,這可能與你的

root 系統(tǒng)密碼不同,如果你尚未對(duì) MySQL 服務(wù)器加密,它就是空的。

Important!

如果你尚未對(duì) MySQL 服務(wù)器加密,則必須執(zhí)行這項(xiàng)操作

MySQL 服務(wù)器的安全

[ec2-user ~]$ mysql -u root -p

Enter password:

4.1.3. 為MySQL 數(shù)據(jù)庫(kù)創(chuàng)建用戶和密碼。安裝 WordPress 的過(guò)程將使用這些值與您的 MySQL 數(shù)據(jù)庫(kù)通

信。輸入以下命令,以替換唯一的用戶名和密碼。

mysql> CREATE USER 'wordpress-user'@'localhost' IDENTIFIED BY 'your_strong_password';

Query OK, 0 rows affected (0.00 sec)

4.1.4. 創(chuàng)建數(shù)據(jù)庫(kù)。為數(shù)據(jù)庫(kù)提供一個(gè)有意義的描述性名稱,例如

wordpress-db

mysql> CREATE DATABASE `wordpress-db`;

Query OK, 1 row affected (0.01 sec)

4.1.5. 對(duì)之前創(chuàng)建的 WordPress 用戶授予數(shù)據(jù)庫(kù)的完全訪問(wèn)權(quán)限。

mysql> GRANT ALL PRIVILEGES ON `wordpress-db`.* TO "wordpress-user"@"localhost";

Query OK, 0 rows affected (0.00 sec)

4.1.6. 刷新 MySQL 權(quán)限以接受所有更改。

mysql> FLUSH PRIVILEGES;

Query OK, 0 rows affected (0.01 sec)

4.1.7. 退出 mysql 客戶端。

mysql> exit

4.2 安裝wordpress,?

先進(jìn)入網(wǎng)站根目錄

cd /var/www/html/??

4.2.1下載 WordPress多語(yǔ)言版

wget https://wordpress.org/latest.tar.gz??

中文版下載

wget https://cn.wordpress.org/wordpress-4.9.1-zh_CN.tar.gz

解壓 WordPress

tar -xzf latest.tar.gz

tar -xzf?wordpress-4.9.1-zh_CN.tar.gz

移動(dòng) WordPress文件到網(wǎng)站根目錄下

解壓完畢后,可以用 Xftp 進(jìn)入文件夾把 wordpress 文件夾下的所有文件向上移動(dòng)到?網(wǎng)站目錄 件夾下。然后把其他多余文件下刪除。如果你對(duì)命令行熟悉,也可以用 MV 命令來(lái)做。

mv wordpress/* .

4.2.2 確保網(wǎng)站域名已經(jīng)正確解析

起碼做了兩個(gè) A 記錄。www 和 @ 的 A 記錄。

兩條A記錄“記錄值”都為你的 VPS IP 地址,“記錄名”分別為 www 和 @。

4.2.3 創(chuàng)建和編輯 wp-config.php 文件(也可以安裝時(shí)再配置)

WordPress 安裝文件夾有名為 wp-config-sample.php 的示例配置文件。

將 wp-config-sample.php 文件復(fù)制為一個(gè)名為 wp-config.php 的文件。這樣做會(huì)創(chuàng)建新的配置文件并將原先的示例配置文件原樣保留作為備份。

cd wordpress/

cp wp-config-sample.php wp-config.php

使用 vim 來(lái)編輯 文件,然后輸入安裝的值.

vi wp-config.php

查找 DB_NAME 的行并將 database_name_here 改為 創(chuàng)建 MySQL中創(chuàng)建的數(shù)據(jù)庫(kù)名稱。

define('DB_NAME', 'xxxxxxx');

查找 DB_USER 的行并將 username_here 改為在 創(chuàng)建 MySQL? 中創(chuàng)建的數(shù)據(jù)庫(kù)用戶。

define('DB_USER', 'xxxxxxx');

查找 DB_PASSWORD 的行并將 password_here 改為 創(chuàng)建 MySQL 中創(chuàng)建的強(qiáng)密碼。

define('DB_PASSWORD', 'your_strong_password');


4.2.4 允許 WordPress 使用 permalink

WordPress permalink 需要使用 Apache .htaccess 文件才能正常工作,但默認(rèn)情況下這些文件在 Amazon

Linux 上處于禁用狀態(tài)。使用此過(guò)程可允許 Apache 文檔根目錄中的所有覆蓋。

1. 使用常用的文本編輯器 (如httpd.confnano 或 vim) 打開 文件。nano 對(duì)于初學(xué)者來(lái)說(shuō)比較容易使用,當(dāng)然你也可以使用Vim 編輯器。

[ec2-user wordpress]$ sudo vim /etc/httpd/conf/httpd.conf

2. 找到以<Directory "/var/www/html">?開頭的部分。

?<Directory "/var/www/html">

? Possible values for the Options directive are "None", "All",

? or any combination of:

? Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews

?

? Note that "MultiViews" must be named *explicitly* --- "Options All"

? doesn't give it to you.

?

? The Options directive is both complicated and important. Please see

? http://httpd.apache.org/docs/2.4/mod/core.html?options

? for more information.

?

Options Indexes FollowSymLinks

?

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

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

? Options FileInfo AuthConfig Limit

?

AllowOverride None

?

? Controls who can get stuff from this server.

?

Require all granted

3. 在以上部分中將 AllowOverride None 行改為讀取 AllowOverride All。

此文件中有多個(gè) AllowOverride 行;請(qǐng)確保更改部分中的行。AllowOverride All

4. 保存文件并退出您的文本編輯器。

4.2.5 修復(fù) Apache Web 服務(wù)器的文件權(quán)限

WordPress 中的某些可用功能要求具有對(duì) Apache 文檔根目錄的寫入權(quán)限 (例如通過(guò)“Administration (管

理)”屏幕上傳媒體)。如果尚未進(jìn)行此操作,請(qǐng)參考3.1.2

1. 將/var/www 及其內(nèi)容的文件所有權(quán)更改到 apache 用戶。

[ec2-user wordpress]$ sudo chown -R apache /var/www

2. 將 /var/www 及其內(nèi)容的組所有權(quán)更改到 apache 組。

[ec2-user wordpress]$ sudo chgrp -R apache /var/www

3. 更改 /var/www 及其子目錄的目錄權(quán)限,以添加組寫入權(quán)限及設(shè)置未來(lái)子目錄上的組 ID。

[ec2-user wordpress]$ sudo chmod 2775 /var/www

[ec2-user wordpress]$ find /var/www -type d -exec sudo chmod 2775 {} \;

4. 遞歸地更改 /var/www 及其子目錄的文件權(quán)限,以添加組寫入權(quán)限。

[ec2-user wordpress]$ find /var/www -type f -exec sudo chmod 0664 {} \;

5. 重啟 Apache Web 服務(wù)器,讓新組和權(quán)限生效。

[ec2-user wordpress]$ sudo service httpd restart

Stopping httpd: [ OK ]

Starting httpd: [ OK ]

4.2.4?測(cè)試

http://你的服務(wù)器IP地址,?如已做好域名解析,則直接打開你自己的域名 www.xyz.com

如過(guò)前面未做解析,則直接打開你的公共IP或DNS

http://my.public.dns.amazonaws.com/


后續(xù)設(shè)置wordpress用戶名密碼,站點(diǎn)名稱就可以正常訪問(wèn)了,接下來(lái)就是wordpress后臺(tái)配置相關(guān)的問(wèn)題

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 第一步:阿里云申請(qǐng)(買)一個(gè)個(gè)人域名(略) 第二步:選擇一個(gè)服務(wù)器,我選的是亞馬遜的AWS,單純只是因?yàn)閬嗰R遜第一...
    我就是沉沉閱讀 19,031評(píng)論 6 21
  • 【MySQL】Linux下MySQL 5.5、5.6和5.7的RPM、二進(jìn)制和源碼安裝 1.1BLOG文檔結(jié)構(gòu)圖 ...
    小麥苗DB寶閱讀 10,896評(píng)論 0 31
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,608評(píng)論 19 139
  • 大學(xué)的基礎(chǔ)寫作課老師兼班主任是一位姓徐的“小老太太”,寶珠同學(xué)喜歡叫她老徐,我叫她徐老師。 基礎(chǔ)寫作課被安排在大一...
    土申哥哥閱讀 385評(píng)論 0 1
  • 等閑追趕花蝶舞,荷葉遮陽(yáng)虎虎歸。 深慕稚童無(wú)稻慮,欲白方寸障塵堆。 雪掩麥場(chǎng)好書名,嬉追飛雹忘衣濕。
    靈魂刀手閱讀 245評(píng)論 0 3

友情鏈接更多精彩內(nèi)容