nginx配置虚拟主机

简介:

准备站点目录:

我们站点统一放到/data/site下,每个站点根目录名称都和域名相同,具体如下。

新建a.deng.com站点根目录:

# mkdir -pv /data/site/a.deng.com

新建站点a.deng.com主页

# echo "this is a.deng.com" >> /data/site/a.deng.com/index.html

新建b.deng.com站点根目录:

# mkdir -pv /data/site/b.deng.com

新建站点b.deng.com主页

# echo "this is b.deng.com" >> /data/site/b.deng.com/index.html

新建统一日志目录

我们统一讲日志存放到/data/logs下,这边是存放nginx日志,所以nginx日志保持在当前的nginx目录下.日志统一存放相对来说比较规范

# mkdir -p /data/logs/nginx

创建虚拟主机配置文件:

# mkdir -p /usr/local/nginx/conf/vhosts

在nginx.conf的http{}中增加:

include /usr/local/nginx/conf/vhosts/*.conf;

配置虚拟主机:

增加nginx.conf的配置---配置日志格式,去掉#注释符

#log_format main '$remote_addr - $remote_user [$time_local] "$request" '

# '$status $body_bytes_sent "$http_referer" '

# '"$http_user_agent" "$http_x_forwarded_for"';

配置nginx的虚拟主机文件:

# vim /usr/local/nginx/conf/vhosts/a.deng.conf

server {

listen 80;

server_name a.deng.com;

root /data/site/a.deng.com;

index index.php index.htm index.html;

location ~ \.php$ {

include fastcgi_params;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

}

access_log /data/logs/nginx/a.deng.com-access.log main;

}

# vim /usr/local/nginx/conf/vhosts/b.deng.conf

server {

listen 80;

server_name b.deng.com;

root /data/site/b.deng.com;

index index.php index.htm index.html;

location ~ \.php$ {

include fastcgi_params;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

}

access_log /data/logs/nginx/b.deng.com-access.log main;

}

  • 配置讲解

server{}:配置虚拟主机必须有这个段。

server_name:虚拟主机的域名,可以写多个域名,类似于别名,比如说你可以配置成

server_name b.deng.com c.deng.com d.deng.com,这样的话,访问任何一个域名,内容都是一样的

listen 80,监听ip和端口,这边仅仅只有端口,表示当前服务器所有ip的80端口,如果只想监听127.0.0.1的80,写法如下:

listen 127.0.0.1:80

root /data/site/b.deng.com:站点根目录,你网站文件存放的地方。注:站点目录和域名尽量一样,养成一个好习惯

access_log /data/logs/nginx/b.deng.com-access.log main:访问日志

重启并打开站点

nginx -t 检查nginx配置是否ok,命令如下:

# /usr/lcoal/nginx/sbin/nginx -t

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok

nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

如果看到以上两行ok和successful就表示配置问题,那接下来我们启动nginx

启动nginx

# /usr/local/nginx/sbin/nginx

使用curl进行访问网站,先在linux下绑定hosts,进行DNS解析:

vim /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.0.139  a.deng.com b.deng.com

[root@localhost vhosts]# curl a.deng.com

this is a.deng.com

[root@localhost vhosts]# curl b.deng.com

this is b.deng.com



本文转自 IT_外卖小哥  51CTO博客,原文链接:http://blog.51cto.com/jinlong/1953539

相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
相关文章
|
1月前
|
前端开发 应用服务中间件 nginx
Nginx配置详解Docker部署Nginx使用Nginx部署vue前端项目
Nginx配置详解Docker部署Nginx使用Nginx部署vue前端项目
136 0
|
13天前
|
移动开发 前端开发 JavaScript
前端vue2、vue3去掉url路由“ # ”号——nginx配置(一)
前端vue2、vue3去掉url路由“ # ”号——nginx配置
44 0
|
14天前
|
JavaScript 前端开发 应用服务中间件
angular引入包、路由权限配置、打包问题与nginx配置问题(简单部署)
angular引入包、路由权限配置、打包问题与nginx配置问题(简单部署)
22 0
|
29天前
|
安全 应用服务中间件 Linux
linux nginx的配置总结
linux nginx的配置总结
17 0
|
13天前
|
前端开发 JavaScript 应用服务中间件
前端vue2、vue3去掉url路由“ # ”号——nginx配置(二)
前端vue2、vue3去掉url路由“ # ”号——nginx配置
42 0
|
7天前
|
应用服务中间件 PHP nginx
php如何实现检测nginx配置的正确性
请确保在执行此操作时,PHP有足够的权限来执行Nginx命令和访问Nginx配置文件。另外,将上述代码嵌入到您的应用程序中时,要注意安全性,以防止潜在的命令注入攻击。
45 3
|
14天前
|
安全 应用服务中间件 网络安全
linux_nginx中添加ssl配置(open ssl)
linux_nginx中添加ssl配置(open ssl)
24 1
|
14天前
|
JSON JavaScript 前端开发
vue2_vite.config.js的proxy跨域配置和nginx配置代理有啥区别?
vue2_vite.config.js的proxy跨域配置和nginx配置代理有啥区别?
30 1
|
17天前
|
安全 应用服务中间件 网络安全
SSL原理、生成SSL密钥对、Nginx配置SSL
现在,你的Nginx虚拟主机应该已经配置了SSL,可以通过HTTPS安全访问。确保在生产环境中使用有效的SSL证书来保护通信的安全性。
29 0
|
19天前
|
域名解析 缓存 负载均衡
Nginx正向代理域名的配置
Nginx正向代理域名的配置