nginx 的安裝php
下載地址: http://nginx.org/download/nginx-1.4.2.tar.gzhtml
安裝準備: nginx依賴於pcre庫,要先安裝pcrelinux
yum install pcre pcre-develnginx
cd /usr/local/src/apache
wget http://nginx.org/download/nginx-1.4.2.tar.gz服務器
tar zxvf nginx-1.4.2.tar.gz ide
cd nginx-1.4.2spa
./configure --prefix=/usr/local/nginx操作系統
make && make install日誌
啓動:
cd /ulsr/local/nginx, 看到以下4個目錄
./
....conf 配置文件
... html 網頁文件
...logs 日誌文件
...sbin 主要二進制程序
[root@localhost nginx]# ./sbin/nginx
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
....
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()
不能綁定80端口,80端口已經被佔用
(有時是本身裝了apache,nginx等,還有更多狀況是操做系統自帶了apache並做爲服務啓動)
解決: 把佔用80端口的軟件或服務關閉便可.
Nginx配置段
// 全局區
worker_processes 1; // 有1個工做的子進程,能夠自行修改,但太大無益,由於要爭奪CPU,通常設置爲 CPU數*核數
Event {
// 通常是配置nginx鏈接的特性
// 如1個word能同時容許多少鏈接
worker_connections 1024; // 這是指 一個子進程最大容許連1024個鏈接
}
http { //這是配置http服務器的主要段
Server1 { // 這是虛擬主機段
Location { //定位,把特殊的路徑或文件再次定位 ,如image目錄單獨處理
} /// 如.php單獨處理
}
Server2 {
}
}
例子1: 基於域名的虛擬主機
server {
listen 80; #監聽端口
server_name a.com; #監聽域名
location / {
root /var/www/a.com; #根目錄定位
index index.html;
}
}
例子2: 基於端口的虛擬主機配置
server {
listen 8080;
server_name 192.168.1.204; #(ifconfig查看linux的ip)
location / {
root /var/www/html8080;
index index.html;
}
}
例子3: 基於localhost的虛擬主機配置(訪問者經過該服務器ip來訪問nginx服務器)
server {
listen 8080;
server_name localhost
location / {
root /var/www/html8080;
index index.html;
}
}