1. 程式人生 > >ubuntu伺服器搭建個人網站 ---- 阿里雲 輕量應用伺服器配置jdk tomcat mysql

ubuntu伺服器搭建個人網站 ---- 阿里雲 輕量應用伺服器配置jdk tomcat mysql

目錄

1.購買雲伺服器

進入阿里雲 www.aliyun.com 可以用支付寶賬號登入,登陸後進入賬號管理->實名認證。還可以進行學生認證。如果進行學生認證的話,可以看到 雲翼計劃。學生優惠購買雲伺服器,9.5元/月。有兩種可供選擇,差別不大,我選的是輕量應用伺服器。

購買完成後,去管理控制檯,收藏輕量應用伺服器,就方便在左側欄看到了

點進去這個伺服器,選擇遠端連線欄,設定一下root密碼(需要手機驗證碼)Ubuntu右側的小電腦螢幕圖示,點一下就可以對伺服器進行遠端控制了。

2.配置域名

阿里雲官網左側欄提供了域名服務,可以直接在裡面購買。然後到伺服器控制檯,有域名配置,根據提示配置好即可。需要解析哦,等一天左右。

域名和伺服器都弄好後,其實還需要備案,這是一個繁瑣且漫長的過程,如果不強求,我們可以先不弄,暫時用ip直接訪問也可以。

3.遠端控制伺服器

伺服器購買後,系統很乾淨,什麼都沒有。阿里雲網頁上可以直接通過網頁進行遠端連線伺服器,每次還得登入阿里雲,好麻煩哦。我這裡使用Putty進行遠端控制(登入root使用者),putty操作很簡單,輸入自己的公網ip,埠填22,連線就可以進入控制視窗了,會提示登入使用者,用root登入即可。

關於putty,百度搜索安裝即可。

另外需要在自己的windows安裝一個軟體FileZilla(百度可安裝),安裝後可以和伺服器進行檔案傳輸。

左邊紅框內是自己的windows檔案管理器,右側紅框內是ubuntu伺服器的檔案管理。可以互相拖拽實現檔案傳輸。

4.配置JDK

下載Linux 64就行,下載後,通過FileZilla上傳的伺服器 路徑:/opt/java/

伺服器端進入/opt/java/下,對你剛才上傳進來的jdk包進行解壓(後面是包名,如不一樣,自己改一下)

tar -zxvf jdk-8u121-linux-x64.tar.gz

解壓後會多出一個資料夾,我的是 jdk1.8.0_191,下面進行環境變數的配置:

vim /etc/profile

在檔案最後新增以下內容,目的是對所有使用者開機便可讀取到jdk。

export JAVA_HOME=/opt/java/jdk1.8.0_191
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

儲存退出。

還沒有結束,繼續執行:

 vim /etc/environment

將裡面的內容修改為如下,注意最後一行JAVA_HOME是我們安裝的目錄

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:$JAVA_HOME/bin"
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export JAVA_HOME=/java/jdk1.8.0_191

儲存退出。

最後執行這兩句,讓配置檔案立即生效,如果不執行,重啟系統後也會生效

source /etc/environment
source /etc/profile

至此,jdk配置完成,下面驗證一下是否成功。執行這一句,如果出現後面的介面,則證明jdk配置成功。否則,請重新配置。

java -version

5.tomcat服務的配置

官網下載tomcat的壓縮包 https://tomcat.apache.org/download-70.cgi 我下載的是tomcat8.5 。下載後,通過FileZilla上傳至伺服器/opt/資料夾下。(因為我windows用的tomcat8.5,版本對應)

在putty遠端控制進入/opt/資料夾下,解壓,注意最後的包名!直接複製我的語句可能不對:

tar -zxvf apache-tomcat-8.5.33.tar.gz

解壓後會多出一個資料夾 apache-tomcat-8.5.33 ,名字太長了,我們給他改一下名字,改為 tomcat:

mv apache-tomcat-8.5.33 tomcat

然後我們進入 cd /opt/tomcat/conf/目錄下,編輯server.xml檔案,修改埠。找到下面的語句。預設埠是8080,需要修改為80(商用埠)

注意:80埠在阿里雲伺服器上是預設開啟的,所以我們改成80可以直接訪問,也可以改成其他的,比如8021,那麼就必須在雲伺服器控制檯的安全組(或防火牆)增加一條規則,允許此埠!!我們訪問伺服器時,位址列就應該填寫 ip:8021 。如果我要在伺服器上佈置多個網站,那就不能用80埠!

vim /opt/tomcat/conf/server.xml

然後我們進入 cd /opt/tomcat/bin/目錄下,執行startup.sh(開啟tomcat服務)

sh startup.sh

然後我們開啟一個瀏覽器,在位址列輸入自己的   公網ip:埠號   就可以看到如下介面,證明配置成功。若此時未成功,請從頭再來。

這個頁面是 /opt/tomcat/webapps/ROOT/index.jsp,也就是tomcat預設的主頁。

修改預設主頁,在自己喜歡的目錄下寫java web。修改server.xml檔案,找到Host標籤,在裡面加上Context標籤(這句話原本沒有,自己寫上),內容如圖。

vim /opt/tomcat/conf/server.xml
<Context path="" docBase="now" debug="0" reloadable="true" />

解釋:docBase是你的專案路徑,其實可以只寫專案名,如docBase="winter",tomcat會自動尋找webapps目錄下的winter專案下的index.*作為主頁。圖中的docBase其實是tomcat預設的。path置空即可。reloadable在開發階段設為true即可,每次修改檔案,tomcat會自動更新。使用階段設為false提高效率。

*配置首頁預設檔案。這個一般不用管。。 編輯/opt/tomcat/conf/下的web.xml。這一步一般tomcat都已經自帶了,可以自行檢查一下圖片上的內容有沒有,應該在檔案的最後部分。如果沒有,就加上。注意,伺服器會優先訪問第一個(index.html)即先寫那個優先哪個,不存在時,會嘗試訪問下一個。

上述都儲存好後,進入/opt/tomcat/bin/目錄下,執行下面的命令開啟tomcat服務

sh startup.sh

如果執行失敗,說明許可權不足,執行一下語句增加許可權:

chmod 777 *.sh

至此,tomcat配置成功。直接在瀏覽器訪問你的ip就可以看到自己的主頁了。

如果想關閉tomcat,執行shutdown.sh

sh /opt/tomcat/bin/shutdown.sh

注意:如果啟動tomcat後訪問ip或域名進不去,請稍等一會,可能啟動較慢。我遇到好幾次,等了一會就可以了。如果你設定的埠號不是80,那麼必須訪問 ip:埠號。並且必須在阿里雲伺服器防火牆選項裡增加自定義規則。

設定tomcat開機自啟動

進入/opt/tomcat/bin並執行

cp catalina.sh /etc/init.d/

然後進入/etc/init.d/,給剛才複製的檔案改個好記的名字

mv catalina.sh tomcat

然後需要改一下內容

vim /etc/init.d/tomcat 

在開始位置增加兩行,分別代表tomcat的路徑,jdk的路徑。下面是我的路徑,請根據自己的實際情況修改。

CATALINA_HOME=/opt/tomcat
JAVA_HOME=/opt/java/jdk1.8.0_191

然後設為開機自啟項,執行後可能會有兩個警告,不用管:

update-rc.d -f tomcat defaults

最後重啟伺服器,看一看tomcat是不是開著的(程序名是java)

reboot
systemctl status tomcat

"tomcat"是你的 CATALINA_HOME的值。如果出現下面的畫面,則表示tomcat已開啟:

6.資料庫mysql的部署

一切的開始~

sudo apt-get update

安裝mysql:

sudo apt-get install mysql-server mysql-client

遇到詢問是否繼續,按Y並回車,遇到設定密碼,設定mysql的root使用者初始密碼。

然後試一下重啟mysql是不是可以的。

sudo service mysql restart

最後登入mysql,執行下面語句後提示輸入密碼,輸入剛才安裝mysql時設定的密碼

mysql -u root -p

登陸成功後就進入了字元操作介面:

伺服器端的mysql佈置完了,但是總是遠端訪問命令列操作很麻煩。。下面用Navicat軟體實現遠端連線。

先自行百度下載軟體 Navicat for MySQL

伺服器端登入mysql  (輸入密碼)

mysql -u root -p 

1、修改user表:MySQL>update user set host = '%' where user = 'root'; 
2、授權主機訪問:MySQL>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的root密碼' WITH GRANT OPTION; 
3、重新整理許可權:MySQL>FLUSH PRIVILEGES;
4、退出:MySQL>EXIT;

然後執行下面語句,可以看到埠3306的資訊(資料庫mysql專用埠)

netstat -an | grep 3306

如果看到的不是下面的內容,就需要修改檔案 mysql.conf.d/mysqld.cnf

執行語句:grep -R address *   可以看到下面內容,由於我是修改過的,故最後是0.0.0.0,你的未修改的應該是127.0.0.1表示僅允許本機訪問,你要 修改 /etc/mysql/mysql.conf.d/mysqld.cnf檔案,找到變數bind-address,修改值為0.0.0.0表示允許任何ip訪問。

然後你可以看一下mysql的使用者表,依次執行:

mysql -u root -p 
mysql> use mysql
mysql> select user,host from user;

如果看到使用者root的host是%,則證明該使用者可以接受任意主機的遠端訪問了。若不是,請從上面的步驟中尋找原因。

改好之後,重啟一下mysql服務:

sudo /etc/init.d/mysql restart

看似大功告成了,但是雲伺服器還需要在安全組裡允許3306埠訪問!!!在阿里雲控制檯左側欄找安全組或者防火牆,新增一條規則,使得埠3306是允許訪問了,這才ok~

現在在我自己的電腦上開啟Navicat軟體,點選左上角連線,並填寫。