本文由秀依林楓提供友情贊助,首發(fā)于爛泥行天下
以前在centos下安裝軟件都是喜歡源碼安裝,不過昨天因為一個事情需要一個centos 下的LNMP環(huán)境。反倒不會搞了,今天特意記錄下,以備后續(xù)使用。
一、安裝nginx
我們先來安裝nginx,如下:
yum -y install nginx
通過上圖,我們可以看到目前的yum源中是沒有nginx軟件包的。我們需要安裝包含nginx的yum源,如下:
rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
查看剛剛安裝的rpm包,如下:
rpm -ql nginx-release-centos-6-0.el6.ngx.noarch
通過上圖,我們可以很明顯的看出剛剛安裝的rpm包,只是新添加了一個nginx的yum源。查看該yum源,如下:
cat /etc/yum.repos.d/nginx.repo
現(xiàn)在我們再來通過yum來安裝nginx,如下:
yum -y install nginx
通過上圖,我們可以很明顯的看出nginx已經(jīng)安裝。
現(xiàn)在來查看nginx安裝的位置及其文件,如下:
rpm -ql nginx
通過上圖,我們可以很明顯的看出nginx默認安裝到/etc/nginx目錄,而nginx的默認網(wǎng)站安裝到/usr/share/nginx/html目錄下。
現(xiàn)在我們來啟動nginx,并訪問nginx。如下:
/etc/init.d/nginx start
curl http://192.168.1.124
查看nginx運行時使用的用戶,如下:
ps -ef |grep nginx
通過上圖,我們可以很明顯的看出nginx是root用戶啟動,但是nginx運行時使用的是nginx這個用戶。
二、安裝php及php-fpm
安裝php及php-fpm,使用如下命令:
yum -y install php php-fpm
查看php-fpm安裝的位置及其文件,如下:
rpm -ql php-fpm
啟動php-fpm,使用如下命令:
/etc/init.d/php-fpm start
ps -ef |grep php-fpm
netstat -tunlp |grep 1355
通過上圖,我們可以看出php-fpm運行時使用apache這個用戶,而且php-fpm監(jiān)聽的是本機的9000端口。
如果要修改php-fpm運行時的用戶及端口的話,我們可以通過修改php-fpm配置文件/etc/php-fpm.d/www.conf,如下:
cat /etc/php-fpm.d/www.conf |grep -v '^;'|grep -v ^$
三、nginx與php集成
nginx與php集成是通過fastcgi來實現(xiàn),而fastcgi我們一般使用的是php-fpm。在第二章,我們已經(jīng)啟動php-fpm,現(xiàn)在我們來修改nginx配置文件使其支持php。
現(xiàn)在我們修改nginx的默認網(wǎng)站配置文件default.conf,如下:
cat /etc/nginx/conf.d/default.conf
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.php index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ /.php$ {
root /usr/share/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRipT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
以上配置完畢后,我們再重啟nginx和php-fpm,如下:
/etc/init.d/nginx restart
/etc/init.d/php-fpm restart
以上是修改nginx的默認網(wǎng)站,現(xiàn)在我們新加一個nginx虛擬主機,并使其支持php,如下:
vi /etc/nginx/conf.d/ilanni.conf
server {
listen 80;
server_name test.ilanni.com;
location / {
root /ilanni;
index index.php index.html index.htm;
}
location ~ /.php$ {
root /ilanni;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
nginx虛擬主機配置文件完畢后,現(xiàn)在來創(chuàng)建虛擬主機ilanni的index.php,如下:
mkdir /ilanni
vi /ilanni/index.php
<?php phpinfo(); ?>
修改ilanni目錄的所屬用戶,如下:
chown nginx:nginx -R /ilanni/
ll /ilanni/
如上圖所示,我們現(xiàn)在把ilanni這個目錄修改為nginx運行時使用的用戶nginx。
現(xiàn)在我們再來修改php-fpm運行時的用戶,如下:
vi /etc/php-fpm.d/www.conf
我們來重啟nginx與php-fpm,如下:
/etc/init.d/nginx restart
/etc/init.d/php-fpm restart
通過上圖,我們可以看到nginx的虛擬主機已經(jīng)可以正確解析php。
四、安裝MySQL
安裝MySQL,使用如下命令:
yum -y install mysql mysql-server php-mysql
安裝完畢后,啟動mysql。如下:
/etc/init.d/mysqld start
現(xiàn)在我們在nginx默認網(wǎng)站創(chuàng)建一個mysql.php文件,用來連接mysql數(shù)據(jù)庫。mysql.php內(nèi)容如下:
cat /usr/share/nginx/html/mysql.php
<?php
$host='localhost';
$root='root';
$pwd='';
$con= mysql_connect($host,$root,$pwd);
if ( $con == false ) {
echo "connect false";
} else{
echo "connect true";
}
?>
重啟nginx、php-fpm、mysql,如下:
/etc/init.d/nginx restart
/etc/init.d/php-fpm restart
/etc/init.d/mysqld restart
現(xiàn)在通過訪問該mysql.php文件,如下:
http://192.168.1.124/mysql.php
通過上圖,我們可以很明顯的看出php已經(jīng)解析mysql.php文件,并且也已經(jīng)成功的連接mysql數(shù)據(jù)庫。
新聞熱點
疑難解答
圖片精選