1.前一篇,
使用acfs-sfs3-14.04.3-2-server-i386.iso 架設 NAT DHCP ROUTER
之後,我們又希望在這個NAT DHCP ROUTER 架設 Xoops 網站
環境說明
(1)網卡p1p2 是接到對外的網路線WAN,使用固定IP 192.168.32.153,閘道 192.168.32.254
(2)網卡p1p2 是接到對外的網路線WAN,使用PPPoE
網卡p1p1 是接到對內的網路線LAN,使用固定IP 172.20.3.254。需做DHCP給LAN:172.20.3.100~172.20.3.200。
(3)xoops 安裝的目錄為 /home/webadmin/html/xoops/
2.下載xoops 2.5.9
$wget https://campus-xoops.tn.edu.tw/modules/tad_uploader/index.php?op=dlfile&cfsn=145&cat_sn=16&name=xoopscore25-2.5.9_tw_20170803.zip
3.安裝解壓縮軟體與解壓縮下載的xoops 2.5.9
$sudo apt-get install zip unzip
$ cd /home/webadmin/html/
$sudo unzip xoopscore25-2.5.9_tw_20170803.zip
4.更名htdocs 為xoops 並移動到 /home/webadmin/html/
$cd /home/webadmin/XoopsCore25-2.5.9/
$sudo mv htdocs/ xoops/
$sudo mv xoops/ /home/webadmin/html/
5.分別更名xoops_lib xoops_data 為xoops259lib xoops259data,並移動到 /home/webadmin/
$sudo mv xoops_lib/ xoops259lib/
$sudo mv xoops_data/ xoops259data/
$sudo mv xoops259lib/ /home/webadmin/
$sudo mv xoops259data /home/webadmin/
6.刪除XoopsCore25-2.5.9 資料夾
$cd /home/webadmin/
$rm XoopsCore25-2.5.9/ -r
7.變更權限與擁有者
$sudo chmod -R 755 /home/webadmin/html/xoops
$sudo chmod 777 /home/webadmin/html/xoops/include/license.php
$sudo chmod -R 777 /home/webadmin/html/xoops/uploads
$sudo chmod -R 755 /home/webadmin/xoops259lib
$sudo chmod -R 777 /home/webadmin/xoops259data
$sudo chown -R webadmin.webadmin /home/webadmin/html/xoops/
至目前為止,可寫成XoopsInstall.sh。其內容如下:
#!/bin/bash
wget https://campus-xoops.tn.edu.tw/modules/tad_uploader/index.php?op=dlfile&cfsn=145&cat_sn=16&name=xoopscore25-2.5.9_tw_20170803.zip
apt-get install zip unzip
cd /home/webadmin/html/
unzip xoopscore25-2.5.9_tw_20170803.zip
cd /home/webadmin/XoopsCore25-2.5.9/
mv htdocs/ xoops/
mv xoops/ /home/webadmin/html/
mv xoops_lib/ xoops259lib/
mv xoops_data/ xoops259data/
mv xoops259lib/ /home/webadmin/
mv xoops259data /home/webadmin/
cd /home/webadmin/
rm XoopsCore25-2.5.9/ -r
chmod -R 755 /home/webadmin/html/xoops
chmod 777 /home/webadmin/html/xoops/include/license.php
chmod -R 777 /home/webadmin/html/xoops/uploads
chmod -R 755 /home/webadmin/xoops259lib
chmod -R 777 /home/webadmin/xoops259data
chown -R webadmin.webadmin /home/webadmin/html/xoops/
exit 0
至目前為止,若想重新設定。可執行XoopsUninstall.sh。XoopsUninstall.sh 內容如下:
#!/bin/bash
rm /home/webadmin/html/xoops/ -r
rm /home/webadmin/xoops259data/ -r
rm /home/webadmin/xoops259lib/ -r
exit 0
8.打開瀏覽器,輸入網址:http://192.168.32.196/xoops/
使用pietty 登入伺服器內,下指令
$cd /home/webadmin/html/xoops/
$sudo chown www-data.www-data mainfile.php
使用pietty 登入伺服器內,下指令
$cd /home/webadmin/html/xoops/
$sudo chmod 444 mainfile.php
$rm install -r
這樣就安裝完成。
9.現在不管是內網、外網,要連上這個Xoops,就要在瀏覽器的網址列打上http://192.168.32.196/xoops。如果打上http://192.168.32.196,就會連到,如下圖
因此,若要打上http://192.168.32.196,就會連到這個Xoops,就可以將
<meta http-equiv="refresh" content="0;url=../xoops/" />寫入 index.html 內
使用pietty 登入伺服器內,下指令
$sudo pico /home/webadmin/html/index.html
將<meta http-equiv="refresh" content="0;url=../xoops/" />寫入 index.html 內,如下圖:
那如果要內網(172.20.3.XXX)連上172.20.3.254,還能夠處理Xoops的設定。需要修改mainfile.php,將下面的程式碼加入
$xoops259server_ip=substr($_SERVER['SERVER_ADDR'], 0,0 - strlen(strrchr($_SERVER['SERVER_ADDR'], '.')));
if ($xoops259server_ip == "172.20.3") {
define('XOOPS_URL', 'http://172.20.3.254/xoops');
} else {
define('XOOPS_URL', 'http://192.168.32.196/xoops');
}
使用pietty 登入伺服器內,下指令
$sudo pico /home/webadmin/html/xoops/mainfile.php
將下面程式碼取代 define('XOOPS_URL', 'http://192.168.32.196/xoops');
$xoops259server_ip=substr($_SERVER['SERVER_ADDR'], 0,0 - strlen(strrchr($_SERVER['SERVER_ADDR'], '.')));
if ($xoops259server_ip == "172.20.3") {
define('XOOPS_URL', 'http://172.20.3.254/xoops');
} else {
define('XOOPS_URL', 'http://192.168.32.196/xoops');
}
如下圖:
10.加快Xoops網站運作速度
$sudo mkdir /tmp/ramdisk
$sudo pico /etc/fstab
加入
tmpfs /tmp/ramdisk tmpfs size=32m,mode=1777 0 0
$sudo mount /tmp/ramdisk
$sudo pico /etc/php5/apache2/php.ini
修改
session.save_path = "/tmp/ramdisk"
$sudo /etc/init.d/apache2 restart
11.增加xoops 網站安全性
將下列程式碼加入acfs_sfs.1404.conf
<Directory "/var/www/html/xoops/">
#開放目錄
# Options FollowSymLinks Indexes
#不開放目錄
Options FollowSymLinks
AllowOverride none
#全部開放
Require all granted
# Require all granted
#全部允許
# Require all denied
#全部拒絕
# Require host chc.edu.tw #允許的網域
# Require ip 163.23 #允許的IP
# Require local #只允許本機
</Directory>
其指令如下:
$sudo pico /etc/apache2/sites-enabled/acfs_sfs.1404.conf
將下列程式碼加入acfs_sfs.1404.conf
<Directory "/var/www/html/xoops/">
#開放目錄
# Options FollowSymLinks Indexes
#不開放目錄
Options FollowSymLinks
AllowOverride none
#全部開放
Require all granted
# Require all granted
#全部允許
# Require all denied
#全部拒絕
# Require host chc.edu.tw #允許的網域
# Require ip 163.23 #允許的IP
# Require local #只允許本機
</Directory>
如下圖:
參考資料
1.如何在Linux下安裝「XOOPS輕鬆架」
https://campus-xoops.tn.edu.tw/modules/tad_book3/page.php?tbdsn=306
2.見的密技--加速Web網站運作
http://free.chc.edu.tw/~chi/blog/index.php?load=read&id=145
3.網管者如何再加快學籍系統?
http://www.sfs.project.edu.tw/modules/news/article.php?storyid=72