星期五, 1月 21, 2011

Zend沒有report error

最近多建了一個測試環境要讓同事測試
但不知少做了什麼,或多做了什麼
發現Zend居然都沒有回報錯誤
但純test.php是有回錯誤訊的改了php.ini裡的display_error也沒用
要google這問題 還真是不知怎麼下keyword
怎麼下都不是我要的答案

用了好久,才發現原來是在http.conf設定檔裡
少給了以下這行
SetEnv APPLICATION_ENV "development"

不知道為何這行會影響
先記下來

星期四, 1月 20, 2011

install lamp on centos

  • LAMP
    1. 啟動apache  
      沒有的話,就先安裝
      yum -y install httpd mysql-server php php-devel php-mysql
    2. 將php更新至5.3
      CentOS 5要用yum更新的話,需要先設定另一個repo,以提供php5.3
      先查有什麼php套件,缺的再補齊
      rpm -qa | grep 'php'
      php-devel-5.3.10-1.w5
      php-pdo-5.3.10-1.w5
      php-ldap-5.3.10-1.w5
      php-cli-5.3.10-1.w5
      php-mysql-5.3.10-1.w5
      php-5.3.10-1.w5
      php-common-5.3.10-1.w5
      如果apache對php沒反應的話
      要到/etc/httpd/conf/httpd.conf裡
      #將php的模組掛上
      LoadModule php5_module        modules/libphp5.so
      
      #讓apache可辨識php附檔名
      AddType application/x-httpd-php .php .phtml .inc .php3
      
      #附檔名為 .phps時 直接輸出成網頁
      AddType application/x-httpd-php-source .phps .phpsource

      rpm安裝
      rpm -Uvh http://repo.webtatic.com/yum/centos/5/latest.rpm
      yum --enablerepo=webtatic install php php-devel php-mysql
      yum --enablerepo=webtatic update php
    3. mysql設定
      • 啟動mysql
        [root@www ~]# service mysqld start

        # 如果是初次啟動,螢幕會顯示一些訊息且 /var/lib/mysql 會建立資料庫。
        [root@www ~]# netstat -tulnp | grep 'mysql'

        Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 2692/mysqld

        # 底下在測試看能否以手動的方式連上 MySQL 資料庫!

        [root@www ~]# mysql -u root

        Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version: 5.0.77 Source distribution Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

        mysql> exit

        Bye
      • 設定root及密碼
        [root@www ~]# mysqladmin -u root password 'your_password' 
        # 從此以後 MySQL 的 root 帳號就需要密碼了!如下所示: 
        [root@www ~]# mysql -u root -p 
        Enter password:  <==你必須要在這裡輸入剛剛建立的密碼! 
        
        mysql> exit
設定開機啓動服務 chkconfig httpd on chkconfig --add mysqld chkconfig mysqld on service httpd start service mysqld start
  • php相關套件
    • php-gd
    • php-mbstring
  • phpMyAdmin
    1. 下載
      官方網站:http://www.phpmyadmin.net/
    2. 下載並解壓縮並搬移至Web伺服器的文件根目錄
      tar xvf phpMyAdmin-x.x.x.gzip /var/www/html/phpmyadmin
    3. 修改設定檔config.inc.php(複製config.ini.sample.php)
      /* Authentication type */
      $cfg['Servers'][$i]['auth_type'] = 'http';
      /* Server parameters */
      $cfg['Servers'][$i]['host'] = '10.0.2.59'; //ip
      $cfg['Servers'][$i]['connect_type'] = 'tcp';
      $cfg['Servers'][$i]['compress'] = false;
      $cfg['Servers'][$i]['user'] = 'root'; //帳號
      $cfg['Servers'][$i]['password'] = ''; //密碼
      /* Select mysqli if your server has it */
      $cfg['Servers'][$i]['extension'] = 'mysql';

    4. restart apache
    5. 打開流覽器
      輸入 http://127.0.0.1/phpmyadmin
References

linux 提示設定

  • [轉].bash_profile和.bashrc的什麼區別
    • /etc/profile
      此文件為系統的每個用戶設置環境信息,當用戶第一次登錄時,該文件被執行.並從/etc/profile.d目錄的配置文件中蒐集shell的設置.
    • /etc/bashrc
      為每一個運行bash shell的用戶執行此文件.當bash shell被打開時,該文件被讀取.
    • ~/.bash_profile
      每個用戶都可使用該文件輸入專用於自己使用的shell信息,當用戶登錄時,該 文件僅僅執行一次!默認情況下,他設置一些環境變量,執行用戶的.bashrc文件.
    • ~/.bashrc
      該文件包含專用於你的bash shell的bash信息,當登錄時以及每次打開新的shell時,該該文件被讀取.
    • ~/.bash_logout
      當每次退出系統(退出bash shell)時,執行該文件.
    另外,/etc/profile中設定的變量(全局)的可以作用於任何用戶,而~/.bashrc等中設定的變量(局部)只能繼承/etc/profile中的變量,他們是"父子"關係.

    ~/.bash_profile 是交互式、login 方式進入 bash 運行的
    ~/.bashrc 是交互式 non-login 方式進入 bash 運行的
    通常二者設置大致相同,所以通常前者會調用後者。
  • 改linux提示字元
    檔案:/etc/bashrc
    • 放IP位置
      1. 註解原格式
        #[ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \W]\\$ "
      2. 抓出ip
        ifconfig eth0 | grep "inet addr" | cut -d":" -f2 |cut -d" " -f1
        IPADDR="$(ifconfig eth0 | grep "inet addr" | cut -d":" -f2 |cut -d" " -f1)"
      3. 改提示格式
        [ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@$IPADDR \w]\\$ "
      4. 重新登入
        [root@192.168.1.171 ~]#


References
LINUX 改登入後的提示字元的方法

星期一, 1月 10, 2011

Zend_Mail

用法
$mail = new Zend_Mail();
$mail->setBodyHtml("Dear xxx: xxx"); //plain text
//$mail->setBodyHtml("<h1>hi</h1>");
$mail->setFrom('support@golfsonomy.com', 'Customer Services');
$mail->addTo($email);
$mail->setSubject('Golfsonomy-Customer Service');
$mail->send();



FAQ
  • email is treated as SPAM
    加入Reply就不會被歸為spam
    $mail->setReplyTo('contact@company.com', 'Company');

Reference
Zend_Mail sent email is treated as SPAM