如何构建LNMP
LNMP是:Linux系統下Nginx+MySQL+PHP這種網站服務器架構。Linux是一類Unix計算機操作系統的統稱,是目前最流行的免費操作系統。? ? ? ? ?Nginx是一個小巧而高效的Linux下的Web服務器軟件,Nginx性能穩定、功能豐富、運維簡單、處理靜態文件速度快且消耗系統資源極少。Mysql是一種關系型數據庫管理系統。PHP是一種在服務器端執行的嵌入HTML文檔的腳本語言。這四種軟件均為免費開源軟件,組合到一起,成為一個免費、高效、擴展性強的網站服務系統,同時也是現在比較流行的網站服務器架構。
安裝的時候必須按照一定的次序,先安裝nginx,然后是mysql,然后是php一、安裝nginx在安裝nginx之前我們必須安裝幾個擴展openssl-devel,pcre-devel, zlib-devel
然后創建用戶和組# groupadd -r nginx# useradd -r -g nginx -s /bin/false -M nginx先解壓nginx#tar -xf nginx -C /usr/local#cd nginx./configure \--prefix=/usr/local \--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/ \--http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \--http-scgi-temp-path=/var/tmp/nginx/scgi \--with-pcre
#make?#make install
vim /etc/rc.d/init.d/nginx
#!/bin/sh## nginx - this script starts and stops the nginx daemon## chkconfig: ? - 85 15?# description: ?Nginx is an HTTP(S) server, HTTP(S) reverse \# ? ? ? ? ? ? ? proxy and IMAP/POP3 proxy server# processname: nginx# config: ? ? ?/etc/nginx/nginx.conf# config: ? ? ?/etc/sysconfig/nginx# pidfile: ? ? /var/run/nginx.pid# Source function library.. /etc/rc.d/init.d/functions# Source networking configuration.. /etc/sysconfig/network# Check that networking is up.[ "$NETWORKING" = "no" ] && exit 0nginx="/usr/sbin/nginx"prog=$(basename $nginx)NGINX_CONF_FILE="/etc/nginx/nginx.conf"[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginxlockfile=/var/lock/subsys/nginxmake_dirs() {# make required directoriesuser=`nginx -V 2>&1 | grep "configure arguments:" | sed 's/[^*]*--user=\([^ ]*\).*/\1/g' -`options=`$nginx -V 2>&1 | grep 'configure arguments:'`for opt in $options; doif [ `echo $opt | grep '.*-temp-path'` ]; thenvalue=`echo $opt | cut -d "=" -f 2`if [ ! -d "$value" ]; then# echo "creating" $valuemkdir -p $value && chown -R $user $valuefifidone}start() {[ -x $nginx ] || exit 5[ -f $NGINX_CONF_FILE ] || exit 6make_dirsecho -n $"Starting $prog: "daemon $nginx -c $NGINX_CONF_FILEretval=$?echo[ $retval -eq 0 ] && touch $lockfilereturn $retval}stop() {echo -n $"Stopping $prog: "killproc $prog -QUITretval=$?echo[ $retval -eq 0 ] && rm -f $lockfilereturn $retval}restart() {configtest || return $?stopsleep 1start}reload() {configtest || return $?echo -n $"Reloading $prog: "killproc $nginx -HUPRETVAL=$?echo}force_reload() {restart}configtest() {$nginx -t -c $NGINX_CONF_FILE}rh_status() {status $prog}rh_status_q() {rh_status >/dev/null 2>&1}case "$1" instart)rh_status_q && exit 0$1;;stop)rh_status_q || exit 0$1;;restart|configtest)$1;;reload)rh_status_q || exit 7$1;;force-reload)force_reload;;status)rh_status;;condrestart|try-restart)rh_status_q || exit 0;;*)echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"exit 2esac
service nginx start
二、安裝mysql-5.5.201.下載mysql-5.5.20軟件包裝之前先先新建用戶和組groupadd -r mysqluseradd -g mysql -r -s /sbin/nologin -M mysql2、解壓安裝tar -xf mysql-5.5.20-linux2.6-i686.tar.gzln -sv mysql-5.5.20-linux2.6-i686 mysql 創建軟鏈接
(如果想讓另外一個主機客戶端能夠訪問本機上的mysql服務器,新建mysql用戶的@主機是誰,誰能夠訪問這個數據庫)
mkdir /mydatamkdir /mydata/data 數據庫所在的目錄chown -R mysql:mysql /mydata/data/ 改變目錄和文件屬主屬組chown -R mysql:mysql mysqlchown -R mysql:mysql mysql/*cd mysqlrpm -q mysql-server 確認是否安裝了MYSQL,如果安裝了必須先卸載,不然后邊會出錯scripts/mysql_install_db --user=mysql --datadir=/mydata/data/chown -R root .把mysql目錄下的文件屬主改回root
3.提供主配置文件# cp /usr/local/mysql/support-files/my-large.cnf /etc/my.cnfvim /etc/my.cnf修改下邊兩項thread_concurrency = 2datadir = /mydata/datacp support-files/mysql.server /etc/rc.d/init.d/mysqld添加到服務列表,并設置為 開機啟動
? chkconfig --add mysqldchkconfig mysqld onchkconfig --list mysqld
service mysqld start
為頭文件創建連接ln -sv /usr/local/mysql/include /usr/include/mysql
讓庫文件導出#ldconfig -v 重新加載一次
配置man手冊#vim /etc/man.config添加這一行 MANPATH /usr/local/mysql/man
更改環境變量,這樣mysql命令就能夠直接用了#export PATH=$PATH:/usr/local/mysql/bin#source /etc/profile 重讀配置文件
三、裝php
1.再裝php之前要裝一個用到的包組
# yum -y groupinstall "X Software Development"
然后再裝上幾個擴展 libmcrypt ,mcrypt ,mhash(單向加密),還有libiconv(這里沒裝),libevent需要裝的軟件包:libevent-2.0.17-2.i386.rpmlibevent-devel-2.0.17-2.i386.rpmlibmcrypt-2.5.8-4.el5.centos.i386libmcrypt-devel-2.5.8-4.el5.centos.i386mcrypt-2.6.8-1.el5.i386.rpmmhash-0.9.9-1.el5.centos.i386.rpm mhash-devel-0.9.9-1.el5.centos.i386.rpm
忽略依賴關系升級安裝rmp -Uvh libevent-2.0.17-2.i386.rpm ?libevent-devel-2.0.17-2.i386.rpm ?libmcrypt-2.5.8-4.el5.centos.i386 ? libmcrypt-devel-2.5.8-4.el5.centos.i386 ?mcrypt-2.6.8-1.el5.i386.rpmmhash-0.9.9-1.el5.centos.i386.rpm ?mhash-devel-0.9.9-1.el5.centos.i386.rpm --nodeps(livent系統同上原本就有,這里我們是強行升級安裝的,一般情況下不要這樣,我們可以另外在裝一個,只讓php用)
2.編譯安裝PHP
tar xf php-5.4.0.tar.bz2cd php-5.4.0.tar.bz2./configure --help | less 查看編譯安裝的一些選項
#./config --prefix=/usr/local/php \--with-mysql=/usr/local/mysql \--with-openssl --enable-fpm \--with-mysqli=/usr/local/mysql/bin/mysql_config \--enable-mbstring \--with-freetype-dir \--with-jpeg-dir \--with-png-dir \--with-zlib-dir \--with-libxml-dir=/usr --enable-xml \--with-mhash \--with-mcrypt \--with-config-file-path=/etc/php \--with-config-file-scan-dir=/etc/php \--with-bz2 \--with-curl \[ --with-iconv=/usr/local ]如果有這一項的話,后邊編譯的時候要用 make ZEND_EXTRA_LIBS=‘-liconv’
#make#makeinstall
3.提供配置文件
?主配置文件#cp /usr/local/php/php.ini-production /etc/php/php.ini
? php-fpm配置文件
#cd /usr/local/php/etc/ #cp php-fpm-.conf.default php-fpm.conf#vim php-fpm.conf配置pm.的相關選項為你所需要的值,并啟用pid文件(如下最后一行):pm=dynamicpm.max_children = 40 最多可以啟動的子進程數 (一般情況下,2G內存可以設置為 ? ? ?200,1G可以設置為100)pm.start_servers = 2 剛開始啟動的空閑的進程的個數pm.min_spare_servers = 1 最少空閑進程數pm.max_spare_servers = 6 最多空閑進程數,不能大于pm.max_children = 40 中的個數pm.process_idle_timeout = 20s 每個pm進程的最長空閑時間pm.max_resquests = 500 最多接受的請求個數pid = /usr/local/php/var/run/php-fpm.pid
#/usr/local/php/sbin/php-fpm 啟動php(也可以通過server 啟動)
提供sysv啟動腳本#find php-5.4.0/ -name "init*" 查找#cp php-fpm5.4.0/sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm#vim /etc/rc.d/init.d/php-fpm
沒有chkconfig需要添加啟動順序應該比nginx 靠前### BEGIN INIT INFO#chkconfig: - 84 16
#chmod +x /etc/rc.d/init.d/php-fpm 給它一個執行權限
#chkconfig --add php-fpm#chkconfig php-fpm on
四、整合nginx和php51.到這里我們還必須編輯nginx的主配置文件vim /etc/nginx/nginx.conf在配置文件中的虛擬主機中加入:(可以從nginx軟件包中的原配置文件中復制) location ~\.php$ { ? ?root /www/magedu; ? ?fastcgi_pass 127.0.0.1:9000; ? ?fastcgi_index index.php; ? ?fastcgi_param SCRIPT_FILENMAE /scripts$fastcgi_script_name; ? ?include fastcigi_params; }我們還可以在index 中添加 index.php
sercie nginx configtest 檢查一下語法
2.編輯fastcgi_params#vim /etc/nginx/fastcgi_params
將其內容更改為如下內容fastcgi_param ?GATEWAY_INTERFACE ?CGI/1.1;fastcgi_param ?SERVER_SOFTWARE ? ?nginx;fastcgi_param ?QUERY_STRING ? ? ? $query_string;fastcgi_param ?REQUEST_METHOD ? ? $request_method;fastcgi_param ?CONTENT_TYPE ? ? ? $content_type;fastcgi_param ?CONTENT_LENGTH ? ? $content_length;fastcgi_param ?SCRIPT_FILENAME ? ?$document_root$fastcgi_script_name;fastcgi_param ?SCRIPT_NAME ? ? ? ?$fastcgi_script_name;fastcgi_param ?REQUEST_URI ? ? ? ?$request_uri;fastcgi_param ?DOCUMENT_URI ? ? ? $document_uri;fastcgi_param ?DOCUMENT_ROOT ? ? ?$document_root;fastcgi_param ?SERVER_PROTOCOL ? ?$server_protocol;fastcgi_param ?REMOTE_ADDR ? ? ? ?$remote_addr;fastcgi_param ?REMOTE_PORT ? ? ? ?$remote_port;fastcgi_param ?SERVER_ADDR ? ? ? ?$server_addr;fastcgi_param ?SERVER_PORT ? ? ? ?$server_port;fastcgi_param ?SERVER_NAME ? ? ? ?$server_name;
把原來的全部給刪了
#service nginx restart
3.新建index.php的測試頁面,測試php是否能正常工作cd /www/magedu/mv index.html index.phpvim index.php<?phpphpinfo();?>(測試php用的)
然后我們可以用瀏覽器訪問一下www.magedu.com,如果能夠顯示出來php的詳細信息就nginx鏈接php成功了
五、安裝phpMyAdmintar xf phpMyAdmin-3.4.10.1-all-languages.tar.bz2mv phpMyAdmin-3.4.10.1-all-languages /www/magedu重命名mv phpMyAdmin-3.4.10.1-all-languages php
cd /www/magedu.com/php/cp config.sample.inc.php config.inc.php vim /www/magedu.com/php/config.inc.php在$cfg['blowfish_server'] =' ? ? '在引號里邊我們可以隨便填加一些字符
然后我們可以在瀏覽器上訪問:www.magedu.com/php
六、安裝xcache,為php加速:注:使用xcache的時候,不要安裝太新版版本的php,太高版本的php,沒有辦法使用xcache1、安裝# tar xf xcache-1.3.2.tar.gz# cd xcache-1.3.2# /usr/local/php/bin/phpize# ./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config# make && make install
安裝結束時,會出現類似如下行:Installing shared extensions: ? ? /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/
2、編輯php.ini,整合php和xcache:
首先將xcache提供的樣例配置導入php.ini# cat xcache.ini >> /usr/local/php/lib/php.ini
說明:xcache.ini文件在xcache的源碼目錄中。
接下來編輯/usr/local/php/lib/php.ini,找到zend_extension開頭的行,修改為如下行:zend_extension = /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/xcache.so
注意:如果php.ini文件中有多條zend_extension指令行,要確保此新增的行排在第一位。
3、重新啟動php-fpm# service php-fpm restart
安裝的時候必須按照一定的次序,先安裝nginx,然后是mysql,然后是php一、安裝nginx在安裝nginx之前我們必須安裝幾個擴展openssl-devel,pcre-devel, zlib-devel
然后創建用戶和組# groupadd -r nginx# useradd -r -g nginx -s /bin/false -M nginx先解壓nginx#tar -xf nginx -C /usr/local#cd nginx./configure \--prefix=/usr/local \--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/ \--http-uwsgi-temp-path=/var/tmp/nginx/uwsgi \--http-scgi-temp-path=/var/tmp/nginx/scgi \--with-pcre
#make?#make install
vim /etc/rc.d/init.d/nginx
#!/bin/sh## nginx - this script starts and stops the nginx daemon## chkconfig: ? - 85 15?# description: ?Nginx is an HTTP(S) server, HTTP(S) reverse \# ? ? ? ? ? ? ? proxy and IMAP/POP3 proxy server# processname: nginx# config: ? ? ?/etc/nginx/nginx.conf# config: ? ? ?/etc/sysconfig/nginx# pidfile: ? ? /var/run/nginx.pid# Source function library.. /etc/rc.d/init.d/functions# Source networking configuration.. /etc/sysconfig/network# Check that networking is up.[ "$NETWORKING" = "no" ] && exit 0nginx="/usr/sbin/nginx"prog=$(basename $nginx)NGINX_CONF_FILE="/etc/nginx/nginx.conf"[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginxlockfile=/var/lock/subsys/nginxmake_dirs() {# make required directoriesuser=`nginx -V 2>&1 | grep "configure arguments:" | sed 's/[^*]*--user=\([^ ]*\).*/\1/g' -`options=`$nginx -V 2>&1 | grep 'configure arguments:'`for opt in $options; doif [ `echo $opt | grep '.*-temp-path'` ]; thenvalue=`echo $opt | cut -d "=" -f 2`if [ ! -d "$value" ]; then# echo "creating" $valuemkdir -p $value && chown -R $user $valuefifidone}start() {[ -x $nginx ] || exit 5[ -f $NGINX_CONF_FILE ] || exit 6make_dirsecho -n $"Starting $prog: "daemon $nginx -c $NGINX_CONF_FILEretval=$?echo[ $retval -eq 0 ] && touch $lockfilereturn $retval}stop() {echo -n $"Stopping $prog: "killproc $prog -QUITretval=$?echo[ $retval -eq 0 ] && rm -f $lockfilereturn $retval}restart() {configtest || return $?stopsleep 1start}reload() {configtest || return $?echo -n $"Reloading $prog: "killproc $nginx -HUPRETVAL=$?echo}force_reload() {restart}configtest() {$nginx -t -c $NGINX_CONF_FILE}rh_status() {status $prog}rh_status_q() {rh_status >/dev/null 2>&1}case "$1" instart)rh_status_q && exit 0$1;;stop)rh_status_q || exit 0$1;;restart|configtest)$1;;reload)rh_status_q || exit 7$1;;force-reload)force_reload;;status)rh_status;;condrestart|try-restart)rh_status_q || exit 0;;*)echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"exit 2esac
service nginx start
二、安裝mysql-5.5.201.下載mysql-5.5.20軟件包裝之前先先新建用戶和組groupadd -r mysqluseradd -g mysql -r -s /sbin/nologin -M mysql2、解壓安裝tar -xf mysql-5.5.20-linux2.6-i686.tar.gzln -sv mysql-5.5.20-linux2.6-i686 mysql 創建軟鏈接
(如果想讓另外一個主機客戶端能夠訪問本機上的mysql服務器,新建mysql用戶的@主機是誰,誰能夠訪問這個數據庫)
mkdir /mydatamkdir /mydata/data 數據庫所在的目錄chown -R mysql:mysql /mydata/data/ 改變目錄和文件屬主屬組chown -R mysql:mysql mysqlchown -R mysql:mysql mysql/*cd mysqlrpm -q mysql-server 確認是否安裝了MYSQL,如果安裝了必須先卸載,不然后邊會出錯scripts/mysql_install_db --user=mysql --datadir=/mydata/data/chown -R root .把mysql目錄下的文件屬主改回root
3.提供主配置文件# cp /usr/local/mysql/support-files/my-large.cnf /etc/my.cnfvim /etc/my.cnf修改下邊兩項thread_concurrency = 2datadir = /mydata/datacp support-files/mysql.server /etc/rc.d/init.d/mysqld添加到服務列表,并設置為 開機啟動
? chkconfig --add mysqldchkconfig mysqld onchkconfig --list mysqld
service mysqld start
為頭文件創建連接ln -sv /usr/local/mysql/include /usr/include/mysql
讓庫文件導出#ldconfig -v 重新加載一次
配置man手冊#vim /etc/man.config添加這一行 MANPATH /usr/local/mysql/man
更改環境變量,這樣mysql命令就能夠直接用了#export PATH=$PATH:/usr/local/mysql/bin#source /etc/profile 重讀配置文件
三、裝php
1.再裝php之前要裝一個用到的包組
# yum -y groupinstall "X Software Development"
然后再裝上幾個擴展 libmcrypt ,mcrypt ,mhash(單向加密),還有libiconv(這里沒裝),libevent需要裝的軟件包:libevent-2.0.17-2.i386.rpmlibevent-devel-2.0.17-2.i386.rpmlibmcrypt-2.5.8-4.el5.centos.i386libmcrypt-devel-2.5.8-4.el5.centos.i386mcrypt-2.6.8-1.el5.i386.rpmmhash-0.9.9-1.el5.centos.i386.rpm mhash-devel-0.9.9-1.el5.centos.i386.rpm
忽略依賴關系升級安裝rmp -Uvh libevent-2.0.17-2.i386.rpm ?libevent-devel-2.0.17-2.i386.rpm ?libmcrypt-2.5.8-4.el5.centos.i386 ? libmcrypt-devel-2.5.8-4.el5.centos.i386 ?mcrypt-2.6.8-1.el5.i386.rpmmhash-0.9.9-1.el5.centos.i386.rpm ?mhash-devel-0.9.9-1.el5.centos.i386.rpm --nodeps(livent系統同上原本就有,這里我們是強行升級安裝的,一般情況下不要這樣,我們可以另外在裝一個,只讓php用)
2.編譯安裝PHP
tar xf php-5.4.0.tar.bz2cd php-5.4.0.tar.bz2./configure --help | less 查看編譯安裝的一些選項
#./config --prefix=/usr/local/php \--with-mysql=/usr/local/mysql \--with-openssl --enable-fpm \--with-mysqli=/usr/local/mysql/bin/mysql_config \--enable-mbstring \--with-freetype-dir \--with-jpeg-dir \--with-png-dir \--with-zlib-dir \--with-libxml-dir=/usr --enable-xml \--with-mhash \--with-mcrypt \--with-config-file-path=/etc/php \--with-config-file-scan-dir=/etc/php \--with-bz2 \--with-curl \[ --with-iconv=/usr/local ]如果有這一項的話,后邊編譯的時候要用 make ZEND_EXTRA_LIBS=‘-liconv’
#make#makeinstall
3.提供配置文件
?主配置文件#cp /usr/local/php/php.ini-production /etc/php/php.ini
? php-fpm配置文件
#cd /usr/local/php/etc/ #cp php-fpm-.conf.default php-fpm.conf#vim php-fpm.conf配置pm.的相關選項為你所需要的值,并啟用pid文件(如下最后一行):pm=dynamicpm.max_children = 40 最多可以啟動的子進程數 (一般情況下,2G內存可以設置為 ? ? ?200,1G可以設置為100)pm.start_servers = 2 剛開始啟動的空閑的進程的個數pm.min_spare_servers = 1 最少空閑進程數pm.max_spare_servers = 6 最多空閑進程數,不能大于pm.max_children = 40 中的個數pm.process_idle_timeout = 20s 每個pm進程的最長空閑時間pm.max_resquests = 500 最多接受的請求個數pid = /usr/local/php/var/run/php-fpm.pid
#/usr/local/php/sbin/php-fpm 啟動php(也可以通過server 啟動)
提供sysv啟動腳本#find php-5.4.0/ -name "init*" 查找#cp php-fpm5.4.0/sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm#vim /etc/rc.d/init.d/php-fpm
沒有chkconfig需要添加啟動順序應該比nginx 靠前### BEGIN INIT INFO#chkconfig: - 84 16
#chmod +x /etc/rc.d/init.d/php-fpm 給它一個執行權限
#chkconfig --add php-fpm#chkconfig php-fpm on
四、整合nginx和php51.到這里我們還必須編輯nginx的主配置文件vim /etc/nginx/nginx.conf在配置文件中的虛擬主機中加入:(可以從nginx軟件包中的原配置文件中復制) location ~\.php$ { ? ?root /www/magedu; ? ?fastcgi_pass 127.0.0.1:9000; ? ?fastcgi_index index.php; ? ?fastcgi_param SCRIPT_FILENMAE /scripts$fastcgi_script_name; ? ?include fastcigi_params; }我們還可以在index 中添加 index.php
sercie nginx configtest 檢查一下語法
2.編輯fastcgi_params#vim /etc/nginx/fastcgi_params
將其內容更改為如下內容fastcgi_param ?GATEWAY_INTERFACE ?CGI/1.1;fastcgi_param ?SERVER_SOFTWARE ? ?nginx;fastcgi_param ?QUERY_STRING ? ? ? $query_string;fastcgi_param ?REQUEST_METHOD ? ? $request_method;fastcgi_param ?CONTENT_TYPE ? ? ? $content_type;fastcgi_param ?CONTENT_LENGTH ? ? $content_length;fastcgi_param ?SCRIPT_FILENAME ? ?$document_root$fastcgi_script_name;fastcgi_param ?SCRIPT_NAME ? ? ? ?$fastcgi_script_name;fastcgi_param ?REQUEST_URI ? ? ? ?$request_uri;fastcgi_param ?DOCUMENT_URI ? ? ? $document_uri;fastcgi_param ?DOCUMENT_ROOT ? ? ?$document_root;fastcgi_param ?SERVER_PROTOCOL ? ?$server_protocol;fastcgi_param ?REMOTE_ADDR ? ? ? ?$remote_addr;fastcgi_param ?REMOTE_PORT ? ? ? ?$remote_port;fastcgi_param ?SERVER_ADDR ? ? ? ?$server_addr;fastcgi_param ?SERVER_PORT ? ? ? ?$server_port;fastcgi_param ?SERVER_NAME ? ? ? ?$server_name;
把原來的全部給刪了
#service nginx restart
3.新建index.php的測試頁面,測試php是否能正常工作cd /www/magedu/mv index.html index.phpvim index.php<?phpphpinfo();?>(測試php用的)
然后我們可以用瀏覽器訪問一下www.magedu.com,如果能夠顯示出來php的詳細信息就nginx鏈接php成功了
五、安裝phpMyAdmintar xf phpMyAdmin-3.4.10.1-all-languages.tar.bz2mv phpMyAdmin-3.4.10.1-all-languages /www/magedu重命名mv phpMyAdmin-3.4.10.1-all-languages php
cd /www/magedu.com/php/cp config.sample.inc.php config.inc.php vim /www/magedu.com/php/config.inc.php在$cfg['blowfish_server'] =' ? ? '在引號里邊我們可以隨便填加一些字符
然后我們可以在瀏覽器上訪問:www.magedu.com/php
六、安裝xcache,為php加速:注:使用xcache的時候,不要安裝太新版版本的php,太高版本的php,沒有辦法使用xcache1、安裝# tar xf xcache-1.3.2.tar.gz# cd xcache-1.3.2# /usr/local/php/bin/phpize# ./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config# make && make install
安裝結束時,會出現類似如下行:Installing shared extensions: ? ? /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/
2、編輯php.ini,整合php和xcache:
首先將xcache提供的樣例配置導入php.ini# cat xcache.ini >> /usr/local/php/lib/php.ini
說明:xcache.ini文件在xcache的源碼目錄中。
接下來編輯/usr/local/php/lib/php.ini,找到zend_extension開頭的行,修改為如下行:zend_extension = /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/xcache.so
注意:如果php.ini文件中有多條zend_extension指令行,要確保此新增的行排在第一位。
3、重新啟動php-fpm# service php-fpm restart
轉載于:https://blog.51cto.com/wjlking/824876
總結
- 上一篇: CentOS 6.2安装
- 下一篇: grub修复与grub.conf