2007年11月26日 星期一

Web Server Setup(Ubuntu 7.10 + Tomcat 6 + MySQL + JDBC)

這幾天從家裡整裡了一台電腦,架設一台Web Server,以後會慢慢將資料轉移到這台電腦上。

規格為:
Intel Celeron 1000MHZ
512M RAM
Ubuntu 7.10
Tomcat 6.0.14
在安裝Ubuntu 7.10完後,發現並沒有安裝ssh的服務,準備apt-get時,竟然找不到相關套件,最後發現原來/etc/apt/source.list中所有的更新網站列表都被註解了,將所有#刪掉後,開始安裝openssh-server.
sudo apt-cache update
sudo apt-get install ssh
安裝完成後的ssh預設port為22,可以從/etc/ssh/sshd_config下將port改成另一個port,防止被攻擊。

Tomcat 6的安裝步驟:
1. sudo apt-get install sun-java6-jdk (取得java sdk環境)
2. sudo update-alternatives --config java (設定預設運行的java環境,選擇上一步安裝的java6)
3. 下載tomcat 6(連結)
4. sudo mv apache-tomcat-6.0.14.tar.gz /opt/ (將tomcat移至/opt/下,可自行選擇)
5. sudo tar zxvf apache-tomcat-6.0.14.tar.gz (將目錄改為tomcat6)
6. sudo vim /etc/profile (也可以加在家目錄下的.bashrc)
└ 加入此敘述export JAVA_HOME=/usr/lib/jvm/java-6-sun
7. 登出再登入
8. sudo /opt/tomcat6/bin/startup.sh
Using CATALINA_BASE: /opt/tomcat6
Using CATALINA_HOME: /opt/tomcat6
Using CATALINA_TMPDIR: /opt/tomcat6/temp
Using JRE_HOME: /usr/lib/jvm/java-6-sun
(成功訊息)
9. 從/opt/tomcat6/conf/server.xml中修改port(從8080改為80)
10.
sudo /opt/tomcat6/bin/shutdown.sh
11.
sudo /opt/tomcat6/bin/startup.sh
12. 連線到http://your-ip/
安裝完成後,預設的web存放位置為/opt/tomcat6/webapps/ROOT/,如需要改變預設路徑可透過/opt/tomcat6/conf/server.xml此檔改變。找到Host name並更改,如下~
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="ROOT";
crossContext="true">
</Context>
</Host>
改為:
<Host name="localhost" appBase="/home/username/www/"
unpackWARs="true" autoDeploy="true">
<Context path="" docBase=".";
crossContext="true">
</Context>
</Host>
安裝MySQL 5.0
sudo apt-get install mysql-server (安裝完成後,會要求輸入password)
安裝JDBC
1. sudo apt-get install libmysql-java
2. sudo cp ./usr/share/java/mysql-connector-java-5.0.4.jar /opt/tomcat6/lib/ (粗體部份為Tomcat安裝路徑)
(重新啟動Tomcat將jdbc lib匯入)
3.
sudo /opt/tomcat6/bin/shutdown.sh
4.
sudo /opt/tomcat6/bin/startup.sh
測試JDBC(將下敘述加至*.jsp網頁中)
1.連線到mysql command
└ sudo mysql -p (-p為所輸入之root密碼)
2. 建立test資料庫
└ create database test;
3. show database
└ show databases;
4. 建立sa使用者,密碼為sa,權限為SELECT
└ GRANT SELECT ON *.* TO sa@localhost IDENTIFIED BY "sa";
5. 撰寫測試網頁
<%@ page contentType="text/html;charset=big5" %>
<%@ page import="java.util.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.sql.*" %>
<% String DB_URL = "jdbc:mysql:///test"; String DB_User = "sa"; String DB_Password = "sa"; Class.forName("com.mysql.jdbc.Driver").newInstance(); Connection con = DriverManager.getConnection(DB_URL, "sa", "sa"); %>
if(!con.isClosed())
System.out.println("Successfully connected !!" );
6. 連線到網頁進行測試。

沒有留言: