Linux centosVMware Nginx安装、 默认虚拟主机、Nginx用户认证、Nginx域名重定向
一、 Nginx安装
cd /usr/local/src
wget http://nginx.org/download/nginx-1.12.1.tar.gz
版本在http://nginx.org/下载

tar zxvf nginx-1.12.1.tar.gz


进入配置文件
cd nginx-1.12.1

./configure --prefix=/usr/local/nginx

编译
make && make install




编写启动脚本vim /etc/init.d/nginx //复制如下内容
https://coding.net/u/aminglinux/p/aminglinux-book/git/blob/master/D15Z/etc_init.d_nginx

chmod 755 /etc/init.d/nginx 更改权限

chkconfig --add nginx

chkconfig nginx on 设置开机启动

更改配置文件
cd /usr/local/nginx/conf/
ls

配置文件conf,不用系统配置文件,使用自己的配置文件
mv nginx.conf nginx.conf.1 拷贝系统配置文件,并移动到自己的文件下边
vim nginx.conf //写入如下内容(参考https://coding.net/u/aminglinux/p/aminglinux-book/git/blob/master/D15Z/nginx.conf)
先拷贝一份

进入网址复制脚本


/usr/local/nginx/sbin/nginx -t 测试语法
/etc/init.d/nginx start 启动nginx
/etc/init.d/nginx start netstat -lntp |grep 80

测试是否成功
nginx欢迎页面

在index.html文件下面定义过

vim nginx.conf里边有定义过,即默认虚拟主机页面

访问任意网页都会跳转到主机页面

支持nginx解析地方

自己编写一个网页测试
[root@davery conf]# vim /usr/local/nginx/html/1.php

测试

二、 默认虚拟主机
vim /usr/local/nginx/conf/nginx.conf //增加
include vhost/*.conf; 一定要有;

编辑host相关配置
mkdir /usr/local/nginx/conf/vhost
vim aaa.conf 编辑文件
server
{
listen 80 default_server;// 有这个标记的就是默认虚拟主机
server_name aaa.com;
index index.html index.htm index.php;
root /data/wwwroot/default;
}

mkdir -p /data/wwwroot/default/

把以前的server注释掉,并添加如上

编辑wwwroot其他域名网页
mkdir -p /data/wwwroot/default/




或者
echo “This is a default site.”>/data/wwwroot/default/index.html

/usr/local/nginx/sbin/nginx -t
/usr/local/nginx/sbin/nginx -s reload
重启

或者重新加载

或者
[root@davery default]# /usr/local/nginx/sbin/nginx -s reload

检测一下
curl localhost
curl -x127.0.0.1:80 aaa.conf

随便访问都默认是者个域名,都指向这个虚拟主机

[root@davery default]# cd /usr/local/nginx/conf/



理解: 需要两个地方都要创建才能访问成功
vim /usr/local/nginx/conf/vhost/aaa.conf
server
{
listen 80 default_server; // 有这个标记的就是默认虚拟主机
server_name aaa.com;
index index.html index.htm index.php;
root /data/wwwroot/default;
}
vim /data/wwwroot/default/index.html
This is a default site.
curl localhost
curl -x127.0.0.1:80 aaa.conf
curl -x127.0.0.1:80 111.com
会先去访问aaa.conf里边的内容,然后脚本再指向/data/wwroot/default,再访问里边的index.html,即This is a default site.
这里虚拟主机就是default_server
三、Nginx用户认证
cd /usr/local/nginx/conf/vhost //写入如下内容
[root@davery vhost]# vim aaa.com.conf

server
{
listen 80;
server_name test.com; 需要验证的主目录
index index.html index.htm index.php;
root /data/wwwroot/test.com;
location /
{
auth_basic "Auth"; //定义用户认证名字
auth_basic_user_file /usr/local/nginx/conf/htpasswd; 用户名密码文件
}
}

yum install -y httpd

htpasswd -c /usr/local/nginx/conf/htpasswd davery 设置密码为davery

cat一下就生成文件了

生成第二个

/usr/local/nginx/sbin/nginx -t
/usr/local/nginx/sbin/nginx -s reload //测试配置并重新加载

测试提示401就说明需要用户认证

aaa.com.conf就可以,test.com就不能访问
[root@davery vhost]# mkdir /data/wwwroot/test.com
[root@davery vhost]# echo "test.com" > /data/wwwroot/test.com/index.html
[root@davery vhost]# curl -udavery:mimA123 -x127.0.0.1:80 test.com
访问失败为没有创建test.com主目录,创建后,使用认证密码登录就可以访问到了

定义访问admin时才需要认证,在配置文件中添加用户admin就可以
vim /usr/local/nginx/conf/vhost/aaa.com.conf
这个设置只针对目录

访问test.com就不需要用户密码认证了

在admin下边创建一个index.html文件
写入测试脚本,再次使用密码就可以访问到了
[root@davery vhost]# mkdir /data/wwwroot/test.com/admin
[root@davery vhost]# echo "test.com admin dir" > /data/wwwroot/test.com/admin/index.html

设置用户认证针对文件
vim /usr/local/nginx/conf/vhost/aaa.com.conf
设置为匹配admin.php

/usr/local/nginx/sbin/nginx -t 测试语法
/usr/local/nginx/sbin/nginx -s reload重加载

测试:这时候访问目录就不需要用户认证了,访问admin.php文件才需要用户认证

具体内容访问:centos7.aminglinux.com
四、Nginx域名重定向
更改配置文件
vim /usr/local/nginx/conf/vhost/aaa.com.conf
server
{
listen 80; server_name test.com test1.com test2.com;
index index.html index.htm index.php;
root /data/wwwroot/test.com;
if ($host != 'test.com' )
{
rewrite ^/(.*)$ http://test.com/$1 permanent; 即全写rewrite http://$host/(.*)$ http://test.com/%1 permanent
}
}
server_name后面支持写多个域名,这里要和httpd的做一个对比
permanent为永久重定向,状态码为301,如果写redirect则为302
vim /usr/local/nginx/conf/vhost/aaa.com.conf

测试
/usr/local/nginx/sbin/nginx -t 测试语法
/usr/local/nginx/sbin/nginx -s reload重加载

Linux centosVMware Nginx安装、 默认虚拟主机、Nginx用户认证、Nginx域名重定向的更多相关文章
- Nginx安装 默认虚拟主机 Nginx用户认证 Nginx域名重定向
Nginx安装 cd /usr/local/src (http://nginx.org/en/download.html) wget http://nginx.org/download/nginx-1 ...
- Nginx安装、默认虚拟主机、Nginx用户认证和域名重定向
6月7日任务 12.6 Nginx安装12.7 默认虚拟主机12.8 Nginx用户认证12.9 Nginx域名重定向 扩展nginx.conf 配置详解 http://www.ha97.com/51 ...
- nginx创建默认虚拟主机
创建默认虚拟主机配置文件作用:禁止任何人通过ip或未允许的域名访问web服务. 如:vim vhosts/default.conf server { listen 80 default; server ...
- LNMP配置——Nginx配置 —— 默认虚拟主机
一.配置 首先修改配置文件 #vi /usr/local/nginx/conf/nginx.conf 在最后一个结束符号}前加一行配置: include vhost/*.conf; 意思就是/usr/ ...
- LAMP 1.8默认虚拟主机
默认虚拟主机是为了解决别人域名恶心绑定自己的服务器ip,可导致服务器上的网站排名靠后,即干扰seo优化 我们访问指定的两个网站可以直接访问,ip也可以访问 打开配置文件 vim /usr/local/ ...
- apache禁止默认虚拟主机
禁止默认虚拟主机:作用使除特定域名外,其它的域名/ip无法访问此站点. 在虚拟主机配置文件中 即:/usr/local/apache2/conf/extra/httpd-vhosts.conf 将其中 ...
- [转] linux学习第四十四篇:Nginx安装,Nginx默认虚拟主机,Nginx域名重定向
Nginx安装 进入存放源码包的目录: cd /usr/local/src 下载源码包: wget http://nginx.org/download/nginx-1.12.1.tar.gz 解压: ...
- nginx的安装 、Nginx默认虚拟主机、nginx用户认证、nginx 域名重定向
1.nginx:官网:www.nginx.org 下载:wget -c http://nginx.org/download/nginx-1.14.0.tar.gz解压:tar -zxvf nginx ...
- 第四百零二节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署,uwsgi安装和启动,nginx的安装与启动,uwsgi与nginx的配置文件+虚拟主机配置
第四百零二节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署,uwsgi安装和启动,nginx的安装与启动,uwsgi与nginx的配置文件+虚拟主机配置 软件版本 uwsgi- ...
随机推荐
- iOS 音视频播放
播放控制切换为: ijkplayer wiki: https://github.com/changsanjiang/SJVideoPlayer/wiki/Use-ijkplayer 播放控制切换为: ...
- casperJs的安装
自己买了vps就是爽,想装什么就装什么.就比如说casperjs 1.首先需要安装它的运行环境phantomjs *将这个git项目clone到自己的vps上[https://github.com/a ...
- PAT 1014 Waiting in Line (模拟)
Suppose a bank has N windows open for service. There is a yellow line in front of the windows which ...
- Java进阶学习(2)之对象交互(上)
对象交互 对象交互 对象的识别 时钟小程序 把现实世界用对象去建模,去分解问题规模,最终抽象成对象和对象的模型 例如11:03的小程序,可以抽象成一个显示类,一个类生成两个对象去表示时钟 packag ...
- [C/C++] 只允许程序运行一个实例
原理是创建一个内核对象之后 如果再创建一个同名的对象 就会给代码中的GetLastError函数对应的变量修改为 ERROR_ALREADY_EXISTS (但是不影响"创建"对象 ...
- linux创建用户组、用户
创建用户组 groupadd -g 1024 nameinfo 创建用户 首先创建目录 mkdir -p /home 创建用户 useradd -g nameinfo -u 1024 -d /home ...
- windows centos php-beast 安装
https://github.com/imaben/php-beast-binaries windows下 可以直接在这里下载dll 根据自己的php版本 还有是不是线程安全的 来选择下载对应的 放 ...
- 【C语言】输入5个整数并按输入顺序逆序输出
#include <stdio.h> int main() { ],i; printf("请输入5个整数:\n"); ;i<;i++) scanf("% ...
- P1067
这题没什么好说的,就是判断,需要考虑仔细一点. AC代码: #include <bits/stdc++.h> using namespace std; const int N = 712; ...
- 每个JavaScript开发人员应该知道的33个概念
每个JavaScript开发人员应该知道的33个概念 介绍 创建此存储库的目的是帮助开发人员在JavaScript中掌握他们的概念.这不是一项要求,而是未来研究的指南.它基于Stephen Curti ...