-
nginx如何绑定域名
- 时间:2024-11-22 22:15:06
大家好,今天Win10系统之家小编给大家分享「nginx如何绑定域名」的知识,如果能碰巧解决你现在面临的问题,记得收藏本站或分享给你的好友们哟~,现在开始吧!
1.用apache怎么绑定域名
apache2如何将多个域名绑定到一个站点?使用serveralias
以前很傻。为了让多个域名指向同一个站点,通常是这样写的:
server admin i@kuigg.com文档root /www/kuigg.com服务器名kuigg.com
server admin i@kuigg.com文档root /www/kuigg.com服务器名www.kuigg.com
server admin i@kuigg.com文档root /www/kuigg.com服务器名abc.kuigg.com
通过这种方式,您可以在绑定域名的同时打开任意多的虚拟主机..
后来看了一本书,发现有一个叫“服务器别名”的东西可用。
其实可以是这样的:
服务器管理i@kuigg.com文档根目录/www/kuigg.com服务器名称kuigg.com服务器别名www.kuigg.com abc.kuigg.com
可以在serveralias后面写任意多的域名,用空格隔开。
在一个linux服务器下,我们一般会放多个网站,所以要建立一个虚拟目录。
有时一个网站
还需要绑定多个域名,那么我们配置虚拟怎么样?接下来我给大家分享一下我的配置过程。
xampp管理虚拟目录文件是:/opt/lampp/etc/httpd-vhosts。会议
[root @ localhost extra]# VI httpd-vhosts . conf
管理员@dummy-host2.example.com #管理服务器的邮箱。
一般不需要填写要绑定的网站服务器名称dummy-host2.example.com #域名服务器别名host2.example.com #的文档根目录/www/docs/dummy-host 2 . example.com #目录。绑定多个域名目录索引example.php #设置默认访问页面错误日志/dummy-host 2 . example.com-Error _ log #错误日志目录
Xampp默认没有打开虚拟目录的功能。
需要修改文件/opt/lampp/etc/httpd.conf。
搜索以下代码
# include etc/extra/httpd-vhosts . conf
移除前部#
重新启动apache服务器后,配置成功。
比如你需要建立一个it资讯网站,网站目录是:/opt/lampp/htdocs/itinfo。
你需要绑定两个www.chinajquery.comwww.jquerychina.com域名。
然后将下面的代码添加到我们的vhosts.conf的最后。
document root/opt/lampp/htdocs/it info服务器名称www.chinajquery.com服务器别名www.jquerychina.com目录索引test.php
最后重启apache服务器。
[root @ localhost extra]/opt/lampp/lampp restart
测试虚拟目录的配置是否成功。
增加
www.chinajquery.com
www.jquerychina.com
转到/etc/hosts
[root @ localhost extra]/etc/init . d/networking restart重新启动网卡。
然后在浏览器中输入www.chinajquery.com,如下界面显示配置成功。
2.linux中nginx如何配置一个ip多个域名
nginx绑定多个域名可又把多个域名规则写一个配置文件里,也可又分别建立多个域名配置文件,我一般为了管理方便,每个域名建一个文件,有些同类域名也可又写在一个总的配置文件里。
一、每个域名一个文件的写法
首先打开nginx域名配置文件存放目录:/usr/local/nginx/conf/servers ,如要绑定域名www.rodine.org 则在此目录建一个文件:www.rodine.org.conf然后在此文件中写规则,如:server
{
listen
80;
server_name www.rodine.org; #绑定域名
index index.htm index.html index.php; #默认文件
root /home/www/rodine.org; #网站根目录
include location.conf; #调用其他规则,也可去除
}然后重起nginx服务器,域名就绑定成功了nginx服务器重起命令:/etc/init.d/nginx restart
二、一个文件多个域名的写法
一个文件添加多个域名的规则也是一样,只要把上面单个域名重复写下来就ok了,如:
server
{
listen
80;
server_name www.rodine.org; #绑定域名
index index.htm index.html index.php; #默认文件
root /home/www/rodine.org; #网站根目录
include location.conf; #调用其他规则,也可去除
}server
{
listen
80;
server_name msn.rodine.org; #绑定域名
index index.htm index.html index.php; #默认文件
root /home/www/msn.rodine.org; #网站根目录
include location.conf; #调用其他规则,也可去除
}三、不带www的域名加301跳转
如果不带www的域名要加301跳转,那也是和绑定域名一样,先绑定不带www的域名,只是不用写网站目录,而是进行301跳转,如:
server
{
listen
80;
server_namerodine.org;
rewrite ^/(.*) http://www.rodine.org/$1 permanent;
}四、添加404网页
添加404网页,都可又直接在里面添加,如:
server
{
listen
80;
server_name www.rodine.org; #绑定域名
index index.htm index.html index.php; #默认文件
root /home/www/rodine.org; #网站根目录
include location.conf; #调用其他规则,也可去除
error_page
404 /404.html;
}学会上面四种规则方法,基本就可以自己独立解决nginx 多域名配置问题了
3.反向绑定域名的方法步骤详解
反向绑定域名最初应该是应用在站点负载均衡和域名内网转发上,利用反向绑定域名的 方法 可以将用户的不同请求分发到不同的服务器上,下面是我给大家整理的一些有关反向绑定域名的方法,希望对大家有帮助!
反向绑定域名的方法
一、利用虚拟主机空间作反向绑定域名
1、先找到一个支持自定义.htaccess,apache服务器,允许有反向代(^_^)理的权限的免费空间或者虚拟主机,将空间的.htaccess文件下载到本地,用记事本打开,将下列代码添加进去,再上传,如下:RewriteEngine On RewriteBase / RewriteRule ^(.*)$ hp://域名/$1 [P]
2、注意把代码中的网址替换成你想要反向绑定域名的域名,这里是强制将域名绑定到SAE空间上,用了SAE的二级域名地址
3、如果你找不到支持.htaccess的URL地址重写的虚拟主机或者空间,可以直接使用7ghost这个PHP程序,只要空间支持allow_furl_open和curl、容量至少要有500K即可。如果启用缓存的话需要 写权限和空间足够大。
4这是7ghost程序设置界面(点击放大),利用它你可以反向Dai理任何网站,详细的操作方法
二、利用Nginx反向绑定域名
1如果你有VPS主机,那么可以用Nginx的反向配置来搭建一个反向绑定域名的平台了,Nginx强大之处还在于还可以变成一个缓存平台,大大加快你反向Dai理的网站的访问速度。
2因为国内的空间不让绑定没有BA的域名,部落之前利用Nginx反向绑定域名到国内的空间上
三、利用kangle web搭建反向绑定域名服务器
1kangle web服务器是一款跨平台、功能强大、安全稳定、易操作的高性能web服务器和反向Dai理服务器软件,能实现强大的访问请求控制(url,ip地址,连接数/网速限制,hp头,时间控制,多种hp认证,#服务器负载,url重定向,url重写,内容过滤等等)。
2与上面的采用Nginx反向配置来搭建反向绑定域名不同的是,kangle web有良好的Web操作界面,通过搭建不同的配置可以实现复杂的反向域名
四、利用AMH和upupw来反向绑定域名
1AMH是国内一个开源的主机面板,可以创建 LNMP、LAMP、LNMH 等不同WEB应用环境,新版本的AMH还支持apache2.4和HHVM。AMH相应的功能模块也非常地多,其中AMProxy就是一个反向绑定域名模块。
AMProxy的2.0版本支持缓存管理功能,支持在线关键字添加、替换,支持设置不同类型文件替换、与支持添加自定义首尾html代码块等。利用CDN智能解析功能,将不同路线、地理位置的用户解析到相应服务器,对用户访问进行缓存加速,同时减轻源站的服务器压力
利用AMH反向绑定域名并成功绕过白**名单的方法,首先是要求:
一个有BA号的域名、一个没有BA号的域名、一台可以访问的境外主机,美国的VPS主机就可以。
使用 root 账号登录 Linux 服务器。执行 amh 安装脚本:wget hp://amh.sh/amh.sh && bash amh.sh
2>&1 | tee amh.log,根据提示输入选择1~3选项。
输入1回车,进入安装
极速安装方式大约只需要1至3分钟(以服务器性能为准),成功安装后系统会提示AMH与MySQL默认账号密码。可使用普通连接访问面板,ip:
8888,或加密的连接访问面板,ip:9999
登陆后台找到 模块扩展 > 下载模块,大约在第3页找到 AMProxy-2.0 下载并安装。在管理模块中找到并进入设置界面,可以看到新增AMProxy反向代理网站一栏。绑定域名:输入没有BA号的域名(IP),反代域名:输入有BA号的域名(IP)
用上面的方法,默认是反代到国内主机的80端口上,可是有些主机反代到80端口后还是无法访问,下面说一下如何使用其他端口建站。这里以没有BA号的域名 bukets.net和有BA号的域名 demo.vsen.me来作演示,环境是upupw+amh。
先在国内的云主机上安装upupw,然后新建虚拟主机域名输入为 demo.vsen.me,目录自设。打开upupw目录进入 Apache2conf,找到hpd-vhosts.conf并打开(注意不要使用系统的 笔记本 或文本文档打开,我用的是Notepad++)
找到刚刚新建的虚拟主机规则,并将 servername demo.vsen.me:
80 改为 servername demo.vsen.me:
8000,保存并关闭。继续打开目录下的hp.conf文件,在最下方 # upupw apache conf end 前增加如下代码,保存并关闭。
# 新增监听端口Include conf/hpd-listen.conf
在 Apache2conf 目录下新建 hpd-listen.conf 文件,在里面写入 Listen
8000,保存并关闭。打开系统防火墙(控制面板中),选择 例外 选项卡,点击下方的 添加端口 按钮,名称自起,端 口号 写入8000,确定。回到upupw面板,重启
没有意外的话,访问bukets.net就可以成功打开网站了。上面只做了一个网站的例子,如果以后有多个网站,那就需要重复以上步骤了
END
4.nginx如何配置域名
方法一:多个.conf方法(优点是灵活,缺点就是站点比较多配置起来麻烦)
这里以配置2个站点(2个域名)为例,n 个站点可以相应增加调整,假设:
IP地址:
192.168.1.100
域名1 example1.com 放在 /www/example1
域名2 example2.com 放在 /www/example2
配置 nginx virtual hosting 的基本思路和步骤如下:
把2个站点 example1.com, example2.com 放到 nginx 可以访问的目录 /www/
给每个站点分别创建一个 nginx 配置文件 example1.com.conf,example2.com.conf, 并把配置文件放到 /usr/local/nginx/vhosts/
然后在 /usr/local/nginx/nginx.conf 里面加一句 include 把步骤2创建的配置文件全部包含进来(用 * 号)
重启 nginx
1、打开 /usr/local/nginx/nginix.conf 文件,在相应位置加入 include 把以上2个文件包含进来
user www www;
worker_processes
1;
# main server error log
error_log /usr/local/nginx/log/nginx/error.log ;
pid /usr/local/nginx/nginx.pid;
events {
worker_connections 51200;
}
# main server config
http {
include mime.types;
default_type application/octet-stream;
log_format main ‘$remote_addr – $remote_user [$time_local] $request ‘
‘”$status” $body_bytes_sent “$http_referer” ‘
‘”$http_user_agent” “$http_x_forwarded_for”‘;
sendfile on;
#tcp_nopush on;
#keepalive_timeout
0;
keepalive_timeout
65;
gzip on;
server {
listen
80;
server_name _;
access_log /usr/local/nginx/log/nginx/access.log main;
server_name_in_redirect off;
location / {
root /usr/share/nginx/html;
index index.html;
}
}
# 包含所有的虚拟主机的配置文件
include /usr/local/nginx/vhosts/*;
}
2、在 /usr/local/nginx 下创建 vhosts 目录
mkdir /usr/local/nginx/vhosts
3、在 /usr/local/nginx/vhosts/ 里创建一个名字为 example1.com.conf 的文件,把以下内容拷进去
server {
listen
80;
server_name example1.com www. example1.com;
access_log /www/access_ example1.log main;
location / {
root /www/example1.com;
index index.php index.html index.htm;
}
error_page
500 502
503 504
/50x.html;
location =
/50x.html {
root /usr/share/nginx/html;
}
# pass the PHP scripts to FastCGI server listening on
127.0.0.1:9000
location ~ .php$ {
fastcgi_pass
127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /www/example1.com/$fastcgi_script_name;
include fastcgi_params;
}
location ~ /.ht {
deny all;
}
}
3、在 /usr/local/nginx/vhosts/ 里创建一个名字为 example2.com.conf 的文件,把以下内容拷进去
server {
listen
80;
server_name example2.com www. example2.com;
access_log /www/access_ example1.log main;
location / {
root /www/example2.com;
index index.php index.html index.htm;
}
error_page
500 502
503 504
/50x.html;
location =
/50x.html {
root /usr/share/nginx/html;
}
# pass the PHP scripts to FastCGI server listening on
127.0.0.1:9000
location ~ .php$ {
fastcgi_pass
127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /www/example2.com/$fastcgi_script_name;
include fastcgi_params;
}
location ~ /.ht {
deny all;
}
}
5、重启 Nginx
/etc/init.d/nginx restart
方法二:动态目录方法(优点是方便,每个域名对应一个文件夹,缺点是不灵活)
这个简单的方法比起为每一个域名建立一个 vhost.conf 配置文件来讲,只需要在现有的配置文件中增加如下内容:
# Replace this port with the right one for your requirements
# 根据你的需求改变此端口
listen
80; #could also be
1.2.3.4:80 也可以是1.2.3.4:80的形式
# Multiple hostnames seperated by spaces. Replace these as well.
# 多个主机名可以用空格隔开,当然这个信息也是需要按照你的需求而改变的。
server_name star.yourdomain.com *.yourdomain.com *.yourdomain.com/;
#Alternately: _ *
#或者可以使用:_ * (具体内容参见本维基其他页面)
root /PATH/TO/WEBROOT/$host;
error_page
404
access_log logs/star.yourdomain.com.access.log;
location / {
root /PATH/TO/WEBROOT/$host/;
index index.php;
}
# serve static files directly
# 直接支持静态文件 (从配置上看来不是直接支持啊)
location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|html)$ {
access_log off;
expires
30d;
}
location ~ .php$ {
# By all means use a different server for the fcgi processes if you need to
# 如果需要,你可以为不同的FCGI进程设置不同的服务信息
fastcgi_pass
127.0.0.1:YOURFCGIPORTHERE;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /PATH/TO/WEBROOT/$host/$fastcgi_script_name;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_intercept_errors on;
}
location ~ /.ht {
deny all;
}
最后附另外一个二级域名匹配的方法
绑定域名
server_name *.abcd.com;
获取主机名
if ( $host ~* (.*).(.*).(.*))
{
set $domain
$1;
}
定义目录
root html/abc/$domain/;
location /
{
root html/abcd/$domain;
index index.html index.php;
以上就是关于「nginx如何绑定域名」的全部内容,本文讲解到这里啦,希望对大家有所帮助。如果你还想了解更多这方面的信息,记得收藏关注本站~
文章♀来①自Win10系统之家,转载请联系网站管理人员!
相关文章
-
1.用apache怎么绑定域名apache2如何将多个域名绑定到一个站点?使用serveralias以前很傻。为了让多个域名指向同一个站点,通常是这样写的:serveradmini@kuigg.com文档root/www/kuigg.com服务器名kuigg.comserveradmini...
-
1.新睿云云主机怎么绑定和解析域名?域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站一种服务,市场上常见的域名有com、top、cn等等。域名解析也叫域名指向、服务器设置、域名配置以及反向IP登...
-
1.家里电脑做服务器域名怎么绑定1、做成web服务器需要满足:域名或者公网ip,电脑安装配置web服务,开启80端口允许访问,网站程序。2、域名或者公网ip,这一点一般家用宽带没有固定的公网ip,常用的动态域名解析花生壳,科迈...
-
1.企业邮箱如何绑定Foxmail啊晕,首先要清楚你的邮箱POP3和SMTP,然后直接在FOXMAIL里面直接邮箱-新建邮箱帐户......建立邮件帐户在Foxmail安装完毕后,第一次运行时,系统会自动启动向导程序,引导用户添加第一个邮件帐...