码迷,mamicode.com
首页 > 其他好文 > 详细

nginx安装、默认虚拟主机、nginx用户认证、nginx域名重定向

时间:2018-08-13 23:57:26      阅读:331      评论:0      收藏:0      [点我收藏+]

标签:html   编译   一个   sbin   fas   usr   oca   错误   conf   

一:nginx安装

(1)下载、解压 Nginx
#cd /usr/local/src/
#wget http://nginx.org/download/nginx-1.8.0.tar.gz
#tar zxvf nginx-1.8.0.tar.gz
(2)配置编译选项
#cd nginx-1.8.0
#./configure \
--prefix=/usr/local/nginx \
--with-http_realip_module \
--with-http_sub_module \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--with-pcre
(3)编译、安装 Nginx
#make
#make install
因为nginx比较小,所以很快就会安装完,而且也不会出什么错误。
(4)启动nginx:
#/usr/local/nginx/sbin/nginx
检查nginx是否启动:
#ps aux |grep nginx
看是否有进程。

首先配置nginx配置文件,使其能够支持 php。
#vim /usr/local/nginx/conf/nginx.conf
找到
location = /50x.html {
root html;
}
在其后面新增如下配置:
location ~ .php$ {
root html;
fastcgi_pass unix:/tmp/php-fcgi.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
重新加载 /usr/local/nginx/sbin/nginx -s reload
创建测试文件:
#vim /usr/local/nginx/html/2.php
内容如下:
<?php
echo "test php scripts.";
?>
测试:
#curl localhost/2.php
test php scripts. [root@localhost nginx]#
显示成这样,才说明PHP 解析正常。

二:默认虚拟主机

#mkdir /usr/local/nginx/conf/vhosts
#cd !$
#vim default.conf 加入如下配置
server
{
listen 80 default_server;
server_name localhost;
index index.html index.htm index.php;
root /tmp/11111;
deny all;
}
说明:我们在之前的 nginx.conf中就已经定义了 include语句,意思是它会包含一些配置,在这里它会把/usr/local/nginx/conf/vhosts/目录下的所有*.conf文件加载。所以,我们在这个目录下定义了一个 default.conf文件,在这里你会发现 listen 80后面还有一个关键词叫做“default_server”,这个就是用来标记它是默认虚拟主机的。我们使用 deny all 限制了该虚拟主机禁止被任何人访问。

三:nginx用户认证

一、首先需要安装 apache,可以使用 yum install httpd 安装。然后生成密码文
件:
#htpasswd -c -m /usr/local/nginx/conf/htpasswd test
这样就添加了test用户,第一次添加时需要加-c参数,第二次添加时不需要-c参数。
在nginx的虚拟主机配置文件中添加
/usr/local/nginx/vhosts/test.conf
location ~ .*admin.php$ {
auth_basic "Auth";
auth_basic_user_file /usr/local/nginx/conf/htpasswd;
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;
}
这样就会把请求/uc_server/的访问给限制了,只有输入用户名和密码才可以继续访问,
基本上和apache的配置类似。
location /uc_server/ {
}:针对文件夹时,输入php文件所在路径

四:nginx域名重定向

在虚拟主机vhosts路径下配置文件中配置如下:
在server_name后面添加需要跳转的域名
if ($host != ‘www.a.com‘ ) {
rewrite ^/(.*)$ http://www.a.com/$1 permanent;
}
和 apache的相关配置很像。
301跳转设置:

server {
listen 80;
server_name 123.com;
rewrite ^/(.*) http://456.com/$1 permanent;
access_log off;
}

302跳转设置:

server {
listen 80;
server_name 123.com;
rewrite ^/(.*) http://456.com/$1 redirect;
access_log off;
}

nginx安装、默认虚拟主机、nginx用户认证、nginx域名重定向

标签:html   编译   一个   sbin   fas   usr   oca   错误   conf   

原文地址:http://blog.51cto.com/10941098/2159466

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!