cpu@cnblog.com
.Net的思考
今天闲来唔事安装 IIS + Apache + PHP,, 结果发生了很多错误, 一直安装不成功...还好google 了一下,,发现了错误的来源, 并发现了几个好网站:
 (关键字同心得都会用BOLD体来表示...)
 

(心得: 1. 用netstat -abn 去检查端口运行情况;

          2. 可以修改 httpd.conf文件去改变apache的运行情况;

          3. 原来Apache同IIS都把 port 80 当作default port, 所以正常情况下他们不能共用...除非修改他们的port 值..)

          4. 还有就是原来Oracle也是占用了80 port为default port的.. )
 
================================
 
1. 安裝 Apache 2.0.55 伺服器

這是將 Apache 裝在 Windows 上的教學。
首先到官網的下載頁面 下載最新的版本,目前的版本是 2.2.0。
因為 2.2.0 沒有給 Windows 的自動安裝程式,對很多人來說也並不適合。

想安裝 2.2.0 的可以到 Apache Lounge 下載 Windows 的安裝程式。
這個網站需註冊才能下載。


這篇教學會假設你下載的是 2.0.55 Win32 Binary 版本
給 Windows 主機的安裝程式非常簡單,下面沒看到的頁面只需要按 Next 繼續就可以了。

下載完 Apache 之後執行它的 .msi 檔案,你會看到下面這個頁面:

點 Next 會到授權合約。

選 "I accept the terms in the license agreement" 然後 Next。


之後會要你輸入主機的資料。

Network Domain 輸入不加 www 的網址。
Server Name 輸入加上 www 的網址。
Administrator's Email Address 輸入你的電子郵件。
之後選 "for All Users, on Port 80, as a Service -- Recommended"。
這個選項會讓 Apache 使用連接埠 80,記得有用防火牆或 router 的記得將連接埠 80 打開。
它也會在重新開機後自動啟動。
有些軟體像 IIS 和 Skype 會佔用連接埠 80,記得將他們移除再安裝 Apache。
想知道什麼軟體佔用了哪些連接埠,打開 cmd 然後輸入 netstat -abn。
如果你不想移除任何軟體,選 "only for the Current User, on Port 8080, when started Manually." 可以繼續安裝 Apache。
連接埠之後可以改 httpd.conf 裡的 Listen 指令。

(心得: 1. 用netstat -abn 去检查端口运行情况;

          2. 可以修改 httpd.conf文件去改变apache的运行情况;

          3. 原来Apache同IIS都把 port 80 当作default port, 所以正常情况下他们不能共用...除非修改他们的port 值..)

          4. 还有就是原来Oracle也是占用了80 port为default port的.. )

之後選 Custom 然後 Next。


在來是改 Apache 安裝的目錄。點 Change 之後選 C:\。
為了避免不必要的問題,建議目錄不要包括空格。


最後按 Install 後繼續安裝程序。


如果安裝成功,打開瀏覽器到 http://localhost/ 會看到下面這個網頁:

之後你會在右下角看到 Apache 的圖示,如果亮綠燈表示啟動成功。

如果出現紅色,到 C:/Apache2/logs 打開 error.log 然後移到檔案的最下面看錯誤訊息。

接下來是改 Apache 裡面的 httpd.conf 檔案。
所有伺服器的功能都是用 httpd.conf 來設定,它的位置是 C:\Apache2\conf。
用普通的文字檔打開 httpd.conf,它種共分成三個部份。
你需要注意的是第二個部份 (Section 2: 'Main' server configuration)。
首先到 DocumentRoot "C:/Apache2/htdocs",將它改成你放網頁的目錄。
如果你的網頁是在 D:/website 裡面,將它改成:
程式碼:
DocumentRoot "D:/website"

接下來是 <Directory "C:/Apache2/htdocs">,一樣改成你放網頁的目錄。

在來是找 DirectoryIndex,它可以用來改變首頁的副檔名。
如果你的首頁是 index.php,將 DirectoryIndex 改成下面:
程式碼:
DirectoryIndex index.html index.html.var index.php

改過 httpd.conf 後記得重開 Apache。打開 Apache 的右下角圖示可以讓你重新啟動。

最普通的主機設定只要改這些就可以了,如果要將你的網頁放在網路上,你必須要設定 DNS。
 
 
 
===========================================================
 
 
2. 安装php:
 
安裝 PHP 5.1.1,設定 Apache

這篇教學會教你怎麼在 Windows 下安裝 PHP,然後讓 Apache 能夠顯示 .php 的網頁。
PHP 是什麼可以到古狗問問,這裡就不多做介紹。

目前 PHP 有兩個版本,PHP 4x 和 PHP 5x。
目前開發的版本是 5x,而 4x 是最穩定的版本,軟體支援度也較高。
該安裝哪個版本完全看你,這篇教學假設你安裝的是 5.1.1,4x 的步驟會盡量帶到。

PHP 可以到 官方網站下載
你可以下載 PHP 5.1.1 installer (自動安裝程式) 或 zip package (壓縮檔)。
建議下載壓縮檔的版本,安裝程式不包括外部的附加套件,也只能使用 CGI 模式。

下載完 PHP 之後將它解壓縮到 C:\php (4x 到 C:\)。

你可以選擇用 Apache module 或 CGI Binary 的模式安裝 PHP。
建議用 Apache module 的模式,不管哪種都要讓 Apache 和 PHP 能夠找到 php5ts.dll (5x) 或 php4ts.dll (4x)。
你有下面三個選擇:
  • 將 php5ts.dll 或 php4ts.dll 複製到 Windows 的目錄 (C:\windows 或 C:\winnt)
  • 將 php5ts.dll 或 php4ts.dll 複製到 Apache 的目錄裡 (C:\Apache\bin)
  • 或設定 Windows 的環境路徑

設定 Windows 的環境路徑是最好的方法。這樣可以不用移動任何檔案,更新也只需要複製 PHP 的目錄就可以了。

不知道怎麼設定環境路徑可以看這篇:設定 Windows 的環境路徑

不管是用哪種方法,只要讓 Apache 和 PHP 能找到上面的檔案就 ok la。

接下來是建立 PHP 的設定檔。在 PHP 的目錄裡面有 php.ini-dist 和 php.ini-recommended。
之後把 php.ini-recommended 改成 php.ini,這是官方建議使用的設定檔。
如果沒有設定環境路徑,記得把 php.ini 複製到 C:\windows 或 C:\winnt 裡面。

一開始可以不用改 php.ini 裡面的設定值,但是要改 Apache 的 httpd.conf。

如果你用的是 CGI Binary 模式,打開 httpd.conf 然後把下面的訊息放到檔案最後面:
程式碼:
ScriptAlias /php/ "C:/php/"
AddType application/x-httpd-php .php

#For PHP4
#Action application/x-httpd-php "/php/php.exe"

#For PHP5
Action application/x-httpd-php "/php/php-cgi.exe"
如果安裝 4x 記得把 # 拿掉,然後註解 For PHP5。

如果你用的是 Apache module 模式,用下面的訊息:
程式碼:
#For PHP4
#LoadModule php_module "c:/php/sapi/php4apache2.dll"
#AddType application/x-httpd-php .php

#For PHP5
LoadModule php5_module "c:/php/php5apache2.dll"
AddType application/x-httpd-php .php

#Configure the path to php.ini
PHPIniDir "C:/php"
一樣 4x 記得把 # 拿掉,然後註解 For PHP5。
注意最後面的 PHPIniDir "C:/php" 是告訴 Apache php.ini 的位置。
如果你把 php.ini 放在 C:\windows 裡面可以不用加那一項。

改完 httpd.conf 和 php.ini 記得要重新啟動 Apache。

最後要看 PHP 有沒有安裝成功,建立一個 .php 檔案然後輸入下面訊息:
程式碼:
<?php
phpinfo
();
?>

phpinfo() 的用法可以看看這篇:phpinfo() 用法

如果有看到 PHP 的頁面表示安裝成功。

如何使用 PHP 的附加套件

接下來是使用 PHP 的附加套件。附加套件可以讓你的程式使用各種的函式。
PHP4 的套件是放在 extensions 目錄,PHP5 的是 ext 目錄。

首先打開 php.ini 然後找 extension_dir,然後目錄改成 C:\php\extensions (4x) 或 C:\php\ext (5x)。
設定完畢之後儲存 php.ini 然後重新啟動 Apache。
如果沒有出現錯誤訊息表示路徑正確。

PHP 一開始不會把全部的套件都打開,你必須要在 php.ini 找需要的套件然後將前面的 ; 拿掉。
譬如說要打開 GD2 的套件,在 php.ini 找 ;extension=php_gd2.dll 然後把 ; 拿掉。
; 符號是用來註解掉不需要的套件。
最後儲存 php.ini 然後重新啟動 Apache。


注意如果你安裝的是 PHP4,MySQL 的套件會自動幫你安裝。
PHP5 必須要把 ;extension=php_mysql.dll 前面的 ; 拿掉。
如果你沒有設定 PHP 的環境路徑,記得把 libmysql.dll 放到 C:\windows 裡面。
 
 ========================================================
 
3. 如何设定windows的环境路径
 
設定 Windows 的環境路徑

這篇教學會教你怎麼設定 Windows 的環境路徑。
設定環境路徑可以讓軟體順利的找到它們需要的檔案。

下面用的是英文版的 Windows XP,應該不難看懂吧?

首先到桌面按 My Computer 的右鍵,選 Properties:


在來選 Advanced 頁面:

然後點 Environment Variables。

在 Environment Variables 裡面, System variables 裡面選 Path 然後點 Edit。


最後在 Variable value: 裡面輸入路徑的位置。

譬如說要設定 PHP 的環境路徑,在最後面輸入 C:\php;。
記得每個路徑是用 ; 分開。
 
=============================================
 
4. 如何安装 IIS
 

WEB服务器安装教程:如何安装IIS - WINDOWS XP下IIS的安装教程(凡人网络原创VenShop.Com

原创作者:VenShop.Com 网站地址:http://www.venshop.com
安装条件:Windows XP操作系统 + 系统安装光盘
其它说明:windows2000下IIS安装和Windows2003下IIS安装可以参照该教程,大同小异
安装步骤:
1、插入windows xp安装光盘,打开控制面板,然后打开其中的“添加/删除程序”
2、在添加或删除程序窗口左边点击“添加/删除Windows组建”
3、捎带片刻系统会启动Windows组建向导,在Internet信息服务(IIS)前面选勾,点击下一步:

 

4、系统安装成功,系统会自动在系统盘新建网站目录,默认目录为:C:\Inetpub\wwwroot
5、打开控制面板-性能和维护-管理工具-Internet 信息服务:

 

6、在默认网站上点击右键-选择属性:

 

7、点击主目录:在本地路输入框后点击浏览可以更改网站所在文件位置,默认目录为:C:\Inetpub\wwwroot
   在执行权限后面点击配置-调试-教本错误信息,选中:向客户端发送文本错误信息:处理 URL 时服务器出错。请与系统管理员联系。 
   点击文档:可以设置网站默认首页,推荐删除iisstart.asp,添加index.asp和index.htm
   点击目录安全性:点击编辑可以对服务器访问权限进行设置
8、把凡人网络购物系统V7.0文件复制到你选择的网站目录下,假设你选择的目录为为默认目录:C:\Inetpub\wwwroot
9、把frshop.rar解压之后的文件复制到C:\Inetpub\wwwroot\shop下即可
10、您可以通过以下方式访问商城:
    http://localhost/shop/ 或 http://127.0.0.1/shop/ 或 http://计算机名/shop/ 或 http://本机IP地址/shop/ 访问
    其它人可以通过http://计算机名/shop/ 或 http://本机IP地址/shop/ 访问
11、如果您有域名,把域名解析到本地IP地址,即可通过http://域名/shop/
    注意一般机器为局域网上网,网站只能在局域网内部访问,外部一般访问不了,但是可以安装动态解析软件实现外网访问
    在此不做详细解释,可以去网上搜索“动态解析”可以找得到
12、个人服务器最经常遇到数据库无法更新的问题,解决办法请看http://www.venshop.com/book/list.asp?id=90.venshop.com/book/list.asp?id=90

======================================

5. 如何安装 mySql:

安裝 MySQL 5.0.17 資料庫

這篇教學會教你怎麼安裝 MySQL,還有用新的 Instance Config Wizard 設定資料庫環境。

首先到 官方網站下載 下載 MySQL 5.0x,目前最新的版本是 5.0.17。
你可以下載 4.1 或 5.1,官方建議下載的是 5.0。
進入下載頁面之候選 "MySQL 5.0 -- Generally Available (GA) release (recommended)"。
然後選 "Windows Essentials (x86)",這個版本包含自動的安裝精靈。

下載完之後開始安裝步驟,你會看到下面的圖片:


之後選 Custom,可以讓你改變安裝的目錄:


點 Change 然後安裝目錄選 C:\mysql\:


之後點 Install:


安裝完畢之後會馬上問你要不要執行設定的精靈,打勾之後按 Finish:


按 Next:


在來選 Detailed Configuration:


依照你的主機環境選擇下面的設定:

第一個如果主機只是用來測試,第二個如果是伺服器的主機,第三個如果主機只有安裝 MySQL。

在來是選擇資料庫類型。你可以選擇用 InnoDB,MyISAM,或兩種一起使用:


在來是選擇 InnoDB 資料庫所用的空間位置:


然後選擇允許客戶同時間連結到資料庫的數量:

普通的主機選第一個就可以了。

在來是允許 TCP/IP,然後選擇連接埠。
你也可以開啟新版使用的 Strict Mode。
如果你用很多舊的軟體,建議把 Strict Mode 關掉。


然後選擇資料庫所用的編碼:


建議將下面頁面的兩個設定打開:

第一個會在重新開機後自動啟動 MySQL,第二個可以讓你在 cmd 裡面執行 MySQL 的指令。

接下來可以把 "Modify Security Settings" 關閉。
關閉之後 MySQL 可以用 root 帳號,沒有密碼登入。
帳號之後可以用 phpmyadmin 來改變。


最後按 Execute,如果沒有問題會顯示成功設定的訊息:


安裝完畢之後你會在 MySQL 的目錄裡面找到 my.ini 的檔案。
這個檔案可以讓你改變主機的設定。

接下來請務必看 phpMyAdmin 的教學來設定你的帳號。

=======================================================

6. 安装 phpMyAdmin

安裝 phpMyAdmin 2.7.0-sp1

phpMyAdmin 是一個管理 MySQL 的 GUI。
它可以透過網路來管理 MySQL 資料庫。

首先到 官方下載頁面 下載最新的 phpMyAdmin。
然後將下載的檔案解壓縮到你放網頁的上一層目錄。
譬如說你的網頁目錄是 D:\website,將 phpMyAdmin 放在 D:\ 裡面。
這樣可以保護目錄裡面的檔案。
然後將目錄名改成好記的名稱,例如 phpmyadmin。

在來是設定 Apache 的 httpd.conf,讓它能夠找到 phpMyAdmin 的目錄。
打開 httpd.conf 然後找:

程式碼:
Alias /icons/ "C:/Apache2/icons/"

<Directory "C:/Apache2/icons">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

在它後面加上:

程式碼:
Alias /phpmyadmin "D:/phpmyadmin/"

<Directory "D:/website/phpmyadmin/">
    Options Indexes FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

儲存檔案然後重開 Apache。

接下來是設定 phpMyAdmin 的設定檔。
打開 phpMyAdmin 目錄裡面的 config.default.php。
首先輸入任何的英文字到 $cfg['blowfish_secret'] = '',例如

程式碼:
$cfg['blowfish_secret'] = 'open.38.com';

在來找 $cfg['Servers'][$i]['auth_type'] 然後把 config 改成 cookie 或 http。
這樣進入 phpMyAdmin 就必須要先登入。

結束之後打開瀏覽器到 http://localhost/phpmyadmin 就會看到登入頁面。
如果有問題可以試著輸入 phpMyAdmin 的網址到 config.default.php 裡面的 $cfg['PmaAbsoluteUri'] = ''。

如果你安裝 MySQL 的時候沒有設定帳號,用 root 無密碼登入,登入後記得建立你的帳號,然後刪除 root。
進入 phpMyAdmin 之後你會看到下面這個:

然後點 Privileges 來管理帳號。

之後你會看到 Add a new User 的連結,到裡面建立你的帳號。

最後回到 Privileges 頁面將 root 和 Any 照下面的設定刪除:


最後重新開瀏覽器就可以用你建立的帳號登入了。

==================================

7. 安裝 ActivePerl 5.8.7.815

這篇教學會教你怎麼讓 Apache 執行 perl 的檔案。
讓 Apache 支援 perl 可以讓你執行 .pl 和 .cgi 的程式。
通常 CGI 的程式都是用 perl 寫的。

給 Windows 系統,最快的方法是安裝 ActivePerl。
ActivePerl 可以到 官方網站下載
目前的版本是 5.8.7.815,Windows 可以下載 MSI 的自動安裝程式。
如果你是用的舊的 Windows 系統,記得安裝下載頁面裡的更新檔。

下載完之後執行 ActivePerl 檔案,你會看到這個:


繼續之後會看到這個,記得安裝在 C:\Perl 下:


之後會問你要不要改變環境路徑和建立 perl 檔案的副檔名,兩個都勾選:


最後按 Install:


如果沒問題,按 Finish。

安裝完畢之後可以不做任何設定,將你的 perl 檔案放在 \cgi-bin 裡面就可以執行了。
任何出現在 \cgi-bin 裡的檔案都會以 perl 來處理,不管檔名是 .cgi 還是 .pl。
如果你要改變這個路徑,打開 Apache 的 httpd.conf 然後找:

程式碼:
ScriptAlias /cgi-bin/ "C:/Apache2/cgi-bin/"

<Directory "C:/Apache2/cgi-bin">
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</Directory>

將上面的兩個路徑改成你放 perl 檔案的路徑。

如果你要讓其它目錄也可以執行 perl 檔,有兩個步驟。
第一告訴 Apache 哪種檔名是 perl 檔,打開 httpd.conf 然後找:

程式碼:
AddHandler cgi-script .cgi

在 .cgi 後面加上 .pl,這樣只要檔名是 .cgi 或 .pl 都會以 perl 來處理。

在來是讓目錄可以執行 perl 檔,例如說網頁的根目錄。
如果你的根目錄是 D:\website,打開 httpd.conf 改成下面:

程式碼:
<Directory "D:/website">
    Options Indexes FollowSymLinks +ExecCGI
    ...
</Directory>

注意上面的 +ExecCGI,它會將 .cgi 和 .pl 的檔案當成 perl 檔來處理。

你也可以在其它目錄執行 perl 檔,自行建立 <Directory> 就可以了。

下面是一個 perl 程式,可以讓你測試 Apache 是否支援 CGI。
將下面的程式儲存成 test.pl 然後放在你的 CGI 目錄執行:

程式碼:
#!/perl/bin/perl.exe

print "Content-type: text/html\n\n";
print "<html><body>\n";
print "<hr>Hello, world!<br><hr>\n";
print "</body></html>\n";


最後如果照上面還是沒辦法執行 perl 檔案,試著將下面的指令放在 httpd.conf 裡面:

程式碼:
ScriptInterpreterSource registry

這會告訴 Apache 到 registry 裡面找 perl 的執行程式。

posted on 2007-02-12 22:48  cpu  阅读(1147)  评论(0编辑  收藏  举报