nginx+php+多个域名,Nginx 配置虚拟主机(多个域名多个站)

efab29b6c3b0

图片发自简书App

Apache 可以通过配置sites-enabled配置虚拟主机,同样,nginx也支持该配置方法.

先来了解一下nginx的配置文件.

通常,nginx配置文件在/etc/nginx目录下有一个nginx.conf,这就是nginx的配置文件了,打开该配置文件,有时候会看到 这样的语句

include /etc/nginx/conf.d/*.conf;

也就是说 /etc/nginx/conf.d/下的conf文件也是nginx配置文件.

下面就来看怎样使用nginx配置多个域名多个站的虚拟主机

首先, 先把nginx.conf备份,可以进入/etc/nginx在linux命令行输入

cp nginx.conf nginx.conf.bak

然后创建两个文件夹sites-available和sites-enabled

mkdir sites-available sites-enabled

再把conf.d下的配置文件,比如default.conf 拷贝到sites-available下,分别重命名为site1.example1.com和site2.example2.com

cp /etc/nginx/conf.d/default.conf /etc/nginx/sites-available/site1.example1.com; cp conf.d/default.conf /etc/nginx/sites-available/site2.example2.com

然后,打开site1.example1.com并编辑,对site2.example2.com做同样操作:

在server代码块中,将server_name改为站点1的域名site1.example1.com,

server {

listen 80;

server_name site1.example1.com;

在server代码块的location代码块中,将root改为服务器将要放置site1的目录

location / {

root /usr/share/nginx/html/site1/;

index index.html index.htm index.php;

}

如果配置支持php,则php的root也需要改为服务器将要放置site1的目录

location ~ \.php$ {

root /usr/share/nginx/html/site1/;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

include fastcgi_params;

保存并退出,相应对site2.example2.com做类似操作

接着,为两个配置文件创建link

ln -sf /etc/nginx/sites-available/* /etc/nginx/sites-enabled

可以看一下是否成功

ls -l

然后,打开并修改/etc/nginx下的nginx.conf

找到语句include /etc/nginx/conf.d/*.conf;添加注释,并且再新增一行

# include /etc/nginx/conf.d/*.conf;

include /etc/nginx/sites-enabled/*;

保存并退出后,重启nginx服务,在命令行输入

service nginx restart

最后,别忘了将两个域名解析至服务器,为了测试配置是否成功,可以在

/usr/share/nginx/html/site1/ /usr/share/nginx/html/site2/ 两个目录下分别新建不同内容的网页,看访问两个域名的时候是否可以访问到新建的文件.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用nginx服务器来搭建下载,需要对nginx配置文件进行相应的设置。 首先,打开nginx配置文件,通常位于/etc/nginx/nginx.conf或/usr/local/nginx/conf/nginx.conf路径下。在文件的http块中进行配置。 1. 设置虚拟主机:可以通过server指令添加多个虚拟主机来实现多个下载点的管理。例如: ``` server { listen 80; server_name download.example.com; location / { root /path/to/download/files; autoindex on; } } ``` 上述配置中,listen指令用于监听80端口,server_name指令指定下载域名。location指令用于指定下载文件所在的路径,并通过autoindex on指令启用文件的自动索引功能。 2. 添加安全性措施:为了保护点和防止非法下载,可以在虚拟主机中添加一些安全性的配置。例如: ``` server { ... location / { ... #禁止访问特定类型的文件 location ~* \.(php|cgi|asp|aspx|exe)$ { deny all; } #限制只能从特定的来源进行下载 valid_referers server_names ~\.google\.com$; if ($invalid_referer) { return 403; } } } ``` 上述配置中,通过在location块中设置正则表达式,禁止访问特定类型的文件。通过valid_referers指令,限制只能从特定来源进行下载。 3. 配置SSL证书:如果需要在下载点中使用HTTPS协议,可以添加SSL证书配置。例如: ``` server { listen 443 ssl; ssl_certificate /path/to/certificate.pem; ssl_certificate_key /path/to/private_key.pem; ... } ``` 上述配置中,listen指令监听443端口,并通过ssl_certificate和ssl_certificate_key指令指定SSL证书的路径。 4. 保存并退出配置文件后,需要重启nginx服务器使配置生效。运行命令: ``` sudo systemctl restart nginx ``` 以上是一个基本的nginx配置文件实例,通过合理的配置,可以构建一个安全、稳定且高效的下载。根据实际需求和具体情况,可以进一步进行更复杂的配置

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值