一般寫 PHP 程式都是放在 <?php ….. ?> 中間,直譯器才會去執行程式碼。如果你想偷懶使用 <? … ?> 就必須到 php.ini 修改一項設定:short_open_tag = On
標籤: 網路架站
php.ini extension setting
聽 Aleiku 說 Mediawiki 需要使用到 php-xml 模組,想說用 make install clean 會比較輕鬆一點。開始設定 wiki 的時候後出現沒有 php-xml 的錯誤訊息,這時候去查了一下 ports,還蠻正常的啊
> pkg_info | grep php
php5-5.2.3 PHP Scripting Language (Apache Module and CLI)
php5-bz2-5.2.3 The bz2 shared extension for php
php5-ctype-5.2.3 The ctype shared extension for php
php5-gd-5.2.3 The gd shared extension for php
php5-gettext-5.2.3 The gettext shared extension for php
php5-iconv-5.2.3 The iconv shared extension for php
php5-mbstring-5.2.3 The mbstring shared extension for php
php5-mcrypt-5.2.3 The mcrypt shared extension for php
php5-mysql-5.2.3 The mysql shared extension for php
php5-mysqli-5.2.2 The mysqli shared extension for php
php5-openssl-5.2.2 The openssl shared extension for php
php5-openssl-5.2.3 The openssl shared extension for php
php5-pcre-5.2.3 The pcre shared extension for php
php5-readline-5.2.3 The readline shared extension for php
php5-session-5.2.2 The session shared extension for php
php5-session-5.2.3 The session shared extension for php
php5-simplexml-5.2.3 The simplexml shared extension for php
php5-spl-5.2.3 The spl shared extension for php
php5-xml-5.2.3 The xml shared extension for php
php5-zlib-5.2.2 The zlib shared extension for php
php5-zlib-5.2.3 The zlib shared extension for php
在去看 /usr/local/etc/ 才知道原來 php.ini 裡面並沒有 extension 的設定,而是另外存在 php/etensions.ini 裡面所以要自己在 php.ini 中加入設定檔的位置:Include php/extensions.ini
好了以後再 apachectl restart。
讓 IIS 6.0 可以執行 ASP
IIS 6.0 有個討厭的安全性設定,剛剛安裝好不會馬上讓你可以執行 ASP,反而會出現「錯誤404」。
先到開始->程式集->系統管理工具->網際網路資訊服務(IIS),在左邊的目錄找到「網頁服務延伸」,點下後會在右方看到以下的畫面:
把「Active Server Pages」改為「允許」就可以執行 ASP 了。
另外,要讓伺服器支援「../xx.asp」的上層路徑寫法,也要手動啟用。在 IIS 管理員的預設的網站->主目錄->設定->選項,把「啟用上層路徑」的選項打勾即可。
Static Route Exam 靜態路由小考
把這次靜態路由的考試整理一下。
助教原本是用 Cisco 的 router 考試,但是因為機器太大,桌面上根本放不下三個,所以只好改用新式的小型 linux 嵌入式 router 考試。
上圖中
黑色部分為 WAN 或是 LAN。
紅色部分為路由器代號
綠色部分為 IP 位址代號
1:192.168.1.2
2:192.168.1.1
3:192.168.3.1
4:192.168.3.2
5:192.168.2.1
6:192.168.2.2
A router 的設定:
ifconfig ixp0 192.168.1.1
ifconfig ixp1 192.168.3.1
route add -net 192.168.2.0 netmask 255.255.255.0 .168gw 192.3.2
B router 的設定:
ifconfig ixp0 192.168.2.1
ifconfig ixp1 192.168.3.2
route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.3.1
左邊的電腦以 2 當作 gateway,右邊的電腦以 5 當作 gateway。
所以可以發現每個 router 在 ifconfig 時就已經對自己連接的二個網域做好設定,如:A router 在 ifconfig 時就已經設定好 192.168.1.0 和 192.168.3.0 這二個網域,只剩下 192.168.2.0 這個網域必須另外用 route 指令新增封包傳遞方式。新增完畢後 router 才知道 192.168.2.0 網域的封包,必須經過 192.168.3.2 的閘到送過去。同理,B router 也必須用 router 設定 192.168.1.0 網域的封包傳遞方式。
找到規律以後再來看下面 3 個路由器的考試題目。
討論的結果,每個 router 應該都需要加上二個 route。說「應該」是因為考卷上面的 IP 記不起來、考卷也不能帶出來,然後討論結果沒有機器可以測試,所以只是大膽的假設,在請助教確認的結果,錯誤不要怪我。
以下為 A、B、C router 應該要打的 route (指令部分省略):
A:
-net 78網域 gw 6
-net 56網域 gw 4
B:
-net 12網域 gw 3
-net 78網域 gw 6
C:
-net 12網域 gw 3
-net 34網域 gw 5
跳頁選單
剛剛把我部落格的「友站連結」改成跳頁選單的形式,版面看起來乾淨了許多。
跳頁選單是用 HTML 中的 select 標籤再加上 JavaScript 程式而成。首先我們要把要的連結組先做成 HTML select 選單:
<select>
<option selected="selected">:: 請選擇連結 ::
<option value="http://zeroplex.blogspot.com">Zeroplex部落格
<option value="http://www.flickr.com/photos/johnroyer/">我的相簿
</select>
這時外觀已經完成,只差沒有選擇以後會跳頁的動作。所以我們要在 select 後方插入一段 JavaScript 來完成跳頁的功能。
<select onchange="if(this.selectedIndex && this.selectedIndex!=0){window.location=this.value;}this.selectedIndex=0;">
<option selected="selected">:: 請選擇連結 ::
<option value="http://aleiku.blogspot.com/">Aleiku
<option value="http://www.flickr.com/photos/johnroyer/">我的相簿
</select>
上面這段加入後,只要在選單有改變時,就會自動跳到你設定的網頁連結。
新增的這段程式中,this.value 表示這個標籤(this)裡面的值(option value),而 window.location 則是瀏覽器這個視窗(window)顯示的網址(location)。所以說當選單一旦有改變(OnChange),就會觸發這段 JavaScript 讓瀏覽器改變網址。
如果你希望瀏覽器是另外開一個視窗來開啟網頁連結,而不是就此離開你的網站,就把 window.location 改成 window.open()。
<select onchange="if(this.selectedIndex && this.selectedIndex!=0){window.open(this.value);}this.selectedIndex=0;">
<option selected="selected">:: 請選擇連結 ::
<option value="http://zeroplex.blogspot.com">Zeroplex部落格
<option value="http://www.flickr.com/photos/johnroyer/">我的相簿
</select>