2012-11-05

Centos 5.x更新 php 5.4.8+mysql5.5.28+nginx1.2.4

Centos 5.x更新 php 5.4.8+mysql5.5.28+nginx1.2.4


公司developers要開發新的 web service。
PHP、Mysql、NGINX分別要求版更為最新: 5.4.8、5.5.28、1.2.4

我們都知道 Centos 5.x 版本對於 PHP 及 MySQL 一直維持在 5.1.6 及 5.0.X , 所以有時候想要版更些新東西...............
Is really a nightmare!!!  
『除非自己要編譯 , 不想編譯就只好安裝其他人所維護的 rpm 版本』


目前我常用的兩個 Yum Repo 是 remi 及 rpmforge

remi 就有較新版本的 php 及 mysql , 而 rpmforge 有我們常常用的 rsync 最新版 , 因此通常我裝好 Centos 之後會一併安裝這兩個 repo


remi 的安裝

要安裝 remi 的步驟很簡單 ,  請注意下面列的是 i386 版本 , 若 OS 是 64bit , 必須把下列指令中有 i386 的字串改為 x86_64

rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm

安裝好之後 , 可以用 yum 指令檢查更新 , 如

yum --enablerepo=remi check-update


rpmforge 的安裝

rpmforge 不能用 rpm 直接遠端裝 , 必須用 wget 下載如下 , 請注意下面列的是 i386 版本 , 若 OS 是 64bit , 必須把下列指令中有 i386 的字串改為 x86_64

wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
rpm -Uvh rpmforge-release-0.3.6-1.el5.rf.i386.rpm

rpmforge 安裝好之後用下列指令檢查是否有套件需要更新

yum --enablerepo=rpmforge check-update

應該會找到 rsync 的新版本

當我們有使用過上述兩個 repo 安裝新的套件之後 , 若 yum-updatesd 是有啟動的 , 那麼以後就會自動將套件更新到最新版

上述動作完畢,開始更新 PHP、Mysql、NGINX (或者只想安裝 LNMP 不需更新)
※準備的開發平台 為 centos 5.6 x64


Install MYSQL PHP

yum --enablerepo=remi,remi-test install mysql mysql-server php php-common -y

※如果出現錯誤訊息,也許是套件版本衝突,請先移除衝突的套件,再繼續安裝
※(網路上的例子都是"乾淨"的環境,所以沒這些問題。而我公司是已經有在平台上運行相關的服務,所以特別備註。)
※(衝突畫面未攫取,僅貼上排除的指令)

衝突的套件
php-xcache-1.3.2-jason.1.x86_64 php-memcache-3.0.4-1.jason.1.x86_64 mysql-5.1.58-jason.1.x86_64

移除它
yum remove php-xcache-1.3.2-jason.1.x86_64 -y
yum remove php-memcache-3.0.4-1.jason.1.x86_64 -y
yum -y remove mysql-5.1.58-jason.1.x86_64


Update PHP、MEMCACHE
※(檢查remi 源 最無新版本)
※(網路上幾乎沒有做這個動作,只是我自己再多做這些步驟罷了,讀者自己決定需不需加這一步驟。)

yum --enablerepo=remi,remi-test upgrade php*
yum --enablerepo=remi,remi-test upgrade memcache*


Install PHP 5.4.8 Modules

yum --enablerepo=remi,remi-test install php-pecl-apc php-cli php-pear php-pdo php-mysql php-pgsql php-pecl-mongo php-sqlite php-pecl-memcache php-pecl-memcached php-gd php-mbstring php-mcrypt php-xml -y

 
Install PHP (extension,不需要的讀者可跳過此步驟)

yum --enablerepo=remi,remi-test install pcre spl dom pdo* mcrypt soap gd crype -y
※(公司PHP安裝擴充套件)
extension:PCRE SPL DOM PDO MySQL Memcache Mcrypt SOAP GD Ctype


Install(Upgrade) NGINX 

rpm -Uvh http://nginx.org/packages/centos/5/noarch/RPMS/nginx-release-centos-5-0.el5.ngx.noarch.rpm

yum -y install nginx


Start MYSQL 5.5.28
chkconfig mysqld on;/etc/init.d/mysqld start

Start Memcache
chkconfig memcached on;/etc/init.d/memcached start

Start PHP (spawn-fcgi)
chkconfig php_cgi on;/etc/init.d/php_cgi  start

Start NGINX
chkconfig nginx on;/etc/init.d/nginx start


※最後看一下是否版本都正確




















Linking Building與Link Earning

Linking Building與Link Earning



在SEOmoz看到這篇"The Death of Link Building and the Rebirth of Link Earning",說到以往的連結建立已經死亡,現在應該要想辦法去掙到連結。Link Earning到底如何才能夠去贏得連結呢? 贏得連結會不會變成低品質的連結呢?

Linking Building並不需要在SEO作業流程當中,因為連結不需要自己去建立。內部自我連結就應該在架構上自動進行了,外部它網連結(External Link)則應該是透過連結誘餌(Link Baits)而讓他網自動願意連結。

我們當時的說法,就是現在2012年SEOmoz所講的。幾乎比SEOmoz早了快兩年的時間,我們就知道自我的Linking Building不是長遠之計,連結應該是要賺來的。

但是要賺到連結雖然不算困難,但是問題可能出在~ 如果你賺到的是低品質的連結,怎麼辦呢? 因為低品質的連結可能帶來Google Penguin的處罰。

假設你的網站有一篇很不錯的內容,所以被許多網站轉載,如果轉載的網站在內容上標示了你的連結,但是很不幸的是,如果這個轉載的網站,是一個低品質的網站,那麼這個連結對你是好還是壞呢?

當然如果低品質的網站一直跟著你的網站貼文,終究還是必須處理比較安全,這個也是我們網站面臨的問題。國內外太多SEO相關網站,都把我們的文章拿來轉載,比較惡劣的是全文照抄,當成他們自己的網站,其次是全文照抄,並且註明轉載來源,最好的情況是他們自己原創一篇,並註明概念來自我們的網站。

以上全文照抄而非原創內容的網站,就很可能是低品質的網站,因為他們每一篇內容都是到處抄來的。

這篇又提到~ Link Building Means Earning “Hard Links” Not “Easy Links”,解釋說~ Easy links aren’t what you want. It’s the hard links you want. 你不是要容易取得的連結,而是需要困難的連結。

意思是不只要賺到連結,而且必須賺到有品質的困難連結,但是問題是困難的連結又未必都是高品質的連結。

所以結果是~ 就算賺到了困難的連結,如果這個連結不是有品質的連結,一樣白做工,而且可能壞事。

為什麼困難的連結會是沒有品質的連結呢? 就因為大家都開始「內容行銷」,一大堆東貼西貼的網站比以前更多了,所以現在的Linking Building大多不能運作,連Link Earning都必須小心,也就是還必須注意Negative SEO,並且必須善用Disavow links tool

所以連結不僅是要靠賺來的,還要注意賺來的連結品質,否則可能會越賺越糟糕。

轉載自《SEO關鍵解碼》