2012年9月3日 星期一

安裝 Apache Server

圖示及步驟如后:

出現版本與法律聲明,請按NEXT繼續。
出現版權聲明內容,當然要同意嘍,按Next繼續。
 本頁為安裝說明,再按Next繼續。
本頁設定Network Domain與ServerName及錯誤時通知的E-Mail,依個人需求填入。
進入安裝程序,建議不要和系統安裝在同一磁碟機,請選擇自定(Custom)。
請選擇Change更改安裝路徑。

環境設定完成後,按Install執行安裝。

開始安裝嘍!!

 完成Apache的安裝,按下Finish結束。
 注意看看右下角之通知區域中是否出現Apache啟動後的識別標誌,有的話就成功安裝了(那羽毛中的三角型必須要呈現綠色哦,若是紅色表示安裝有問題,將造成無法啟動。
 在瀏覽器輸入http://localhost,如果有看見上圖那表示OK!!

安裝 MyDQL

圖示及步驟如后:

版本與法律聲明,按 Next 繼續。
建議不要和系統在同一磁碟中,請選 Custom繼續。
按 Change 更改安裝路徑後繼續執行。
路徑狀態。
開始安裝必要資訊。
 介紹 MySQL之一 按 Next 繼續。
 介紹 MySQL之二 按 Next 繼續。
已完成前半段安裝,點選 Configure the MySQL Server now 開始配置 MySQL。
歡迎畫面,按 Next 繼續。

。不要標準安裝,請點選 Detailed Configuration 進行自行配置


選擇 Server Machine 環境。
 點選 Multifunctional database 環境。
選擇 Database Path 後繼續。
選擇 Decision Support (Dss/OLAP 環境。
  

選擇 Enable TCP/IP Networking ,Port 3306。
 請選擇 Best Support For Multilingualism (這是告訴 MySQL 其基礎語系)。
勾選 Include Bin Directory in Windows PATH 以利在 DOS 下執行 SQL。
設定 root 進入 MySQL 的密碼。



按下 Execute  執行自我安裝測試。


若系統將上列四項都打勾表示安裝完成了~

安裝 PHP

圖示及步驟如后:

PHP 的版本與說明,請按 Next。
 同意聲明書,當然需要同意嘍,請按 Next 繼續。
進入安裝程序,建議不要和系統在同一磁碟機,請選擇自定(Browse)。
告訴 PHP 您所使用旳 Web Server 是何者?
請選擇 Apache2.2.X (注意版本)並開始安裝。
告訴 PHP 您的 Apache 安裝的 Path ?
請按 Browse 找出正確的 Path。


安裝選項,請將 Extensions 與 Extras 都安裝至硬碟(如下一張圖示)。


按 Next 繼續。
確認無誤後按 Insatll 繼續。
始安裝必要資訊。
恭禧,安裝完成嘍!!
編輯 index.php 輸入http://localhost 若能看見上圖就 OK 了啦!!

2012年9月2日 星期日

分享新系統(Vista)架設 Server 記實

因為個人先前的 Server 等級為P4、2.4GHz、RAM 786MB 運行上已不足應付流量,因此打算它升級,考慮了許久終於在今年(98)年初決定下手了,目前本系統為 Vista、Core2 Quad Q9400 2.66GHz、RAM 4G 給它Run Run 看嘍!!
因為系統升級了且資料都須搬移至新電腦裡,在各軟體相容變數皆不定的前題下,使得在安裝過程中花費了我不少時間修正與查詢,
總算已可上路了,基本設定都沒問題,但總會出現未知的BUG,所幸都一一克服了,以下為本系統安裝過程提供參考。
首先在安裝過程中會因為各程式需要相互關聯與找尋,因此,自己必須先將整個 Sverver 架構雛型確定,並設定環境以預防問題出現,以下為範例:
先建立資料夾
Server 架構(主機)
X:\ServerPath\Apache
X:\ServerPath\PHP
X:\ServerPath\MySQL
Web 架構(網頁)
X:\WebPath\index.html
X:\WebPath\phpMyAdmin
設定程式路徑,將 Apache、PHP、MySQL、phpMyAdmin等程式相關路徑設定好,先找出環境變數路徑:
電腦(右鍵) / 內容 / 進階系統設定 / 環境變數 / 系統變數 / PATH / 編輯 將下列語法加到最後。
X:\ServerPath\Apache\bin;F:\ServerPath\PHP\ext;X:\ServerPath\Mysql;X:\Myweb\phpMyAdmin

開始安裝 Apache 官方網址:http://httpd.apache.org/ 下載最新版
以下以 apache_2.2.11-win32-x86-no_ssl.msi 為例
請參閱 Apache 安裝圖示 (http://lchblogger.blogspot.tw/2012/09/apache-server.html)
找到以下值
#ServerName localhost:80
修改如后(這是要連結網頁的IP)
ServerName http://123.123.123.123:80
找到以下值
#DocumentRoot "F:/ServerPath/Apache/htdocs"
修改如后(這是要連入Server網頁的path)
DocumentRoot "X:/WebPath"
找到以下值
#< Directory "X:/ServerPath/Apache/htdocs" >
修改如后(這是要連入Server網頁的path)
< Directory "X:/WebPath" >
找到以下值(增加index.htm index.php...這是網頁中連入後所要找的第一個程式)
< IfModule dir_module >
  DirectoryIndex index.html index.htm index.php
< /IfModule >
找到以下值(增加下列三語法,這是連入網頁後第一個程式的支援運用程式)
< IfModule mime_module >
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php .htm
    AddType application/x-httpd-php .html
< /IfModule >
根據你的 php 安裝目錄,在下面空白處加上這兩行:(這是告訴Apache您裝的php函式庫path)
LoadModule php5_module "H:/Web/SERVER/PHP/php5apache2_2.dll"
PHPIniDir "H:/WebW/SERVER/PHP"

繼續安裝PHP,官方網址:http://www.php.net/ 取得最新版本
以下以 php-5.2.8-win32-installer.msi 為例
請參閱 PHP 安裝圖示 (http://lchblogger.blogspot.tw/2012/09/php.html)
安裝至F:\ServerPath\PHP路徑
在PHP目徑下找到 php.ini.disc 將其更名為 php.ini
找下列值修改
;default_charset = "iso-8859-1"
改變字編碼為以下
default_charset = "none"
找下列值修改
; Windows: "\path1;\path2"
;include_path = ".;c:\php\includes"
修改如下(注意分號要拿掉)
include_path = ".;F:\ServerPath\php"
找下列值修改
;原值doc_root =
修改如下(這是網頁的路徑)
doc_root = "F:\WebPath"
找下列值
;extension_dir = "./"
修改如下(注意分號要拿掉),這是php延伸函式庫路徑
extension_dir = "X:\ServerPath\PHP\ext"
找下列值將分號去掉
extension=php_mbstring.dll
extension=php_mcrypt.dll
extension=php_mysql.dll
extension=php_mysqli.dll
upload_tmp_dir
upload_max_filesize
到此應該都沒有問題,如需上傳與下載資料則需額外設定其他設定值,如
max_execution_time
max_input_time
memory_limit
post_max_size
以上設定會關係上(下)載檔案的成敗(詳先前心得資料)
用文字編輯器編輯以下語法並命名為 index.php
< ?php
phpinfo()
?>
將它存為 X:\WebPath\index.php ,進入瀏覽器測試一下吧

安裝 MySQL 官方網址:http://www.mysql.com/
下載 mysql-5.0.67-win32.zip 並安裝
請參閱 MySQL 安裝圖示  (http://lchblogger.blogspot.tw/2012/09/mydql.html)
安裝 phpMyAdmin 官方網址:http://www.phpmyadmin.net/home_page/index.php
下載 phpMyAdmin-3.1.2-rc1-all-languages.7z
解壓縮至F:\WebPath\phpMyAdmin
然後將 libraries 子文件夾中的 config.default.php 複製到 phpmyadmin 根目錄下,並重命名為 config.inc.php
找下列值
$cfg['PmaAbsoluteUri'] = '';
修改如下(設定 phpMyAdmin 的路徑
$cfg['PmaAbsoluteUri'] = 'http://localhost/phpMyAdmin';
找下列值
$cfg['Servers'][$i]['auth_type']     = 'cookies';
修改如下(這是以遠端登入方式進入MySQL)
$cfg['Servers'][$i]['auth_type']     = 'http';
打開 Apache 的配置檔 httpd.conf,找到 # Alias /webpath /full/filesystem/path,在下面添加一下代碼(具體路徑根據自己的情況修改):
Alias /phpMyAdmin "X:/WebPath/phpMyAdmin"
< Directory "X:/WebPath/phpMyAdmin" >
AllowOverride None
Options None
Order allow,deny
Allow from all
< /Directory >

以上全套 Server 安裝已完成,Good Luck !!

將目錄中的檔名給列印出來

善用DOS指令中的DIR與 “ > ” 轉向符號,即可輕鬆的將資料名匯出了。
首先要進入DOS畫面,(開始 / 執行 / CMD即可進入DOS)。
於DOS下輸入 dir "c:Documents" /s/b > c: mp.txt (本指令意思是將c:Documents 目錄中的檔案名稱輸出至c: mp.txt,包含子目錄)。
註:dir即是目錄(Directory)之意,””是讓DOS接受長檔名,/S是包子目錄,/B只抓取檔案名,>是輸出至何處。

如何在frame中關閉視窗

例如在a.htm中已分割成letf.htm與right.htm,如何在letf.htm和right.htm關閉視窗呢?

試過了javascript的onClick='javascript:window.close()和HTML的onClick='window.close()都無法成功關閉視窗,

經過幾番的測試與爬文,找到了用onClick='javascript:top.close()的方法就可順利解決此問題,提供分享。

網頁用GET傳遞中文時出現亂碼

當網頁與網頁間相互傳遞訊息(中文),接收端會出現亂碼,該如何解決呢?

可用urldecode(譯解URL編碼字串傳字串,EX:urldecode($string),可順利將中文字型傳遞出去且不會出現討厭的亂碼。

用urlencode(URL編碼字串)可反解譯,EX:urlencode($string),中文會以%加上二個字母或數字(中=%A4%A4)(文=%A4%E5),但其中若有空白鍵時則以(+)加號表示。

session函式

前陣子差點被session這個函式給打敗了,程式碼左改右修都不行,差點癱在電腦前,一直出現Cannot modify header information - headers already sent by...的錯誤訊息讓人百思不解。
俗語說皇天不負苦心人,還好有給它印證,提供給朋友分享:
session的使用它有個前题,就是要在程式的最前面下指令,說明白點就是程式碼一開始就要給它安排坐坐,不然它會"錯"給您看。
其次,也就是這些天來發現的問題,它有可能是你想破頭也想不出來的問題,就如同我的遭遇般~慘,它竟然會和程式的編碼有關,原先我的編碼是utf-8,後來改成big5,說也奇怪它恢復正常工作了,提供給有心人分享嘍!!
以上是個人心得分享,若有高手路過此,還請給予正確的分析與指正。

php.ini的設定

個人的php版本為5.0.2.2,您可至官方網站http://php.net/ 下載較新版本,以下為個人的設定。
在c:\php\找到原始檔為php.ini.dist 改為php.ini注意須成為組態設定檔才行,並修改以下值。
include_path = ".;c:\php" (設定php程式的path)。
doc_root = "d:\ website " (設定根目錄的path,與apache相同)。
extension_dir = "c:\php\ext" (設定php的延伸程式庫)。
extension=php_mbstring.dll (設定php的延伸程式庫)。
extension=php_mysql.dll (設定php的延伸程式庫)。

Apache的連線設定

Apache中的一些設定值它關係著client端與server端的連結速度與回應時間,若無適當的調整,將影響著彼此相互連線狀態不容忽視。
Timeout 300 (預設)
這是設定用戶端連接到你的主機的,當超過300秒用戶端還沒有連入你的系統時就斷線,依現在的網路速度與電腦速度,該值可調低些,否則用戶端會癡癡的等而不耐煩。  <br />
KeepAlive On (預設)
是否保持著持續連線(一個連線可能有多個要求)!
MaxKeepAliveRequests 100 (預設)
在保持著持續連線中,最多允許的連線數目,如果不想限制,可以設成0,官方則建議設大些(可參考官方網站說明)。
KeepAliveTimeout 15 (預設)
在同一個連線的Client端,在下一個需求沒有在預設的15秒內將輸求送出,那麼該連線會被視同斷線處理。

Apache的設定

所用的Apache版本為2.0.52,在新的版本也許會不同,以下為個人使用版本的設定:

在C:\Program Files\Apache Group\Apache2\conf\httpd.conf中找到以下值並修改如后:
一、DocumentRoot "D\website”(D\website為自己想設定的主機根目錄路徑,也許你想在其他磁碟機亦無妨,只要你高興且要能找到並對映到它即可)。

二、DirectoryIndex index.html index.htm index.php index.html.var(index.html ...為進入根目錄時首先載入的程式型式,端視你要用哪種程式撰寫網頁)。

且在檔案的最後面加入以下三列code(此為與PHP設定關聯)
一、LoadModule php5_module "c:/php/php5apache2.dll"
二、AddType application/x-httpd-php .php
三、#PHPIniDir "C:/php"

DOS模式下顯示、輸入中文

有時候在DOS模式中想顯示或輸入中文,卻常出現亂碼或無法進入中文輸入法模式,以下可藉由在DOS模式下輸入chcp 950將可正常顯示與輸入中文哦。

DOS視窗下全螢幕的切換

當在DOS視窗工作時,若將視窗選擇為全螢幕後,嘿嘿資料佔滿了全螢幕真的粉方便工作,但要切換回來時才發現按右鍵卻都沒反應了,這回糟了一個糕,該怎麼將它改回原來的模式呢???
別急!別急!只要按下Alt+Enter,就可來回切換螢幕嘍!!(這是密技哦~~)

Assembly 第一課

Assembly Language處理型態是一連串的暫存器相互將值傳遞、堆疊並加上符號指令組合而成的程式,而這些核心"容器"肩負著完成任務的重要工作,所以學習該語言就要從了解各式暫存器下手嘍cs、DS、SS分別為程式、資料與堆疊等區段定位用。

AX、BX、CX與DX等又作為累加器、作為索引以延伸定址、計算與特殊計算用,其次32位元則用EAX、EBX、ECX與EDX。

SI、DI、ESI、EDI又分別為16位元與32位元的索引暫存器,用以延伸地址並可用來加減及處理字元用。

還有OF、DF、IF、TF、SF、ZF、AF、PF、CF等旗標暫存器。

光看這些就有些眼花撩亂了,還有上百個符號指令集要搭配和運用,再經由Complier與Link後方能成為我們所熟悉的可執行檔了,不過現今的組合語言這種低階語言已不再討喜了,並且早已被Java或C++等高階語言所取代了。

我之所堅持無非是"好奇心"與"為什麼"使然,是否曾想過當你移動滑鼠點複製、貼上等指令時,有沒有想過它的背後是如何運作的,它為什麼會完成我們想要的工作,為什麼會這樣,為什麼??是的,組合語言它有助於我解開與探詢為什麼,雖然它非常的枯燥與艱澀,但是為了瞭解"為什麼"所以我慢慢走進了Assembly Language的世界,只為解開心中的迷惑。