LNMP環境安裝


MYSQL安裝

Mysql本版mysql-5.5.19(5.5以上用cmake編譯)下載地址http://pan.baidu.com/s/1eQINM62

安裝cmake

[root@localhost ~]# tar zxvf cmake-3.0.2.tar.gz 

[root@localhost ~]# cd cmake-3.0.2

[root@localhost cmake-3.0.2]# gmake && make install

安裝mysql

[root@localhost ~]# tar zxvf mysql-5.5.19.tar.gz 

[root@localhost ~]# cd mysql-5.5.19

[root@localhost mysql-5.5.19]#cmake . \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \              #mysql安裝目錄路徑

-DMYSQL_DATADIR=/usr/local/mysql/data \                #mysql數據保存路徑

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \        #系統socket文件設置

-DWITH_INNODBBASE_STORAGE_ENGINE=1 \                   #存儲引擎設置

-DENABLE_LOCAL_INFILE=1 \                              #默認關閉,這裏開啓

-DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci \ #編碼設置

-DMYSQL_USER=mysql -DWITH_DEBUG=0 -DWITH_EMBEDED_SERVER=0

[root@localhost mysql-5.5.19]# make && make install

mysql配置文件

[root@localhost mysql-5.5.19]#cp support-files/my-innodb-heavy-4G.cnf /etc/my.cnf

啓動程序

[root@localhost mysql-5.5.19]#cp support-files/mysql.server /etc/init.d/mysqlsource

[root@localhost mysql-5.5.19]#chmod 755 /etc/init.d/mysqlsource

[root@localhost mysql-5.5.19]#chown mysql.mysql /usr/local/mysql/ -R

初始化mysql,注意  路徑mysql目錄和data目錄後面不要加 "/" 

[root@localhost mysql-5.5.19]#sh scripts/mysql_install_db \

--user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

啓動mysql

[root@localhost ~]# /etc/init.d/mysqlsource start

[root@localhost ~]# service mysqlsource start


Nginx安裝

1.安裝Nginx所需的pcre-devel庫 

#tar jxvf pcre-4.2.tar.bz2

#cd pcre-4.2

#./configure &&make &&make install

2.安裝Nginx

#tar zxvf nginx-1.4.7.tar.gz

#cd nginx-1.4.7

#./configure --with-http_stub_status_module --prefix=/opt/nginx

#make && make install

3.啓動Nginx服務

      #/opt/nginx/sbin/nginx

4.配置反向代理負載均衡

在nginx服務器 (192.168.8.64)

#vim /opt/nginx/conf/nginx.conf   

使用upstream自定義負載均衡名字 "myserver",添加虛擬主機 

wKioL1PSTYGgrwEcAACq_rlzTb4790.jpg

設置server 指定端口和nginx本機IP


wKiom1PSTY-A8RJcAABhpTox3Og542.jpg

設置location,匹配網頁位置和規則


wKiom1PSTmqAn4ZSAACePVO0e40970.jpg

其中nginx服務器的 /opt/nginx/conf/proxy.conf(默認無此文件,創建並填寫以下內容)

wKioL1PSUCiQiWJVAAEhMvzUAOs565.jpg


重啓nginx服務


PHP與PHP-FPM的安裝

  1. 下載安裝包

www.php.net官網下載php源碼包,這裏下載的是php-5.2.17.tar.bz2,

http://php-fpm.org/downloads/下載對應的PHP-FPM源碼包,這裏下載的是php-5.2.17-fpm-0.5.14.diff.gz

2.開始編譯安裝PHP和PHP-FPM

[root@localhost ~]# tar jxf php-5.2.17.tar.bz2

[root@localhost ~]# gzip -cd php-5.2.17-fpm-0.5.14.diff.gz |patch -d php-5.2.17 -p1

[root@localhost ~]# cd php-5.2.17

[root@localhost php-5.2.17]# ./configure --prefix=/usr/local/php --enable-fastcgi --enable-fpm

[root@localhost php-5.2.17]# make &&make install

[root@localhost php-5.2.17]# cp     php.ini-dist     /usr/local/php/lib/php.ini

3.配置PHP-FPM的默認配置文件

[root@localhost php-5.2.17]# vim /usr/local/php/etc/php-fpm.conf

                                Unix user of processes
                            <value name="user">nobody</value>

                          Unix group of processes
                          <value name="group">nobody</value>
  
                          Process manager settings

大概62行,去掉這兩行的註釋

4.啓動FastCGI進程

[root@localhost php-5.2.17]# /usr/local/php/bin/php-cgi --fpm

[root@localhost php-5.2.17]# /usr/local/php/sbin/php-fpm start

查看端口和進程是否啓動

[root@localhost php-5.2.17]# netstat -antl| grep 9000

tcp        0      0 127.0.0.1:9000              0.0.0.0:*                   LISTEN 

[root@localhost php-5.2.17]# ps -ef | grep php-cgi

root      6922     1  0 16:44 ?        00:00:00 /usr/local/php/bin/php-cgi --fpm --fpm-config /usr/local/php/etc/php-fpm.conf
nobody    6923  6922  0 16:44 ?        00:00:00 /usr/local/php/bin/php-cgi --fpm --fpm-config /usr/local/php/etc/php-fpm.conf
nobody    6924  6922  0 16:44 ?        00:00:00 /usr/local/php/bin/php-cgi --fpm --fpm-config /usr/local/php/etc/php-fpm.conf
nobody    6925  6922  0 16:44 ?        00:00:00 /usr/local/php/bin/php-cgi --fpm --fpm-config /usr/local/php/etc/php-fpm.conf
nobody    6926  6922  0 16:44 ?        00:00:00 /usr/local/php/bin/php-cgi --fpm --fpm-config /usr/local/php/etc/php-fpm.conf
nobody    6927  6922  0 16:44 ?        00:00:00 /usr/local/php/bin/php-cgi --fpm --fpm-config /usr/local/php/etc/php-fpm.con

5.配置Nginx支持PHP

[root@localhost php-5.2.17]# vim /usr/local/nginx/conf/nginx.conf

#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen       80;
        server_name  192.168.8.64;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
           # root   html;
            index      index.html index.php;

        }

 location ~ \.php$ {
      root                         /usr/local/nginx/html;
      fastcgi_pass        127.0.0.1:9000;
      fastcgi_index       index.php;
      fastcgi_param       SCRIPT_FILENAME  /usr/local/nginx/html$fastcgi_script_name;
      include         fastcgi_params;
        }
        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

重新啓動Nginx進程

[root@localhost php-5.2.17]# ps -ef | grep nginx

root      6946     1  0 16:49 ?        00:00:00 nginx: master process /usr/local/nginx/sbin/nginx
nobody    6947  6946  0 16:49 ?        00:00:00 nginx: worker process                                         

[root@localhost php-5.2.17]# kill 6946

[root@localhost php-5.2.17]# /usr/local/nginx/sbin/nginx

到此爲止,Nginx+PHP已配置完成

6.測試Nginx對PHP的解析功能

在/usr/local/nginx/html目錄下創建一個phpinfo.php文件,內容如下:

<?php phpinfo(); ?>

在瀏覽器中訪問 http://192.168.8.64/phpinfo.php,如果能正常解析,會出現PHP安裝配置以及功能列表統計信


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章