標籤

BAT (38) shell (34) Virtual Machine (33) Xubuntu (29) acfs (25) PHP (24) CentOS (21) Virtul Box (20) 編輯器 (17) 資料庫 (15) lubuntu (13) windows (13) CPP (12) ubuntu (12) chrome (11) laravel (10) Docker (9) Python (9) 5A88 (7) VMware (6) 資料結構 (6) Javascript (5) Node (5) Proxmox VE (5) 公告系統 (5) 程式積木 (5) Android Studio (4) ANN (3) OB2D2016x64 (3) Xoops (3) clonezilla (3) samba (3) 公文 (3) 其他 (3) 硬體 (3) API (2) Android (2) AppInvent2 (2) Html (2) Hyper-V (2) Nas (2) botnet (2) mbot (2) swift (2) wordpress (2) 樣板 (2) 防火牆 (2) AD的應用 (1) Ansible (1) Arduino (1) CSS (1) GitLab (1) HA Proxy (1) LegoEV3 (1) PowerShell (1) Scratch (1) VM (1) XenServer (1) kotlin (1) linuxmint (1) lxc (1)

2016年11月30日 星期三

laravel 5.3 routes 使用方法

在laravel 5.3   routes/web.php 定義 web相關的 routes,routes/api.php 定義 api相關的 routes。
寫在 routes/web.php
Route::get('foo', function () {
    return 'welcome';
});
Route::get('test', function () {
    return view('test');
});
與在 resources/views/test.blade.php 
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>TEST</title>
  </head>
  <body>
    <a href="#">TEST</a>
  </body>
</html>

通常情況下,您將會需要為您的路由產生 URL,您可以使用 url 輔助函數來操作:
$url = url('foo');
此時將上述所學,整理如下:
並有下列的結果

接收必要參數
Route::get('posts/{id}', function ($id) {
    return 'Post:'.$id;
});
接收選擇性參數
Route::get('users/{name?}', function ($name = 'John') {
    return 'My name is '.$name;
});
限制參數格式
   1.使用 where 限制
    Route::get('posts/{id}', function ($id) {
    return 'Post:'.$id;
    })->where('id','[0-9]+');
    
   2.使用 pattern 限制
    Route::pattern('id','[0-9]+');
    Route::get('posts/{id}', function ($id) {
    return 'Post:'.$id;
    })->where('id','[0-9]+');
 
    打上 192.168.81.210/posts/John 則會出現錯誤訊息

列出目前所有的orute 規則
$ php artisn route:list
Route Prefixing
設定某些Route前都有共同的前置uri
Route::group(['prefix'=>'admin'],function(){
    Route::get('users',function(){
      return 'abc';
    });
});
Sub-Domain Routing
限制Route只能在某個Sub-Domain 才接受
Route::group(['domin'=>'192.168.81.210'],function(){
        Route::get('{user}/{id}',function($user,$id){
           return $user.'  '.$id;
        });
});
今天依照網站架構圖,做一下練習
在這個階段的實作裡,直接在Route裡回傳字串,以確認把通道打開。
裡面的程式碼為
Route::get('/',['as'=>'home.index',function(){
  return 'home.index';
}]);
Route::get('about/',['as'=>'about.index',function(){
  return 'about.index';
}]);

Route::post('posts/',['as'=>'posts.store',function(){
  return 'posts.store';
}]);

Route::get('posts/',['as'=>'posts.index',function(){
  return 'posts.index';
}]);

Route::get('posts/create',['as'=>'posts.create',function(){
  return 'posts.create';
}]);

Route::delete('posts/{id}',['as'=>'posts.destory',function($id){
  return $id.'.posts.destory';
}]);

Route::patch('posts/{id}',['as'=>'posts.update',function($id){
  return $id.'.posts.update';
}]);

Route::get('posts/{id}',['as'=>'posts.show',function($id){
  return 'posts.show';
}]);
Route::post('posts/{id}/comment/',['as'=>'posts.comment',function($id){
  return $id.'.posts.comment';
}]);
Route::get('posts/{id}/edt',['as'=>'posts.edit',function($id){
  return $id.'.posts.edit';
}]);
Route::get('hot/',['as'=>'hot.index',function(){
  return 'hot.index';
}]);
Route::get('random/',['as'=>'random.index',function(){
  return 'random.index';
}]);

CSRF 保護

Laravel 提供簡易的方法,讓您可以保護您的應用程式不受到 CSRF (跨網站請求偽造) 攻擊。跨網站請求偽造是一種惡意的攻擊,藉以代表經過身份驗證的使用者執行未經授權的命令。

Laravel 會自動在每一位使用者的 session 中放置隨機的 token ,這個 token 將被用來確保經過驗證的使用者是實際發出請求至應用程式的使用者:

插入 CSRF Token 到表單

<input type="hidden" name="_token" value="<?php echo csrf_token(); ?>">
當然也可以在 Blade 模板引擎使用:

<input type="hidden" name="_token" value="{{ csrf_token() }}">
您不需要手動驗證在 POST、PUT、DELETE 請求的 CSRF token。 VerifyCsrfToken HTTP 中介層將儲存在 session 中的請求輸入的 token 配對來驗證 token 。

除了尋找 CSRF token 作為「POST」參數,中介層也檢查 X-XSRF-TOKEN 請求標頭,這在多數 Javascript framework 常被拿來使用。


方法欺騙

HTML 表單沒有支援 PUT 或 DELETE 動作。所以當定義 PUT 或 DELETE 路由並在 HTML 表單中被呼叫的時候,您將需要添加隱藏 _method 欄位在表單中。

將數值同 _method 欄位發送使用 HTTP 請求方法。舉例來說:

<form action="/foo/bar" method="POST">
    <input type="hidden" name="_method" value="PUT">
    <input type="hidden" name="_token" value="<?php echo csrf_token(); ?>">
</form>


參考資料:
1.PHP Laravel 開發入門(四) – 路由(Routes)
http://www.codedata.com.tw/uncategorized/php-laravel-dev-tutorial-3-class-artisan/
2.Route 路由控制
http://www.slideshare.net/shengyou/6-route?ref=http://www.laravel-dojo.com/workshops/201507-ntpc
3.HTTP 路由
https://wastemobile.gitbooks.io/laravel-5-chinese-document/content/routing.html


2016年11月26日 星期六

OB2D2016x64 安裝 laravel 5

1.確定php 版本
$php -v
2.安裝套件 
$sudo apt-get install curl openssl
$sudo apt-get install -y git-core
$sudo a2enmod rewrite
$sudo service apache2 restart
3.安裝 composer 與 laravel
$curl -sS https://getcomposer.org/installer | php
$sudo mv composer.phar /usr/local/bin/composer
$sudo chmod +x /usr/local/bin/composer
$composer
$ composer global require "laravel/installer"
4.建立新專案
$composer create-project --prefer-dist laravel/laravel test1
$cd test1
5.手動啟動內建網頁服務
sudo php artisan serve   --host=192.168.81.210 --port=82
6.開啟瀏覽器,並輸入 http://192.168.81.210:82/
7.使用apache2當網頁服務 (使用者名稱webadmin)
$sudo chgrp -R www-data test1
$sudo chmod -R 775 test1/storage
$sudo geany /etc/apache2/sites-available/laravel.conf
-------------------------------------------------------------------------------------
<VirtualHost *:80>
   ServerName localhost

   ServerAdmin webmaster@localhost
   DocumentRoot /home/webadmin/test1/public


<Directory /home/webadmin/test1>
         AllowOverride All
         Require all granted
   
</Directory>

   ErrorLog ${APACHE_LOG_DIR}/error.log
   CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

-------------------------------------------------------------------------------------
如果要取消原本80網頁
$sudo a2dissite 000-default.conf
啟用新網頁
$sudo a2ensite laravel.conf
$sudo a2enmod rewrite
$sudo service apache2 restart

瀏覽器打上 http://192.168.81.210 就能看到了


資料來源:
1.How do I install different (upgrade or downgrade) PHP version in still supported Ubuntu release?
http://askubuntu.com/questions/109404/how-do-i-install-different-upgrade-or-downgrade-php-version-in-still-supported
2.How to setup / install PHP 5.6 on Ubuntu 14.04 LTS - Dev Metal
 https://www.dev-metal.com/install-setup-php-5-6-ubuntu-14-04-lts/
3.Ubuntu 平台 laravel 安裝筆記 http://it-only.blogspot.tw/2016/01/ubuntu-laravel.html
4.給 Laravel 初學者的幾點建議 http://oomusou.io/laravel/laravel-for-newbie/
5.Deploy Laravel 5.1 on Ubuntu 14.04 LTS http://t301000.blogspot.tw/2015/08/deploy-laravel-51-on-ubuntu-1404-lts.html
6.如何在Ubuntu 15.10,14.04,12.04和LinuxMint安装Laravel 5框架
    http://www.howtoing.com/install-laravel-framework-on-ubuntu/
7.laravel 安裝手冊 https://laravel.com/docs/5.3#server-requirements

感謝:
彰化縣湖南國小許銘堯老師指導

OB2D2016x64 安裝 Geany bluefish atom 與 atom 相關套件

 安裝 Geany
$ sudo apt-get update
$ sudo apt-get install geany geany-plugins

安裝 bluefish
$ sudo apt-get update
$ sudo apt-get install bluefish

安裝 atom
1.無法透過 PPA 安裝atom
2.只能手動安裝atom
$wget https://github.com/atom/atom/releases/download/v1.9.2/atom-amd64.deb
$sudo apt-get install gdebi
$sudo gdebi atom-amd64.deb
3.安裝 Atom套件
$ apm install cht-menu atom-bootstrap3 autocomplete-php color-picker emmet highlight-selected linter-php php-cs-fixer pigments sublime-style-column-selection synced-sidebar



 參考資料
1.http://www.howtoing.com/install-geany-ide-ubuntu/
2.http://www.mintos.org/review/linuxmintubuntu%E4%B8%8B%E5%A6%82%E4%BD%95%E5%AE%89%E8%A3%85bluefish.html
3.http://www.linuxey.com/how-to-install-atom-on-debian-jessie-8-2/

2016年11月22日 星期二

以帳號aa40 完成 acfs1404 安裝billboard

安裝billboard前,請先安裝 php-gd套件與設定php.ini內的 short_tag
$ sudo apt-get install php-gd



1.billboard下載主機IP為 172.20.3.103
$wget http://172.20.3.103/billboard.zip
2.安裝解壓縮軟體
$sudo apt-get install unzip
3.解壓縮 billboard.zip
$sudo unzip billboard.zip
4.變更資料夾billboard 的擁有者
$sudo chown aa40.aa40 billboard
5.移動資料夾billboard到 /home/aa40/aa40/
$mv billboard aa40/
6.進入billboard資料夾
$cd aa40/billboard/
7.number.dat type.php member.php data file 資料夾 改權限 777
$sudo chmod 777 number.dat type.php member.php data file
8.修改 config.php
$sudo vi config.php

$datpath      = 'number.dat';                          
$folder       = 'billboard';                                  //資料夾名稱
$onepage      = '10';                                         //每頁比數
$http         = 'http://192.168.81.210';            //網址, 請勿包含 index.htm...
$webname      = 'MYHOME';                                 //網站名稱
$system       = 'Authur';                                 //管理員顯示名稱
$sysjobtitle  = '網站管理員';                             //管理員首頁顯示發行人
$admin        = 'webadmin';                              //管理員帳號
$pass         = 'pass12';                                 //管理員密碼

/*新增變數*/
$title           = 'TEST';                               //網頁標題
$ExplorPageTitle = 'TEST Explor page';                   //explor.php網頁標題
$charset_default = 'utf8';                               //網頁編碼
$unitAddress     = '地址:彰化市中山路二段416號';     //單位地址
$unitTelephone   = '電話:04-7988611';                   //單位電話
$maintain        = '維謢:學籍小組';                     //維謢人員
$copyright       = '學籍代管配套_彰縣chc佈告欄';  //來源

二、嵌入學校首頁語法
1.一般網頁(不同主機)
<iframe width="100%" height="400" scrolling="auto" src="http://192.168.81.210/aa40/billboard/" frameborder="0" marginwidth="0"></iframe>
2.嵌入xoops區塊中
先到「區塊」,然後「新增區塊」,貼入以下內容
<iframe width="100%" height="400" scrolling="auto" src="http://192.168.81.210/aa40/billboard/" frameborder="0" marginwidth="0"></iframe>

3.一般網頁(相同主機)
<iframe width="100%" height="400" scrolling="auto" src="../aa40/billboard/" frameborder="0" marginwidth="0"></iframe>
4.嵌入xoops區塊中
先到「區塊」,然後「新增區塊」,貼入以下內容
<iframe width="100%" height="400" scrolling="auto" src="../aa40//billboard/" frameborder="0" marginwidth="0"></iframe>

三、備份
1.下載最新備份程式
$wget http://163.23.89.100/pub/sfs_tool/ACFSsfsBKv3.txt
2.修改備份程式
vim /bin/ACFSsfsBKv3.txt
#-----A.各項設定與啟用---------

$conf{'bakSQL'}='N';## 01.備份檔名為SQL_日期.gz,使用mysqldump備份, 設定值 Y/N
$conf{'bakDir'}='Y';## 02.要不要備份某些目錄, 使用tar czvf 備份某些目錄,設定值 Y/N
$conf{'ftpCHC'}='N';## 03.要不要透過ftp將資料送到縣網主機 設定值 Y/N
$conf{'ftp'}='N';## 04.要不要透過ftp將資料送到其他 NAS 或FTP 主機 設定值 Y/N
$conf{'upsfs'}='N';## 05.要不要更新學藉系統套件, 設定值 Y/N
$conf{'chktime'}='N';## 06.要不要進行校時

##-- 為避免系統更新碰到詢問選項時,將會停下等待使用者回覆
##-- 故採用 safe-upgrade 的方式,但若有核心異動時
##-- 請手動執行 sudo apt-get dist-upgrade -y  
$conf{'upSYS'}='N';##要不要更新系統, 設定值 Y/N
$conf{'bootSYS'}='N';##更新完,要不要重新啟動系統(重開機), 設定值 Y/N

## --- 07.每類型備份檔案最多數量
$lim=18;

## ----- 08.資料庫檢查及備份用資訊-----
$db{'chk'}='N';;## 備份前要不要檢查資料庫, 設定值 Y/N
$db{'usr'}='root';## 資料庫使用者
$db{'pass'}='stu123';## 資料庫密碼
$db{'db'}='sfs3';;## 資料庫名稱
$db{'encryption'}='N';;## 是否加密(Y/N)
$db{'keys'}='/home/webadmin/AespipeKey.txt';;## 加密用字典檔,內容為任意大於20字以上的英數或符號

## ---- 09.縣網FTP服務--- 只能傳送資料庫檔案-----
$ftpCHC{'host'}='163.23.200.28';##遠方主機
$ftpCHC{'path'}='/';##登入後檔案放置目錄
$ftpCHC{'user'}='ftp帳號';##遠方主機帳號
$ftpCHC{'pass'}='ftp密碼';##遠方主機密碼

## ---- 10.自己的FTP或NAS服務--- 只能傳送資料庫檔案-----
$ftp{'host'}='192.168.XX.XX';##遠方主機
$ftp{'path'}='sfs3/';##登入後檔案放置目錄
$ftp{'user'}='ftp帳號';##遠方主機帳號
$ftp{'pass'}='ftp密碼';##遠方主機密碼

## ---- 11.學藉系統下載網址
$conf{'url'}='http://sfscvs.tc.edu.tw/sfs_stable5.tar.gz';

# --- 12.備份檔放置目錄
$BAK="/home/aa40/baksfs/";

## ---- 13.學藉系統路徑,保留最後斜線
$conf{'sfspath'}='/home/aa40/aa40/billboard/';

## ---- 14.設定欲備份目錄及備份檔的前置字元
##  欲備份目錄及備份檔的前置字元,注意不要破壞格式,可以自行增添多組
##  {前置字元} 請不要和資料庫同名
#$BB{'SFS_DB'}="/var/lib/mysql/sfs3";
$BB{'SFS_data'}="/home/aa40/aa40/billboard/";

##---------- B.程式運作-- 以下不用修改----------------###

3.將ACFSsfsBKv3.txt 移到 /bin/
$sudo mv ACFSsfsBKv3.txt /bin/

4.變更程式權限 【已預設,不須再變更】
$sudo chmod 755 /bin/ACFSsfsBKv3.txt

5.測試作業
$sudo /bin/ACFSsfsBKv3.txt
6.拷貝程式到/bin 目錄下【已預設,不須再拷貝】
$sudo cp ACFSsfsBKv3.txt /bin/
7.將程式執行加入自動排程
$sudo crontab -e
# 分 時 日 月 週 執行指令
5 0 * * * /usr/sbin/ntpdate time.stdtime.gov.tw > /dev/null
5 6 * * * /bin/ACFSsfsBKv3.txt > /dev/null 















以帳號aa40 完成 acfs14.04x32 安裝 ANN 公告欄

1. 安裝git
    $sudo apt-get install git

2.使用git 抓取 ann 並放置網頁主目錄中
    $git clone https://bitbucket.org/nansenat16/ann.git
    (下載完畢,ann 資料夾會在/home/aa40/)

3  sudo mv  ann /home/aa40/aa40/
(   ann 資料夾會在 /home/aa40/aa40/)

4. 將工作目錄換到 ann 去
  cd /home/aa40/aa40/ann

5.建立files資料夾與設定files資料夾權限 (files資料夾用來上傳檔案與放置 logfile)
   $sudo mkdir files
   $sudo chmod 777 files

    或採只有 apache2 的身份(www-data.www-data)才可讀寫的方式
  #sudo chown  www-data.www-data files
  #sudo chmod 755 files

6.將conf/config.inc.php- 與conf/mysite.inc.php- 變更為 config.inc.php 和 mysite.inc.php
   $sudo mv conf/config.inc.php- conf/config.inc.php
   $sudo mv conf/mysite.inc.php- conf/mysite.inc.php

7.建立資料庫  (此時資料庫使用者:root 密碼:stu123)
  (1)文字介面建立資料庫
    $mysql -u root -p mysql
  mysql> create database aa40anndb;
  mysql> grant all privileges on aa40anndb.* to root@localhost identified by 'stu123';
  (此時資料庫使用者:root 密碼:stu123)
 mysql>exit;
# mysql -u root -p aa40anndb < /home/webadmin/html/ann/sql/mysql.sql
  (按 Enter 後,請輸入資料庫密碼:stu123)

   (2)使用 phpMyadmin 建立資料庫:
        開啟瀏覽器,並輸入網址列 http://伺服器IP/tool (伺服器IP為 192.168.81.191)
        http://192.168.81.191/tool ,並輸入帳號、密碼。依下列圖進行



請注意:編碼均是 utf8
6.在瀏覽器輸入   http://伺服器IP/aa40/ann/ (伺服器IP為 192.168.81.191)
   http://192.168.81.191/aa40/ann/   就可看到下面:
7.點選 【沒有群組資料,請按我先新增!】
  
8.輸入 管理者帳號:ann 密碼:ann123 即可管理群組
                                               
9.為了安全起見,請修改設定檔 
# vi /home/aa40/aa40/ann/inc/config.inc.php
<?php
// 以下為基本重要設定,詳細設定請參照 defconf.inc.php
// ---------------------------------------------------------------
// ☆☆☆ 有新增加的設定放本檔最後! ☆☆☆
// ---------------------------------------------------------------
/* 初級使用者,可適當修改 password */
$hostname = "localhost"; /* 資料庫的主機名稱 */
$username = "root"; /* 公佈欄資料庫的使用者名稱 */
$password = "stu123"; /* 公佈欄資料庫的使用者密碼 */
$dbname = "aa40anndb"; /* 公佈欄資料庫名稱 */
/* 以下請做適當更改 */
// 超級總管
$adminuser = "ann"; /* 公佈欄總管理者名稱(開頭請加特殊符號) */
$adminpass = "ann123"; /* 公佈欄總管理者密碼(不設表禁用) */
$pwdsalt = 'please change this'; /* 加密密碼使用的額外亂數 */
// 網站的資料
$myname = "ANN公告系統"; /* 您的單位 */
$myhost = "http://192.168.81.191/aa40/ann"; /* 您放 ann 的 FQDN url */
//$home = "http://anngo.co.cc/home.htm";  /* 在主頁會出現 [回首頁] */
// 如有支援 SSL,請把下面那行的 // 刪除,並更改 url
//$sslhost = "https://anngo.co.cc/ann";      /* 您放 ann 的 url */
$groupname = "群組"; /* 可改成 群組/學校/單位 ... :p */
$groupmember = "組員"; /* 可改成 組員/使用者/職員 ... :p */
// 附件設定
/* 附件置於何處的絕對路徑 */
//$uploadpath = "C:/AppServ/www/ann/files"; /* Windows 設定法 */
//$uploadpath = "/usr/local/apache/htdocs/ann/files"; // 初始設定
$uploadpath = "/home/aa40/aa40/ann/files";

$noupload = ".php .php3"; /* 不可上傳的檔案類型 */
// 記錄檔設定,預設放到附件目錄中,名叫 log.php,如不設則不做記錄
//$logfile = "C:/AppServ/www/ann/files/log.php"; /* Windows 設定法 */
//$logfile = "/usr/local/apache/htdocs/ann/files/log.php";
$logfile = "/home/aa40/aa40/ann/files/log.php";
//------------------- 有新增加的設定放在這下面 --------------------------
// 網頁utf8版,而檔案系為big5時, file_name_use2_big5 請設 yes
// 反之,設另一個(二選一來設定)。如都是 big5版,則不用改。
$file_name_use2_big5 = "no";  /* 讀取下載的檔案名稱是否轉為 big5 */
$file_name_use2_utf8 = "no";  /* 讀取下載的檔案名稱是否轉為 big5 */
// 下載檔名不正確(中文)請二選一來設 yes
$file_name_dl2_big5 = "no"; /* 下載檔案名稱轉為 big5 */
$file_name_dl2_utf8 = "no"; /* 下載檔案名稱轉為 utf8 */
//------------------- 有新增加的設定放在這上面 --------------------------
?>
# vi /home/aa40/aa40/ann/inc/mysite.inc.php
<!-- 以下為呈現在 ANN 公告系統每頁的最下面,這是放自己網站基本資料用 -->
<!-- 如果不要用的話,就將下面的資料通通清掉即可(不可刪除此檔!)。 -->
<br><center>
單位地址:新竹師院<br>
單位電話:03-1234567<br>
維謢人員:nextime<br>
</center>
<? php

?>
二、嵌入學校首頁語法
1.一般網頁(不同主機)
<iframe width="100%" height="400" scrolling="auto" src="http://192.168.81.210/aa40/ann/" frameborder="0" marginwidth="0"></iframe>
2.嵌入xoops區塊中
先到「區塊」,然後「新增區塊」,貼入以下內容
<iframe width="100%" height="400" scrolling="auto" src="http://192.168.81.210/aa40/ann/" frameborder="0" marginwidth="0"></iframe>

3.一般網頁(相同主機)
<iframe width="100%" height="400" scrolling="auto" src="../aa40/ann/" frameborder="0" marginwidth="0"></iframe>
4.嵌入xoops區塊中
先到「區塊」,然後「新增區塊」,貼入以下內容
<iframe width="100%" height="400" scrolling="auto" src="../aa40//ann/" frameborder="0" marginwidth="0"></iframe>

三、備份
1.下載最新備份程式
$wget http://163.23.89.100/pub/sfs_tool/ACFSsfsBKv3.txt
2.修改備份程式
vim /bin/ACFSsfsBKv3.txt
#-----A.各項設定與啟用---------

$conf{'bakSQL'}='Y';## 01.備份檔名為SQL_日期.gz,使用mysqldump備份, 設定值 Y/N
$conf{'bakDir'}='Y';## 02.要不要備份某些目錄, 使用tar czvf 備份某些目錄,設定值 Y/N
$conf{'ftpCHC'}='N';## 03.要不要透過ftp將資料送到縣網主機 設定值 Y/N
$conf{'ftp'}='N';## 04.要不要透過ftp將資料送到其他 NAS 或FTP 主機 設定值 Y/N
$conf{'upsfs'}='N';## 05.要不要更新學藉系統套件, 設定值 Y/N
$conf{'chktime'}='N';## 06.要不要進行校時

##-- 為避免系統更新碰到詢問選項時,將會停下等待使用者回覆
##-- 故採用 safe-upgrade 的方式,但若有核心異動時
##-- 請手動執行 sudo apt-get dist-upgrade -y  
$conf{'upSYS'}='N';##要不要更新系統, 設定值 Y/N
$conf{'bootSYS'}='N';##更新完,要不要重新啟動系統(重開機), 設定值 Y/N

## --- 07.每類型備份檔案最多數量
$lim=18;

## ----- 08.資料庫檢查及備份用資訊-----
$db{'chk'}='Y';;## 備份前要不要檢查資料庫, 設定值 Y/N
$db{'usr'}='root';## 資料庫使用者
$db{'pass'}='stu123';## 資料庫密碼
$db{'db'}='aa40anndb';;## 資料庫名稱
$db{'encryption'}='N';;## 是否加密(Y/N)
$db{'keys'}='/home/webadmin/AespipeKey.txt';;## 加密用字典檔,內容為任意大於20字以上的英數或符號

## ---- 09.縣網FTP服務--- 只能傳送資料庫檔案-----
$ftpCHC{'host'}='163.23.200.28';##遠方主機
$ftpCHC{'path'}='/';##登入後檔案放置目錄
$ftpCHC{'user'}='ftp帳號';##遠方主機帳號
$ftpCHC{'pass'}='ftp密碼';##遠方主機密碼

## ---- 10.自己的FTP或NAS服務--- 只能傳送資料庫檔案-----
$ftp{'host'}='192.168.XX.XX';##遠方主機
$ftp{'path'}='sfs3/';##登入後檔案放置目錄
$ftp{'user'}='ftp帳號';##遠方主機帳號
$ftp{'pass'}='ftp密碼';##遠方主機密碼

## ---- 11.學藉系統下載網址
$conf{'url'}='http://sfscvs.tc.edu.tw/sfs_stable5.tar.gz';

# --- 12.備份檔放置目錄
$BAK="/home/aa40/baksfs/";

## ---- 13.學藉系統路徑,保留最後斜線
$conf{'sfspath'}='/home/aa40/aa40/ann/';

## ---- 14.設定欲備份目錄及備份檔的前置字元
##  欲備份目錄及備份檔的前置字元,注意不要破壞格式,可以自行增添多組
##  {前置字元} 請不要和資料庫同名
#$BB{'SFS_DB'}="/var/lib/mysql/sfs3";
$BB{'SFS_data'}="/home/aa40/aa40/billboard/";

##---------- B.程式運作-- 以下不用修改----------------###

3.將ACFSsfsBKv3.txt 移到 /bin/
$sudo mv ACFSsfsBKv3.txt /bin/

4.變更程式權限 【已預設,不須再變更】
$sudo chmod 755 /bin/ACFSsfsBKv3.txt

5.測試作業
$sudo /bin/ACFSsfsBKv3.txt
6.拷貝程式到/bin 目錄下【已預設,不須再拷貝】
$sudo cp ACFSsfsBKv3.txt /bin/
7.將程式執行加入自動排程
$sudo crontab -e
# 分 時 日 月 週 執行指令
5 0 * * * /usr/sbin/ntpdate time.stdtime.gov.tw > /dev/null
5 6 * * * /bin/ACFSsfsBKv3.txt > /dev/null 










參考網址
20120823ann校園公告系統資料庫安裝與移植
http://www.kmvs.km.edu.tw/lf/index.php?op=ViewArticle&articleId=245&blogId=2
ann 公告系統UTF-8 版
http://cc2.savs.hcc.edu.tw/~chuavv/articles/ann-tw.html
lpause的隨便記: ann公告系統big5 轉utf8
http://lpause.blogspot.tw/2015/03/ann-big5-utf8.html
ANN公告欄AlexW UTF8版
https://blog.alexw.net/2008/03/11/ann%E5%85%AC%E5%91%8A%E6%AC%84alexw-utf8%E7%89%88/

acfs14.04 新增user 並讓user能夠切換到sudo

方法一
    $sudo adduser aa01
    $sudo adduser aa01 sudo
 
   取消sudo 資格
   $sudo deluser aa01 sudo
 
   查詢有sudo 資格的帳號
  $sudo cat /etc/group | grep sudo
     $  sudo cat /etc/group | grep admin

方法二
  $sudo visudo
   在 root  ALL=(ALL:ALL) ALL 之後,加入 帳號 ALL=(ALL:ALL) ALL 即可。
    就是
       root  ALL=(ALL:ALL) ALL
       aa01 ALL=(ALL:ALL) ALL
       aa02 ALL=(ALL:ALL) ALL


新增帳號後,如何讓其在 /var/www/html 新增帳號資料夾
即 帳號 aa01   有/var/www/html/aa01/
1.新增帳號後,登出再登入,此時登入的目錄為/home/aa01
   $ sudo mkdir aa01
   $ ln -s /home/aa01/aa01 /var/www/html/aa01

資料來源:
1.Ubuntu 如何指定使用者為 sudoer
    http://www.arthurtoday.com/2010/03/sudoer.html
2.Ubuntu 快速將使用者設成 Sudoer
    http://www.arthurtoday.com/2015/01/how-to-add-a-user-as-sudoer-using-the-command-line-in-ubuntu.html 

acfs14.04 安裝 webmin

1.$sudo -i
2.#echo "deb http://download.webmin.com/download/repository sarge contrib" 
       >> /etc/apt/sources.list
3.#echo "deb http://webmin.mirror.somersettechsolutions.co.uk/repository sarge contrib"
      >>  /etc/apt/sources.list
4.#wget -q http://www.webmin.com/jcameron-key.asc -O- | apt-key add -
5.#apt-get update; apt-get install webmin -y

資料來源:
1.在Ubuntu 14.04上安裝Webmin指令腳本
    http://blog.pulipuli.info/2016/05/ubuntu-1404webmin-webmin-installation.html


2016年11月16日 星期三

ubuntu 14.04 server 安裝lxde桌面環境顯示中文亂碼

安裝桌面環境
$sudo apt-get install lxde
安裝中文化所須套件
$ sudo apt-get install fonts-arphic-bkai00mp fonts-arphic-bsmi00lp fonts-arphic-ukai fonts-arphic-uming fonts-wqy-microhei fonts-wqy-zenhei ttf-wqy-microhei ttf-wqy-zenhei xfonts-wqy fonts-droid
$ sudo apt-get install language-pack-zh-hant language-pack-gnome-zh-hant language-pack-zh-hant-base language-pack-gnome-zh-hant-base language-selector-common language-selector-gnome






資料來源:
1.Acer Chromebox - 安裝 Ubuntu 14.04 後中文化設定
http://blog.ilc.edu.tw/blog/blog/25793/post/88298/555758

2016年11月15日 星期二

lubuntu 16.04 x64 安裝 laravel 5 與安裝phpmyadmin

laravel備忘(安裝於ubuntu16.04)
一、必要安裝
安裝等等要解壓的工具
sudo apt-get install unzip zip

安裝lamp
sudo apt-get install lamp-server^

安裝php擴充
sudo apt-get install php7.0-mysql php7.0-cli  php7.0-json php7.0-mcrypt php7.0-mbstring php7.0-gd php7.0-xml(即php5-dom)

安裝phpMyAdmin
sudo apt-get install phpmyadmin

二、下載安裝composer
下載
wget -c https://getcomposer.org/composer.phar

可執行
chmod +x composer.phar

移到/usr/local/bin,改名composer
mv composer.phar /usr/local/bin/composer

composer基本指令
測試看看
composer

版本
composer -V

升級
composer self-update

是否有效
composer validate
    如果出現  ./composer.json not found.
    請用   composer global require "phpunit/php-invoker=1.1.*"


三、用composer於html下安裝laravel,放置在/home/webadmin/html/laravel/
不得用root使用者
cd /home/webadmin/
mkdir html
cd /var/www/
sudo mv html html2
ln -s /home/webadmin/html /var/www/html    (此時 /var/www/ 有兩個目錄 html html2)
cd /home/webadmin/html/
mkdir laravel 

安裝最新版的laravel
composer create-project laravel/laravel --prefer-dist /home/webadmin/html/laravel
要是安裝laravel 5.1版本,則為
composer create-project laravel/laravel --prefer-dist /home/webadmin/html/laravel 5.1

成功後,出現:
php artisan key:generate
Application key [base64:gS7Fs2tXdjW3UVmAuO/+YRvCDrHmgaqU84iPCIgJ368=] set successfully.

四、加入apache虛擬主機(安裝phpmyadmin,則免做步驟、四)
 sudo vi /etc/hosts

sudo vim /etc/apache2/sites-available/laravel.conf 

寫入:
-------------------------------------------------------------------------------------
<VirtualHost *:80>
   ServerName localhost

   ServerAdmin webmaster@localhost
   DocumentRoot /home/webadmin/html/laravel/public


<Directory /home/webadmin/html/laravel>
         AllowOverride All
         Require all granted
   
</Directory>

   ErrorLog ${APACHE_LOG_DIR}/error.log
   CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

-------------------------------------------------------------------------------------

如果要取消原本80網頁
$sudo a2dissite 000-default.conf
啟用新網頁
$sudo a2ensite laravel.conf
$sudo a2enmod rewrite
$sudo service apache2 restart


五、更改特定目錄擁有者為www-data,及777
cd /home/webadmin/html/laravel/
sudo chown -R www-data storage/ bootstrap/cache/
sudo chmod -R 777 storage/ bootstrap/cache/




資料來源:
1.laravel備忘(安裝於ubuntu16.04) http://etplayinfo.blogspot.tw/2016/11/laravel.html

2016年11月9日 星期三

acfs 14.04x32 安裝 laravel 5

 
1.更新php套件從 5.5.9 升級到 5.6.27
   $ sudo apt-get install software-properties-common
   $ sudo add-apt-repository ppa:ondrej/php
   $ sudo apt-get update
   $ sudo apt-get install php5.6

2.安裝套件
$sudo apt-get install curl openssl php5.6-mysql php5.6-mcrypt php5.6-curl php5.6-gd
$sudo apt-get install php5.6-mbstring php5.6-xml
$sudo php5enmod mcrypt
$sudo apt-get install -y git-core
$sudo a2enmod rewrite
$sudo service apache2 restart

3.安裝 composer 與 laravel
$curl -sS https://getcomposer.org/installer | php
$sudo mv composer.phar /usr/local/bin/composer
$sudo chmod +x /usr/local/bin/composer
$composer
$ composer global require "laravel/installer"

4.建立新專案
$composer create-project --prefer-dist laravel/laravel test1
$cd test1

5.手動啟動內建網頁服務
sudo php artisan serve   --host=192.168.81.191 --port=82

6.開啟瀏覽器,並輸入 http://192.168.81.191:82/

以下紅色的部份實作尚未成功
7.使用apache2當網頁服務 (使用者名稱webadmin)
$sudo chgrp -R www-data test1
$sudo chmod -R 775 test1/storage
$sudo vi /etc/apache2/sites-available/laravel.conf
-------------------------------------------------------------------------------------
<VirtualHost *:80>
   ServerName localhost

   ServerAdmin webmaster@localhost
   DocumentRoot /home/webadmin/test1/public


<Directory /home/webadmin/test1>
         AllowOverride All
         Require all granted
   
</Directory>

   ErrorLog ${APACHE_LOG_DIR}/error.log
   CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

-------------------------------------------------------------------------------------

如果要取消原本80網頁
$sudo a2dissite 000-default.conf
啟用新網頁
$sudo a2ensite laravel.conf
$sudo a2enmod rewrite
$sudo service apache2 restart

瀏覽器打上 http://192.168.81.191 就能看到了

資料來源:
1.How do I install different (upgrade or downgrade) PHP version in still supported Ubuntu release?
http://askubuntu.com/questions/109404/how-do-i-install-different-upgrade-or-downgrade-php-version-in-still-supported
2.How to setup / install PHP 5.6 on Ubuntu 14.04 LTS - Dev Metal
 https://www.dev-metal.com/install-setup-php-5-6-ubuntu-14-04-lts/
3.Ubuntu 平台 laravel 安裝筆記 http://it-only.blogspot.tw/2016/01/ubuntu-laravel.html
4.給 Laravel 初學者的幾點建議 http://oomusou.io/laravel/laravel-for-newbie/
5.Deploy Laravel 5.1 on Ubuntu 14.04 LTS http://t301000.blogspot.tw/2015/08/deploy-laravel-51-on-ubuntu-1404-lts.html
6.如何在Ubuntu 15.10,14.04,12.04和LinuxMint安装Laravel 5框架
    http://www.howtoing.com/install-laravel-framework-on-ubuntu/
7.laravel 安裝手冊 https://laravel.com/docs/5.3#server-requirements

感謝:
彰化縣湖南國小許銘堯老師指導

在 Windows 10 x64 1909版,使用BAT快速安裝公文系統與人事服務網(自然人憑證)版

相關內容移往 https://skjhcreator.blogspot.com/2021/02/windows-10-x64-1909bat.html