nginx 源码安装
安装nginx安装pcre库是为了让nginx支持具备URI重写功能的rewrite模块
# yum install pcre pcre-devel -y
# rpm -qapcre pcre-devel
安装nginx 依赖的包 openssl-devel
# yum install openssl openssl-devel
# rpm -qa openssl openssl-devel
> 下载nginx源码包
# wget -q http://nginx.org/download/nginx-1.9.2.tar.gz
> 解压
# tar xf nginx-1.9.2.tar.gz
# cd nginx-1.9.2
> 配置文件
# ./configure --user=nginx --group=nginx --prefix=/application/nginx-1.9.2/ --with-http_stub_status_module --with-http_ssl_module
> 安装
# make
# make install
> 创建软连接
# ln -s /application/nginx-1.9.2/ /application/nginx
# ls -l /application/nginx
lrwxrwxrwx 1 root root 25 Jan7 03:16 /application/nginx -> /application/nginx-1.9.2/
> 检测nginx 配置文件知否正确
# /application/nginx/sbin/nginx -t
nginx: the configuration file /application/nginx-1.9.2//conf/nginx.conf syntax is ok
nginx: configuration file /application/nginx-1.9.2//conf/nginx.conf test is successful
> 启动nginx
# /application/nginx/sbin/nginx
> 查看nginx服务对应的端口是否成功启动
# lsof -i :80
COMMANDPIDUSER FD TYPE DEVICE> nginx 3620root 6uIPv427305 0t0TCP :http (LISTEN)
nginx 3621 nginx 6uIPv427305 0t0TCP :http (LISTEN)
> 在防火墙上开端口
#查看防火墙上已经开启的端口`
# firewall-cmd --zone=public --list-port
#在防火墙上永久开启80端口
# firewall-cmd --zone=public --add-port=80/tcp --permanent
#重新载入
# firewall-cmd --reload
> 查看nginx 的目录结构
# tree /application/nginx/
/application/nginx/
├── client_body_temp
├── conf
│ ├── fastcgi.conf
│ ├── fastcgi.conf.default
│ ├── fastcgi_params
│ ├── fastcgi_params.default
│ ├── koi-utf
│ ├── koi-win
│ ├── mime.types
│ ├── mime.types.default
│ ├── nginx.conf
│ ├── nginx.conf.default
│ ├── scgi_params
│ ├── scgi_params.default
│ ├── uwsgi_params
│ ├── uwsgi_params.default
│ └── win-utf
├── fastcgi_temp
├── html
│ ├── 50x.html
│ └── index.html
├── logs
│ ├── access.log
│ ├── error.log
│ └── nginx.pid
├── proxy_temp
├── sbin
│ └── nginx
├── scgi_temp
└── uwsgi_temp
### nginx配置虚拟主机
> 编辑Nginx的配置文件
```nginxconf
http {
include mime.types;
default_typeapplication/octet-stream;
#log_formatmain'$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_loglogs/access.logmain;
sendfile on;
#tcp_nopush on;
#keepalive_timeout0;
keepalive_timeout65;
#gzipon;
server {
#nginx 默认监听的端口
listen 80;
#配置的虚拟主机的域名(测试环境中是自定义的)
server_namewww.one.com;
#charset koi8-r;
#access_loglogs/host.access.logmain;
location / {
#新配置的虚拟主机所在根目录
root html/www;
indexindex.html index.htm;
}
#error_page404 /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;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_indexindex.php;
# fastcgi_paramSCRIPT_FILENAME/scripts$fastcgi_script_name;
# include fastcgi_params;
#}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# denyall;
#}
}
....
}
修改完了配置文件,我们知道虚拟主机的关键部分是server{}括号中内容
根据配置的虚拟主机的根目录,创建站点目录和文件,因为Nginx编译安装的时候默认的站定目录是html,所以在改目录下创建
# mkdir ../html/www -p
# echo "http://www.one.com" > ../html/www/index.html
# cat ../html/www/index.html
http://www.one.com
重新加载配置文件
[*]检查Nginx配置文件语法是否正确
# ../sbin/nginx -t
nginx: the configuration file /application/nginx-1.9.2//conf/nginx.conf syntax is ok
nginx: configuration file /application/nginx-1.9.2//conf/nginx.conf test is successful
[*]重新加载配置文件
# ../sbin/nginx -s>
[*]检查Nginx重启加载后的情况
# ps -ef|grep nginx
root 10820 10 08:54 ? 00:00:00 nginx: master process /application/nginx/sbin/nginx
nginx 11152108200 09:54 ? 00:00:00 nginx: worker process
root 11154110880 09:54 pts/1 00:00:00 grep --color=auto nginx
[*]本机的hosts文件解析(不是必须这样做) 和访问测试
# echo "192.168.85.129 www.one.com" >>/etc/hosts
# tail /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.85.130 www.one.com
# curl www.one.com
http://www.one.com #本地测试成功
页:
[1]