1、nginx:
官网:www.nginx.org

下载:wget -c  http://nginx.org/download/nginx-1.14.0.tar.gz
解压:tar -zxvf nginx-1.14.0.tar.gz
进入:cd nginx-1.14.6
安装依赖包:yum install gcc gcc-c++ glibc pcre pcre-devel zlib zlib-devel

生成配制文件:./configure --prefix=/usr/local/nginx --user=*** --group=*** --with-http_ssl_module --with-http_stub_status_module
编译安装:make && make install

升级、降级:下载安装包后,按照原来的参数进行编译后,不再安装(make install) 然后复制cp obj/nginx  到原安装目录下,就可以了。

注意:

a,编译前可以隐藏版本:编辑源码包里:vim nginx-1.14.0/src/core/nginx.h

查看:

 

安装完成后,编辑配制文件:
cp /usr/local/nginx/conf/nginx.conf   /usr/local/nginx/conf/nginx.conf.bak
vim /usr/local/nginx/conf/nginx.conf 
把内容全部删除后 加入这这些语句:

user nobody nobody;
worker_processes 2;
error_log /usr/local/nginx/logs/nginx_error.log crit;
pid /usr/local/nginx/logs/nginx.pid;
worker_rlimit_nofile 51200;
 
events
{
use epoll;
worker_connections 6000;
}
 
http
{
include mime.types;
default_type application/octet-stream;
server_names_hash_bucket_size 3526;
server_names_hash_max_size 4096;
log_format combined_realip '$remote_addr $http_x_forwarded_for [$time_local]'
' $host "$request_uri" $status'
' "$http_referer" "$http_user_agent"';
sendfile on;
tcp_nopush on;
keepalive_timeout 30;
client_header_timeout 3m;
client_body_timeout 3m;
send_timeout 3m;
connection_pool_size 256;
client_header_buffer_size 1k;
large_client_header_buffers 8 4k;
request_pool_size 4k;
output_buffers 4 32k;
postpone_output 1460;
client_max_body_size 10m;
client_body_buffer_size 256k;
client_body_temp_path /usr/local/nginx/client_body_temp;
proxy_temp_path /usr/local/nginx/proxy_temp;
fastcgi_temp_path /usr/local/nginx/fastcgi_temp;
fastcgi_intercept_errors on;
tcp_nodelay on;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 8k;
gzip_comp_level 5;
gzip_http_version 1.1;
gzip_types text/plain application/x-javascript text/css text/htm
application/xml;
 
server
{
listen 80;
server_name localhost;
index index.html index.htm index.php;
root /usr/local/nginx/html;
 
location ~ \.php$
{
include fastcgi_params;
fastcgi_pass unix:/tmp/php-fcgi.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;
}
}
}
 
查检语法:
/usr/local/nginx/sbin/nginx -t
 
编辑启动文件:
vim /etc/init.d/nginx
加入以下代码:
#!/bin/bash
# chkconfig: - 30 21
# description: http service.
# Source Function Library
. /etc/init.d/functions
# Nginx Settings
 
NGINX_SBIN="/usr/local/nginx/sbin/nginx"
NGINX_CONF="/usr/local/nginx/conf/nginx.conf"
NGINX_PID="/usr/local/nginx/logs/nginx.pid"
RETVAL=0
prog="Nginx"
 
start()
{
echo -n $"Starting $prog: "
mkdir -p /dev/shm/nginx_temp
daemon $NGINX_SBIN -c $NGINX_CONF
RETVAL=$?
echo
return $RETVAL
}
 
stop()
{
echo -n $"Stopping $prog: "
killproc -p $NGINX_PID $NGINX_SBIN -TERM
rm -rf /dev/shm/nginx_temp
RETVAL=$?
echo
return $RETVAL
}
 
reload()
{
echo -n $"Reloading $prog: "
killproc -p $NGINX_PID $NGINX_SBIN -HUP
RETVAL=$?
echo
return $RETVAL
}
 
restart()
{
stop
start
}
 
configtest()
{
$NGINX_SBIN -c $NGINX_CONF -t
return 0
}
 
case "$1" in
start)
start
;;
stop)
stop
;;
reload)
reload
;;
restart)
restart
;;
configtest)
configtest
;;
*)
echo $"Usage: $0 {start|stop|reload|restart|configtest}"
RETVAL=1
esac
exit $RETVAL

加入后,更加权限:
chmod 755 /etc/init.d/nginx

若需要开机启动的话,再加入服务启动列表:
chkconfig --list 查看有哪些服务列表
chkconfig --add /etc/init.d/nginx    (增加nginx服务)
chkconfig --level 2345 nginx on    (设置为2345模式下为自动启动)

查检语法:
/usr/local/nginx/sbin/nginx -t
启动查看:
/etc/init.d/nginx start
ps aux |grep nginx
netstat -tulnp

图例:
安装无成后的目录

配制文件相关:

启动文件相关:

启动、查看:

 

 2、Nginx默认虚拟主机
编辑:/usr/local/nginx/conf/nginx.conf
加入这条语句(在http下)include vhost/*.conf
然后,在 conf目录下  创建vhost 目录
最后在conf目录下,创建以  .conf 结尾的文件,写入:

server{
listen 80 default_server;
server_name rrr.com;
index index.html index.htm index.php;
root /var/www/nginx;
}

若/var/www/目录下没有nginx目录,那么就需要创建:mkdir -p /var/www/nginx
再创建index.html文件:
echo "nginx_vhost" >>/var/www/nginx/index.html
配制完成后测试语法:/usr/local/nginx/sbin/nginx -t
最后重新加载nginx服务:/usr/local/nginx/sbin/nginx -s reload
访问测试:curl -x127.0.0.1:80 rrr.com



到此nginx虚拟主机配制完成。

 3、nginx用户认证
若没有安装httpd需要先安装:
yum install httpd -y
在/usr/local/nginx/conf/vhost/  下面新建一个test.com.conf
写入以下代码:

location /
{
auth_basic "Auth";
auth_basic_user_file /usr/local/nginx/conf/htpasswd;
}

语法检查:
/usr/local/nginx/sbin/nginx -t
生成密码文件:
htpasswd  -c -m /usr/local/nginx/conf/htpasswd test    (-c 是创建文件  -m 是md5加密)
htpasswd   -m /usr/local/nginx/conf/htpasswd test1
重新加载nginx:
/usr/local/nginx/sbin/nginx -s reload

访问查看:

若要配制某个目录的权限只需要改:

若需要对某个文件进行权限设置的话,就改成:

查看测试:

4、nginx 域名重定向:
在vhost目录下的配制文件test.com.conf 加入:
和多设置几个域名:server_name test.com test1.com test3.com;

if ( $host != 'test.com' ){

rewrite ^/(.*)$ http://test.com/$1 permanent;

}

然后,查检和测试:
/usr/local/nginx/sbin/nginx -t
/usr/local/nginx/sbin/nginx -s reload
curl -x127.0.0.1:80 test3.com/index.html

到此,域名跳转配制完成。

nginx的安装 、Nginx默认虚拟主机、nginx用户认证、nginx 域名重定向的更多相关文章

  1. Nginx安装、默认虚拟主机、Nginx用户认证和域名重定向

    6月7日任务 12.6 Nginx安装12.7 默认虚拟主机12.8 Nginx用户认证12.9 Nginx域名重定向 扩展nginx.conf 配置详解 http://www.ha97.com/51 ...

  2. Linux centosVMware Nginx安装、 默认虚拟主机、Nginx用户认证、Nginx域名重定向

    一. Nginx安装 cd /usr/local/src wget http://nginx.org/download/nginx-1.12.1.tar.gz 版本在http://nginx.org/ ...

  3. nginx之安装、多虚拟主机、反向代理和负载均衡

    一.web服务器与web框架 1.web服务器简介 Web 网络服务是一种被动访问的服务程序,即只有接收到互联网中其他主机发出的请求后才会响应,最终用于提供服务程序的Web服务器会通过 HTTP(超文 ...

  4. LAMP 1.8默认虚拟主机

    默认虚拟主机是为了解决别人域名恶心绑定自己的服务器ip,可导致服务器上的网站排名靠后,即干扰seo优化 我们访问指定的两个网站可以直接访问,ip也可以访问 打开配置文件 vim /usr/local/ ...

  5. apache禁止默认虚拟主机

    禁止默认虚拟主机:作用使除特定域名外,其它的域名/ip无法访问此站点. 在虚拟主机配置文件中 即:/usr/local/apache2/conf/extra/httpd-vhosts.conf 将其中 ...

  6. [转] linux学习第四十四篇:Nginx安装,Nginx默认虚拟主机,Nginx域名重定向

    Nginx安装 进入存放源码包的目录: cd /usr/local/src 下载源码包: wget http://nginx.org/download/nginx-1.12.1.tar.gz 解压: ...

  7. Nginx安装及配置虚拟主机

    nginx安装部分 依赖环境 yum -y install gcc zlib openssl-devel zlib-devel 1. 下载好下面两个包:nginx-1.8.1.tar.gz pcre- ...

  8. nginx创建默认虚拟主机

    创建默认虚拟主机配置文件作用:禁止任何人通过ip或未允许的域名访问web服务. 如:vim vhosts/default.conf server { listen 80 default; server ...

  9. Nginx 反向代理 负载均衡 虚拟主机配置

    Nginx 反向代理 负载均衡 虚拟主机配置 通过本章你将学会利用Nginx配置多台虚拟主机,清楚代理服务器的作用,区分正向代理和反向代理的区别,搭建使用Nginx反向搭理和负载均衡,了解Nginx常 ...

随机推荐

  1. Dagger2不自动生成daggerXXXcomponent

    在Fragment里面初始化dagger2创建对象时,不自动生成daggerXXXcomponent. 百思不得其解,后来发现是import android.app.Fragment;所以不自动生成. ...

  2. Mysql按日期分组(group by)查询统计的时候,没有数据补0的解决办法

    转载自:http://blog.csdn.net/jie11447416/article/details/50887888 1.案例中的数据结构和数据如下 2.在没有解决的时候,是这样的   SELE ...

  3. Linux第八周作业

    一 理解编译链接的过程和ELF可执行文件格式 这张图说明了可执行程序的产生 大致过程为 .c文件汇编成汇编代码.asm, 然后再汇编成目标码.o, 然后链接成可执行文件a.out, 这时可执行文件就可 ...

  4. node代理服务器

    var express = require('express');var request = require('request');var app = express();var _URL = 'ht ...

  5. 【转载二】Grafana系列教程–Grafana的下载及安装

    本篇教程,waitig 来为大家介绍一下Grafana的安装及运行的方式. 更多Grafana技术请加入<InfluxDB&Grafana技术交流群:580487672(点击加入)> ...

  6. 侧滑返回导航栏以及TabBar隐藏和显示带来的坑

    用系统的UINavigationBar时,返回手势重若碰到前一个页面有bar,后一个页面没bar,或者反过来时动画非常难看 如下图:因为首页隐藏了导航栏,在侧滑的时候导航栏竟然提前消失了,这是因为在侧 ...

  7. Java线程的三种方式

    创建线程有三种方式: 1.继承Thread类 2.实现Runnable接口 3.使用Callable和Future创建线程 三种方式详解如下: ---------------------------- ...

  8. android 广播 接收短信

    ; i < messages.length; i++) { SmsMessage ms = SmsMessage.createFromPdu((byte[])pdus[i]); String f ...

  9. 内存布局:栈,堆,BSS段(静态区),代码段,数据段

    简介 我们程序运行的时候都是放在内存里的.根据静态.成员函数.代码段.对象.等等.放在不同的内存分块里.大概分为5块 1  栈 2  堆 3 BSS段-全局区-(静态区) 4 代码段 5 数据段 栈 ...

  10. ubantu 安装git

    1.安装git并配置 sudo add-apt-repository ppa:git-core/ppa sudo apt-get update sudo apt-get install git 可以使 ...