學習centos之快速搭建LNMP環境
以前在centos下安裝軟體都是喜歡原始碼安裝,不過昨天因為一個事情需要一個centos 下的LNMP環境。反倒不會搞了,今天特意記錄下,以備後續使用。
一、安裝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
或者直接修改yum倉庫,新增以下內容:
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1
現在我們再來通過yum來安裝nginx,如下:
yum -y install nginx
通過上圖,我們可以很明顯的看出nginx已經安裝。
現在來檢視nginx安裝的位置及其檔案,如下:
rpm -ql nginx
通過上圖,我們可以很明顯的看出nginx預設安裝到/etc/nginx目錄,而nginx的預設網站安裝到/usr/share/nginx/html目錄下。
現在我們來啟動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監聽的是本機的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來實現,而fastcgi我們一般使用的是php-fpm。在第二章,我們已經啟動php-fpm,現在我們來修改nginx配置檔案使其支援php。
現在我們修改nginx的預設網站配置檔案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的預設網站,現在我們新加一個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虛擬主機配置檔案完畢後,現在來建立虛擬主機ilanni的index.php,如下:
mkdir /ilanni
vi /ilanni/index.php
<?php phpinfo(); ?>
修改ilanni目錄的所屬使用者,如下:
chown nginx:nginx -R /ilanni/
ll /ilanni/
如上圖所示,我們現在把ilanni這個目錄修改為nginx執行時使用的使用者nginx。
現在我們再來修改php-fpm執行時的使用者,如下:
vi /etc/php-fpm.d/www.conf
我們來重啟nginx與php-fpm,如下:
/etc/init.d/nginx restart
/etc/init.d/php-fpm restart
通過上圖,我們可以看到nginx的虛擬主機已經可以正確解析php。
四、安裝mysql
安裝MySQL,使用如下命令:
yum -y install mysql mysql-server php-mysql
安裝完畢後,啟動mysql。如下:
/etc/init.d/mysqld start
現在我們在nginx預設網站建立一個mysql.php檔案,用來連線mysql資料庫。mysql.php內容如下:
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
現在通過訪問該mysql.php檔案,如下:
http://192.168.1.124/mysql.php
通過上圖,我們可以很明顯的看出php已經解析mysql.php檔案,並且也已經成功的連線mysql資料庫。
相關文章
- docker 學習筆記之實戰 lnmp 環境搭建系列 (2) ------ 手動搭建 lnmp 環境Docker筆記LNMP
- RedHat/CentOs系統搭建lnmp環境RedhatCentOSLNMP
- 搭建 lnmp 環境之 nginx 篇LNMPNginx
- LNMP 環境搭建LNMP
- 搭建lnmp環境LNMP
- lnmp環境搭建LNMP
- CentOS 7 使用 docker 搭建基本的 lnmp 環境CentOSDockerLNMP
- docker搭建lnmp環境DockerLNMP
- docker 搭建 lnmp 環境DockerLNMP
- 如何搭建LNMP環境LNMP
- ubuntu lnmp環境搭建UbuntuLNMP
- CentOS7下LNMP環境搭建Discuz論壇CentOSLNMP
- PHP-lnmp 環境搭建PHPLNMP
- Docker LNMP Redis 環境搭建DockerLNMPRedis
- Windows 下搭建 lnmp 環境WindowsLNMP
- LNMP環境搭建(二):NginxLNMPNginx
- LNMP環境搭建——Nginx篇LNMPNginx
- docker下LNMP環境搭建DockerLNMP
- centos下編譯lnmp環境CentOS編譯LNMP
- 快速搭建 Linux(LNMP + Linux 安裝 + 環境配置)LinuxLNMP
- Deepin 15 搭建 LNMP 環境 + swooleLNMP
- Dockfile搭建極簡LNMP環境LNMP
- 基於Docker搭建LNMP環境DockerLNMP
- 畫江湖之 docker 篇 【lnmp 環境基礎搭建】DockerLNMP
- 畫江湖之 docker 篇 [lnmp 環境基礎搭建]DockerLNMP
- (七)Flutter學習之開發環境搭建Flutter開發環境
- docker 學習筆記之實戰 lnmp 環境搭建系列 (1) —— docker 介紹與安裝Docker筆記LNMP
- 利用 Docker 一鍵搭建 LNMP 環境DockerLNMP
- docker搭建laravel開發環境lnmpDockerLaravel開發環境LNMP
- centos6.2LNMP環境安裝(yum)CentOSLNMP
- Vagrant 搭建 CentOS 環境CentOS
- centos 前端環境搭建CentOS前端
- centos搭建virtualenv環境CentOS
- 區塊鏈學習之Fabric的環境搭建區塊鏈
- laravel學習筆記之開發環境搭建Laravel筆記開發環境
- 學習Spring原始碼篇之環境搭建Spring原始碼
- 阿里雲體驗實驗室 教你如何《快速搭建LNMP環境》阿里LNMP
- Windows搭建Superset環境學習Windows