發表文章

目前顯示的是 2009的文章

CentOS5 安裝 JSON

前面提到用YUM進行安裝服務又快又安全又方便。不過總是有意外...
在AJAX上很常會被應用到的JSON在CentOS上是找不到的。小灰狼找了一整個晚上大部分的文章都是這篇:
http://www.ej38.com/showinfo/php-130716.html <-----就不用看了,基本上沒太大作用...而且中國的文章都抄來抄去基本上都沒作用的一大堆


php的官網上有點幫助:
http://tw2.php.net/manual/en/json.installation.php
這個網站上面有詳細的step by step 教學非常容易的就讓你安裝起來 json


不過天有不測風雲,不知道為什麼,php官網上面的json版本是 json 1.2.1  這個版本有點小問題,就是明明在liunx的指令模式輸入 php -m可以看到有 json出現。
但是真的要運作的時候卻work不起來,連phpinfo()也看不到。

經過5個小時馬拉松爬文和暴力測試後。終於被我找到降版本的方式成功

請依序將下面的指令貼到ssh中


wget http://www.aurore.net/projects/php-json/php-json-ext-1.2.0.tar.bz2
bzip2 -d php-json-ext-1.2.0.tar.bz2
tar xf php-json-ext-1.2.0.tar
cd php-json-ext-1.2.0
phpize
./configure
make
make install

接下來最重要的一件事
/etc/init.d/httpd stop
/etc/init.d/httpd start


去看看你的phpinfo()吧

php 檔案上傳~資料夾權限問題

php要做到檔案上傳是一件頗簡單的事情。
不過,最近遇到一個狀況順便做個筆記。
在linux的機器上面。會有資料夾權限的問題。這個部份就不是單純設定php.ini後在重開就可以解決的。

這個時候請在linux中輸入

chmod 777 /var/www/html/images
就可以把資料夾權限開到最大讓檔案可以被寫入。不然,檔案是無法被上傳的唷


指令說明:

chmod <-- 修改檔案權限
777 <--所有人都可讀可寫可刪除
/var/www/html/images  檔案夾路徑

Linux 系統排程 crontab -e

在linux上面要達成系統排程工作是使用 crontab來完成
要編輯這個檔案請執行這個指令:
crontab -e


這個指令會直接呼叫出vi來讓你編輯。因此要先學好vi喔


crontab 的格式:
[minute] [hour] [day of month] [month] [day of week] [Command]
每個欄位用一個空白鍵分隔,前面幾個欄位都是時間控制。最後面的一個欄位是要執行的動作,*代表不限定

crontab 的範例:
10 5 * * * root /usr/sbin/ntpdate tock.stdtime.gov.tw && /sbin/hwclock -w這段表示 每個禮拜的每個月的每一天的早上5:10 會執行紅色文字的動作(系統網路校時) 附帶一提~設定完成後記得將cron服務重新啟動/etc/init.d/crond stop/etc/init.d/crond start降就可以啦!

linux初學先看這邊

要學linux的人應該不會是因為興趣吧!<---很難說
通常是為了要考證照或是工作真的有用到。如果你是為了考照,那小灰狼的文章應該對你沒幫助。如果你是被趕鴨子上架的臨時MIS。那麼小灰狼的筆記可以拿去看一下

遠端登入
通常MIS會有root的權限,也就是最高的控制權(windows系統中的Administrator),如果你以為你可以像windows server一樣遠端桌面控制server,那麼你會大失所望。
一般而言,linux的遠端控制是用ssh來操作。而這個操作的介面會是純指令模式。所以有些東西你必需要知道

下載windows 版本的ssh軟體:
請到這邊->http://azo-freeware.blogspot.com/2006/12/pietty-0327.html
可以看到詳細介紹

列出所有正在啟用的網路服務:
netstat -tulnp

網路服務的啟動方式:
/etc/init.d/服務名稱 動作
如果沒有輸入動作
系統則會列出所有該服務可以使用的動作,非常貼心。
然後在重新輸入一次
ex:
/etc/init.d/httpd start <--這是啟動httpd服務


很詳細的教學網站:
鳥哥的私房菜

linux 上快速架設php &MySQL服務

最近遇到的狀況:拿到一個號稱是linux的空機
要求要把服務掛上去
所以我們要在上面設定好apache php mysql統統一次要做到定位。
對於一個linux不是很熟的新手來說,用rpm安裝其實還是有困難的

我們用另一個更簡單的方式安裝吧"YUM"

1.先檢查有沒有安裝YUM套件
指令:
rpm -qa yum
會出現:
yum-3.2.22-20.el5.centos

那麼恭喜你~你的os有安裝yum套件

2.安裝apache服務  "httpd"
先看看你的apache服務狀態
指令:
yum info httpd
如果他有告訴你一堆資料,表示你的httpd其實有安裝
如果你還是堅持要重新安裝一次
請輸入
yum remove httpd
他會問你是否真的要移除,反正移除可以在裝回來你就移除了吧
要安裝回來請輸入
yum install httpd
一樣會問你要不要安裝,裝就是了。

3.安裝php &MySql
輸入
yum -y install php mysql mysql-server php-mysql php-gd php-mbstring php-mcrypt
有看到yum 後面我多加了一個 -y 的參數嗎 ?這個就是請他不要一直問你要不要安裝的參數
可以讓你一次安裝大部分會用到的東西

4.啟動看看吧
安裝完後是沒有預設啟動的
所以我們還要對httpd和mysqld進行啟動才可以使用
輸入
/etc/init.d/httpd start
/etc/init.d/mysqld start
這樣你的LAMP就可以順利運行啦!






附記:
LAMP:linux+apache+mysql+php 我們簡稱LAMP
httpd :apache在2.x之後的版本在linux上都用httpd作為服務和套件的名稱
mysqld:雖然我們在安裝的時候還是安裝mysql,但是服務的名稱還是mysqld
mysql  root的密碼設定:
mysqladmin -u root password '密碼'


再多說一句:
小灰狼在安裝完成後很安心的睡覺了,後來被客戶的笨蛋MIS吵醒說網頁不能用,ssh登入後檢查才發現原來笨蛋MIS把我的機器重開機。但是服務並沒有被預設啟動。

所以我們順便做一下開機預設啟動的動作吧!
一樣,先檢查
chk…