2011-08-18 16:42

[轉載] apache2ctl 指令

轉載自:Ubuntu系統網絡應用服務器Apache配置基礎

apache2ctl 是 Apache2 服務器的前端程序。他可以幫助管理員控制 Apache2 後台 daemon 的功能。

apache2ctl -v
顯示 apache 的版本。
apache2ctl -V
顯示 apache 的版本和編譯參數。
apache2ctl -h
輸出命令列選項的簡要說明。
apache2ctl -l
輸出一個靜態編譯在服務器中的模塊的列表。 它不會列出使用 LoadModule 指令動態加載的模塊。
apache2ctl -L
輸出一個指令的列表,并包含了各指令的有效參數和使用區域。
apache2ctl -t
僅對配置文件執行語法檢查。
apache2ctl -t -D DUMP_VHOSTS
apache2ctl -S
顯示虛擬主機配置的詳細信息。
apache2ctl -t -D DUMP_MODULES
apache2ctl -M
顯示動態模組加載的詳細信息。
apache2ctl start
啟動 apache2 daemon。
apache2ctl stop
停止 apache2 daemon。
apache2ctl restart
重新啟動 apache2 daemon。
apache2ctl status
顯示一個簡要的狀態報告。
apache2ctl graceful
優雅地重新啟動 apache2 daemon。 如果 daemon 尚未啟動,則啟動它。它和標準重新啟動的不同之處在於:不會中斷當前已經打開的連接,也不會立即關閉日誌。這意味著,如果在日誌滾動腳本使用它,則在處理日誌之前必須加入一個實實在在的延遲,以確保老的日誌文件在被處理前已經關閉。在重新啟動 daemon 之前,此命令會使用 configtest 自動檢查配置文件,以確保 apache 不會死掉。
apache2ctl graceful-stop
優雅地停止 apache2 daemon。 它和標準停止的不同之處在於:不會中斷當前已經打開的連接,也不會立即關閉日誌。
apache2ctl configtest
執行一次配置文件語法檢查。 它解析配置文件,並報告 Syntax Ok 或者是特定的語法錯誤詳細信息。
2011-08-18 15:10

[Ubuntu] Apache 未設定 ServerName 造成的警告

Ubuntu 下的 Apache 有時候在啟動時會出現以下的警告訊息:
Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName

由於沒有任何 ServerName 的設定造成的警告,只要在 /etc/apache2/apache2.conf 中加入 ServerName localhost 的預設值就不會出現這個錯誤了。

這個問題我之前也遇到過,但不常發生,久了就忘記該把設定寫在哪裡了,因為可以設定的地方有三四個,為了遵守統一的規則才不會亂。

當要建立多個虛擬主機時,只要在 <VirtualHost *:80> 中才去覆寫 ServerName my_host_name 就不會衝突了。

2011-07-21 15:49

[C語言] strtok 切開字串

#include <string.h>

char *strtok(char *str, const char *delim);

strtok 提供的功能是將字串依照所設定的切分符號字串分解。

#include <stdio.h>
#include <string.h>

int main(int argc, char **argv){
    if (argc != 2) {
        fprintf(stderr, "Usage:  %s <list>\n", argv[0]);
        return 1;
    }

    /*將字串複製到新的空間*/
    char *temp = strdup((const char*)argv[1]);
    char *token;

    /*取出字段*/
    token = strtok(temp, ",");
    while (token != NULL){
        puts(token);

        /*取得下一個字段*/
        token = strtok(NULL, ",");
    }

    puts(argv[1]);
    puts(temp);

    /*釋放剛剛複製的空間*/
    free(temp);

    return 0;
}
2011-07-21 14:20

[轉載][C語言] memcpy 複製指定長度的字串

轉載自:C Language -memcpy

#include <string.h>

void *memcpy (void *destination, const void *source, size_t num);

memcpy 提供的功能是烤貝記憶體中指定的資料長度製另外一個記憶位置中。

#include <stdio.h>
#include <string.h>

int main(int argc, char **argv){
    char str[256];

    memcpy(str, "memcpy test", 7);

    printf("str = (%s)\n", str);
    // str = (memcpy )

    return 0;
}
2011-07-21 14:04

[轉載][C語言] memset 設定記憶體空間的值

轉載自:C Language -memset

#include <string.h>

void *memset(void *s, int c, size_t n);

memset 設定位元組中的位元值,設定的方式從s 開始將n 個位元組設定成為c 的位元值並回傳s,經常運用的範圍是在將位元組的位元值清為0。

#include <string.h>

int main(){
    /*將str陣列中所有的值設定為0*/
    char str[10+1]; 
    memset(str, 0x00, sizeof(str));
    return 0;
}
2011-07-21 13:23

[C語言] realpath 取得真實路徑

realpath 真是一個方便又好用函數,簡簡單單就可以取得一個路徑的絕對路徑,還可以檢查檔案是否存在。


#include <stdlib.h>

char *realpath(const char *path, char *resolved_pa​​th)

函數說明:realpath()用來將參數 path 所指的相對路徑轉換成絕對路徑後存於參數 resolved_pa​​th 所指的字符串數組或指針中。
返回值: 成功則返回指向 resolved_pa​​th 的指針,失敗返回 NULL,錯誤代碼存於 errno。

PS:當路徑檔案不存在時也會丟出 NULL,但 resolved_pa​​th 中仍會有化簡後的路徑。


#include <stdio.h>
#include <unistd.h>

int main(int argc, char **argv){
    if (argc != 2) {
        printf("Usage: %s <file>\n", argv[0]);
        return 1;
    }

    char path[1024];
    char *exist;

    exist=realpath(argv[1], path);

    /*經過化簡後的路徑*/
    puts(path);

    /*如果檔案不存在將會是 NULL*/
    if(exist==NULL){
        puts("NULL");
    }else{
        puts(exist);
    }

    return 0;
}
2011-07-20 18:51

HTML 標籤一覽

之前在做員工教育時整理的 HTML 標籤一覽,順便分享出來。

檔案連結:HTML 標籤一覽
2011-07-20 18:50

HTML meta 彙整

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<!--網頁文件的編碼格式-->

<meta http-equiv="Content-Language" content="zh-TW" />
<!--網頁內容的語言-->

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
<meta http-equiv="X-UA-Compatible" content="IE=9, IE=8, chrome=1" />
<!--指定 IE 頁面呈現所使用的渲染引擎-->

<meta http-equiv="X-Frame-Options" content="deny" />
<!--限制頁面中Frame的使用方式-->
<!--   sameorigin – 只允許來自同一個網域的頁面嵌入-->
<!--   deny – 防止任何頁面的嵌入-->

<meta http-equiv="Date" content="Wed, 16 Feb 2011 22:34:13 GMT" />
<!--網頁內容的建立日期-->

<meta http-equiv="Last-Modified" content="Mon, 03 Jan 2011 17:45:57 GMT" />
<!--網頁內容的修改日期-->

<meta http-equiv="Location" content="URL=http://www.w3schools.com" />
<!--宣告此網頁的絕對制式資源位址-->

<meta http-equiv="Set-Cookie" content="w3scookie=myContent;expires=Fri, 30 Dec 2011 12:00:00 GMT; path=http://www.w3schools.com" />
<!--設定cookie,如果網頁過期,存盤的cookie將被刪除,需要注意的也是必須使用GMT時間格式-->

<meta http-equiv="Windows-Target" content="_top" />
<!--強制頁面在目前的視窗中以獨立頁面顯示,可以防止網頁被別人當作一個frame頁嵌入-->

<meta http-equiv="Refresh" content="300" />
<meta http-equiv="Refresh" content="10;URL=http://www.w3schools.com" />
<!--定時讓網頁在指定的時間內重新整理,或是跳轉到指定頁面-->

<meta http-equiv="Expires" content="Mon,12 May 2001 00:20:00 GMT" />
<!--設定網頁內容暫存的到期時間-->

<meta http-equiv="Pragma" content="no-cache" />
<!--禁止瀏覽器從近端機的緩存中調閱頁面內容(僅 IE 適用)-->

<meta http-equiv="cache-control" content="no-cache" />
<!--瀏覽器的緩存控制-->
<!--   public - 可放在公用的緩存區-->
<!--   private - 只能放在私人的緩存區-->
<!--   no-cache - 不許存放在緩存區-->
<!--   no-store - 可以暫時存放緩存區,但是不許長存--> 




<meta name="KeyWords" lang="EN" content="key1,key2,key3" />
<meta name="KeyWords" lang="zh-TW" content="關鍵字1,關鍵字2,關鍵字3" />
<!--網頁內容的關鍵字-->

<meta name="Abstract" content="內容摘要" />
<!--網頁內容的摘要-->

<meta name="Description" content="內容描述" />
<!--網頁內容的描述-->

<meta name="Generator" content="Aptana 2" />
<!--製作網頁的工具名稱-->

<meta name="Author" content="作者名稱" />
<!--網頁製作者的名稱-->

<meta name="Reply-To" content="abc@mail.com" />
<!--聯繫人的 Email-->

<meta name="Website" content="http://www.website.com/" />
<!--網頁製作者的網站-->

<meta name="owner" content="http://www.website.com/" />
<!--定義所有者的網頁或網站-->

<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<!--viewport的作用是告訴瀏覽器,目前裝置有多寬(或多高),以便在縮放時有個基準-->
<!--   width - viewport的寬度(Number或 device-width)-->
<!--   height - viewport的高度(Number或 device-height)-->
<!--   initial-scale - 初始的縮放比例(0.25~5)-->
<!--   minimum-scale - 允許用戶縮放到的最小比例(0.25~5)-->
<!--   maximum-scale - 允許用戶縮放到的最大比例(0.25~5)-->
<!--   user-scalable - 用戶是否可以手動縮放(1/0或yes/no)-->

<meta name="Robots" content="noodp,noydir" />
<!--搜尋引擎檢索設定-->
<!--   all - 內容將被檢索,且頁面上的連結可以被查詢-->
<!--   none - 內容將不被檢索,且頁面上的連結不可以被查詢-->
<!--   index - 內容將被檢索-->
<!--   follow - 頁面上的連結可以被查詢-->
<!--   noindex - 內容將不被檢索,但頁面上的連結可以被查詢-->
<!--   nofollow - 內容將不被檢索,頁面上的連結可以被查詢-->

<meta name="Googlebot" content="nofollow" />
<!--針對 Google bot 的robots-->

<meta name="baiduspider" content="nofollow" />
<!--針對百度 bot 的robots-->

<meta name="classification" content="Computer" />
<!--告知搜索引擎網站(頁)應被列到哪個目錄下-->

<meta name="copyright" content="2011© W3Schools.com" />
<meta name="doc-rights" content="2011© W3Schools.com" />
<!--網頁的版權聲明-->

<meta name="Distribution" content="Taiwan" />
<!--描述網站(頁)的發佈地-->
<!--   web - 為全面互聯網-->
<!--   intranet - 只為內部網路-->
<!--   global - 全球性網頁-->
<!--   local - 本地端網頁-->
<!--   Intern use - 測試網頁-->

<meta name="doc-class" content="Completed" />
<!--指定文件的完成狀態-->
<!--   Completed - 已完成-->
<!--   Draft - 草稿-->
<!--   Living Document - 動態文件-->
<!--   Published - 發佈-->

<meta name="DownloadOptions" content="noopen" />
<!--控制下載對話匡上的按鈕顯示-->
<!--   noopen - 隱藏[開啟]的按鈕-->
<!--   nosave - 隱藏[儲存]的按鈕-->

<meta name="name" content="My document" />
<!--指定文件名稱-->

<meta name="rating" content="" />
<!--網頁內容分級-->
<!--   14 years - 14歲以上-->
<!--   general - 普通-->
<!--   mature - 成年人-->
<!--   restricted - 限制-->
<!--   safe for kids - 孩童-->

<meta name="resource-type" content="document" />
<!--告知這個網頁的形式是文件-->

<meta name="revisit-after" content="7 days">
<!--搜尋引擎檢索器多久之後來造訪一次-->

<meta name="其他" content="" />
<!--你可以定義自己 meta 名稱與描述-->




<!--[針對 IE 的設定]-->

<meta name="MSSmartTagsPreventParsing" content="yes"/>
<!--防止微軟頁面編輯軟體在頁面上自動添加標籤-->

<meta http-equiv="imagetoolbar"  content="no"/>
<!--關閉IE的圖片管理工具列-->

<meta http-equiv="MSThemeCompatible" content="no" />
<!--關閉XP的藍色立體按鈕系統顯示樣式-->

<meta http-equiv="Pics-label" content="">
<!--網頁等級升等職稱,在IE的internet選項中有一項內容設定,可以防止瀏覽一些受限制的網站,而網站的限制層級就是通過meta內容來設定的-->

<meta http-equiv="Page-Enter" content="revealTrans(duration=10,transtion=50)">
<meta http-equiv="Page-Exit" content="revealTrans(duration=20,transtion=6)">
<!--設定IE進入和離開頁面時的特殊效果-->