LNMP安裝詳細配置

                       LNMP安裝詳細配置php

環境:
      虛擬機: virtualbox
      主機:   redhat 5.4
      測試機: windows 7
源碼安裝步驟:
 
   1.安裝開發庫
     在安裝源碼以前,須要安裝一些庫文件,它們是一些開發工具,爲的是可以對源碼進行編譯及安裝,出於方便的緣由,咱們能夠安裝如下三個開發庫組:
         X 軟件開發(X Software Development)   開發庫(Development Libraries)  
         開發工具(Development Tools) 
     有些庫是默認安裝過的,咱們只須要安裝機器上沒有安裝的就好了,能夠以下查看沒有安裝的庫組 (前提是yum源配置成功)
     [root@localhost yum.repos.d]# yum grouplist
     Available Groups:下面的庫組是沒有安裝的,根據要求安裝便可安裝方法以下
 [root@localhost yum.repos.d]# yum groupinstall "X 軟件開發"  "開發庫" 
 個人是中文顯示的,而且要安裝兩個庫組。
 2.安裝mysql
    1>解壓mysql文件
     mysql軟件包:mysql-5.5.15-linux2.6-i686.tar.gz
     解壓文件 
     [root@localhost Desktop]# tar -zxvf mysql-5.5.15-linux2.6-i686.tar.gz -C /usr/local
     進入文件夾,更名爲mysql
     [root@localhost Desktop]# cd /usr/local/
     [root@localhost local]# mv mysql-5.5.15-linux2.6-i686 mysql
    2 >mysql配置
 進入mysql文件夾,開始配置
 注:其實mysql開發者爲了方便咱們對mysql配置的掌控,已經把配置的步驟給詳細的寫了出來,咱們能夠參照他們的配置步驟來進行配置,文件名爲:INSTALL-BINARY,能夠打開這個文件來參照着配置
[root@localhost mysql]# groupadd mysql
[root@localhost mysql]# useradd -r -g mysql mysql
[root@localhost mysql]# chown -R mysql .
[root@localhost mysql]# chgrp -R mysql .
[root@localhost mysql]# scripts/mysql_install_db --user=mysql   // 初始化數據庫
[root@localhost mysql]# chown -R root .
[root@localhost mysql]# chown -R mysql data                 //讓data目錄屬於用戶mysql
[root@localhost mysql]# cp support-files/my-medium.cnf /etc/my.cnf //配置文件放在/etc/目錄下
[root@localhost mysql]# bin/mysqld_safe --user=mysql &         運行mysql數據庫
[1] 3200
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysqld  把mysql的啓動腳本放在啓動目錄下並更名爲;mysqld,這樣咱們就可使用命令:service mysqld start|stop|restart來啓動mysql數據庫了。
   如:[root@localhost ~]# service mysqld restart
       Shutting down MySQL.                                       [肯定]
       Starting MySQL...                                          [肯定]
  3>進入數據庫
  因爲是源碼安裝的mysql,因此如今並不能直接使用命令:mysql來進入mysql數據庫,它的啓動文件在/usr/local/mysql/bin目錄下即文件:mysql
  進入mysql (前提是已經在mysql目錄下)
  [root@localhost mysql]# bin/mysql
  這樣就能夠進入mysql了,可是這種方法很麻煩,每次啓動mysql時還要找到這個文件,因此咱們能夠進行必定的優化,把mysql的啓動腳本加入到環境變量中,讓咱們直接可使用命令:mysql來進入數據庫
   [root@localhost bin]# vim /etc/profile   
添加以下內容:
  PATH=$PATH:/usr/local/mysql/bin     //在最後添加的mysql的環境變量
   [root@localhost bin]# source /etc/profile   //使環境變量生效
   [root@localhost bin]# mysql      //進入mysql
     Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.  
      mysql> 
  4>  設置mysql開機啓動
       [root@localhost ~]# chkconfig --add mysqld   //增長mysqld開機啓動
        [root@localhost ~]# chkconfig --list | grep mysqld  //查看啓動項
         mysqld  0:關閉 1:關閉 2:啓用 3:啓用 4:啓用 5:啓用 6:關閉
        如今雖然已經可以開機啓動,可是卻不可以加載mysql的庫文件和頭文件
       下面對其進行設置
         [root@localhost include]# cd /etc/ld.so.conf.d/  //進入開機啓動庫文件
         [root@localhost ld.so.conf.d]# vim mysql.conf  //自定義一個文件名,後綴必須爲: .conf
         在文件中增長代碼:
          /usr/local/mysql/lib
           應用lib文件
             [root@localhost ld.so.conf.d]# ldconfig -v
            檢查是否加載成功
              [root@localhost ld.so.conf.d]# ldconfig -v |grep mysql
               /usr/local/mysql/lib:
            libmysqlclient.so.18 -> libmysqlclient_r.so.18.0.0
        添加開機使用的頭路徑
           [root@localhost ld.so.conf.d]# cd /usr/local/include/  //進入頭文件存放目錄
           [root@localhost include]# ln -s /usr/include/local/mysql/include mysql  //爲mysql的頭文件作一個到頭文件存放目錄的路徑,名字爲mysql
3安裝nginx
 1> 安裝依賴文件pcre pcre-devel
  [root@localhost include]# yum install pcre pcre-devel
 2> 下載文件:libevent-2.0.16-stable.tar.gz
  解壓進行安裝
[root@localhost ~]# tar -zxvf  '/root/Desktop/libevent-2.0.16-stable.tar.gz'  -C  /usr/local/src/
[root@localhost Desktop]# cd /usr/local/src/
[root@localhost src]# ll 
總計 4
drwxr-xr-x 8 code code 4096 2011-11-19 libevent-2.0.16-stable
[root@localhost src]# cd libevent-2.0.16-stable/
[root@localhost libevent-2.0.16-stable]# ./configure
[root@localhost libevent-2.0.16-stable]# make
[root@localhost libevent-2.0.16-stable]# make install
3> 下載nginx-1.0.11.tar.gz
解壓安裝
[root@localhost ~]# tar -zxvf '/root/Desktop/nginx-1.0.11.tar.gz'  -C /usr/local/src/
[root@localhost libevent-2.0.16-stable]# cd /usr/local/src
[root@localhost src]# ll
總計 8
drwxr-xr-x 10 code code 4096 11-08 23:14 libevent-2.0.16-stable
drwxr-xr-x  8 1001 1001 4096 2011-12-15 nginx-1.0.11
[root@localhost src]# cd nginx-1.0.11/
[root@localhost nginx-1.0.11]# ./configure \
> --prefix=/usr \
> --sbin-path=/usr/sbin/nginx \
> --conf-path=/etc/nginx/nginx.conf \
> --error-log-path=/var/log/nginx/error.log \
> --http-log-path=/var/log/nginx/access.log \
> --pid-path=/var/run/nginx/nginx.pid \
> --lock-path=/var/lock/nginx.lock \
> --user=nginx \
> --group=nginx \
> --with-http_ssl_module \
> --with-http_flv_module \
> --with-http_stub_status_module \
> --with-http_gzip_static_module \
> --http-client-body-temp-path=/var/tmp/nginx/client/ \
> --http-proxy-temp-path=/var/tmp/nginx/proxy/ \
> --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ \
> --with-pcre
[root@localhost nginx-1.0.11]# make
[root@localhost nginx-1.0.11]# make install
安裝成功後要爲nginx建立用戶及組
[root@localhost nginx-1.0.11]# groupadd nginx
[root@localhost nginx-1.0.11]# useradd -g nginx -s /sbin/nologin -M nginx
4> nginx的啓動與別的服務有些不一樣,它能夠直接使用nginx就能夠啓動此服務
[root@localhost nginx-1.0.11]# nginx
nginx: [emerg] mkdir() "/var/tmp/nginx/client/" failed (2: No such file or directory)
若是出現了上面的錯誤,則是少client目錄
[root@localhost nginx-1.0.11]# mkdir -p  /var/tmp/nginx/client
從新啓動nginx
[root@localhost nginx-1.0.11]# nginx
查看是否啓動
[root@localhost nginx-1.0.11]# netstat -tupln | grep nginx
tcp        0      0 0.0.0.0:80      0.0.0.0:*   LISTEN      1147/nginx: master
5> 測試nginx是否成功(前提要關閉linux防火牆)

3. PHP源碼安裝
1> 解壓並安裝
[root@localhost ~]# tar -jxvf '/root/Desktop/php-5.3.7.tar.bz2' -C /usr/local/src/
[root@localhost html]# cd /usr/local/src
[root@localhost src]# ll
總計 12
drwxr-xr-x 10 code code 4096 11-08 23:14 libevent-2.0.16-stable
drwxr-xr-x  9 1001 1001 4096 11-08 23:25 nginx-1.0.11
drwxr-xr-x 13 1000 1000 4096 2011-08-17 php-5.3.7
[root@localhost src]# cd php-5.3.7/
安裝
[root@localhost php-5.3.7]# ./configure \
> --prefix=/usr/local/php \
> --with-mysql=/usr/local/mysql/ \
> --with-zlib --enable-xml --disable-rpath \
> --enable-bcmath --with-gd \
> --enable-shmop --enable-sysvsem \
> --with-curl --with-curlwrappers --enable-fpm \
> --with-ldap --with-ldap-sasl --with-xmlrpc-enable-zip --enable-soap 
[root@localhost php-5.3.7]# make
[root@localhost php-5.3.7]# make install
2> 建立php配置文件,能夠經過複製模板來獲得
[root@localhost php-5.3.7]# cp -p php.ini-development /usr/local/php/php.ini
  獲得主配置文件
[root@localhost php-5.3.7]# cd /usr/local/php
[root@localhost php]# cp -p etc/php-fpm.conf.default etc/php-fpm.conf
[root@localhost php]# vim etc/php-fpm.conf
   添加以下

添加以下目錄
[root@localhost php]# mkdir /var/run/php-fpm
啓動:php-fpm
[root@localhost php]# /usr/local/php/sbin/php-fpm
[09-Nov-2012 00:32:06] ALERT: [pool www] pm.min_spare_servers(0) must be a positive value
[09-Nov-2012 00:32:06] ERROR: failed to post process the configuration
若是出現上面 的錯誤,則修改以下(將下面的三個前面的;分號去掉)
[root@localhost php]# vim etc/php-fpm.conf
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
3> 修改nginx的配置文件/etc/nginx/nginx.conf
[root@localhost php]# vim /etc/nginx/nginx.conf
修改以下
        location / {
            root   html;
            index  index.php index.html index.htm;
        }
        location ~ \.php$ {
            root           html;
            fastcgi_pass   unix:/var/run/php-fpm/php-fpm.sock;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /usr/html$fastcgi_script_name; //注意網站存放路徑。即:/usr/html
            include        fastcgi_params;
        }
4> 測試關聯成功
[root@localhost php]# cd /usr/html
[root@localhost html]# ll
總計 8
-rw-r--r-- 1 root root 383 11-08 23:26 50x.html
-rw-r--r-- 1 root root 151 11-08 23:26 index.html
[root@localhost html]# vim index.php
添加以下內容 
<?php
    phpinfo();
?>

5> 測試數據庫鏈接成功
修改index.php內容以下
 $link=mysql_connect("localhost","root","");
if($link)
   echo "success";
else
   echo "false";
?>
 
測試成功

相關文章
相關標籤/搜索