
运维服务
docker离线安装
一、准备工作:确认架构并下载安装包 1.1 确认目标服务器架构 在目标服务器上执行以下命令,确认系统架构: 输出 x8664:对应 amd64 架构(Intel/AMD 64位服务
[root@wulaoer ~]# cd /usr/local/nginx/conf/ [root@wulaoer conf]# ls enable-php.conf example fastcgi.conf.default fastcgi_params.default koi-win mime.types.default nginx.conf-20191205 nginx.conf_ghttp pathinfo.conf scgi_params uwsgi_params vhost enable-php-pathinfo.conf fastcgi.conf fastcgi_params koi-utf mime.types nginx.conf nginx.conf.default nginx.conf_ssl rewrite scgi_params.default uwsgi_params.default win-utf我的nginx.conf配置文件中有一条指定vhost目录的配置信息。
access_log /home/wwwlogs/access.log; include vhost/*.conf; } [root@wulaoer conf]#我们在vhost目录下创建一个新的nginx配置信息,这里不和nginx.conf冲突,不过格式必须是以.conf格式结尾。下面是我创建的一个二级域名的配置信息。
[root@wulaoer vhost]# cat gitbook.conf
upstream gitbook.wulaoer.org {
server localhost:4082; #这里就是我另一个程序的入口,只是在本地使用
}
server {
listen 80;
server_name gitbook.wulaoer.org;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://gitbook.wulaoer.org;
}
}
这是反向代理到指定的服务上,然后调用指定服务的IP+端口,upstream后面的字符串一定要和proxy_pass后面的http://字符串一致,如果两个域名都是本地的php文件就不需要使用upstream模块了,直接指定路径即可:
[root@wulaoer vhost]# cat gitbook.conf
server
{
listen 80;
server_name gitbook.wulaoer.org;
index index.html index.htm index.php;
root /home/wwwroot/wordpress; #网站路径
include enable-php.conf;
location /nginx_status
{
stub_status on;
access_log off;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*\.(js|css)?$
{
expires 12h;
}
location ~ /.well-known {
allow all;
}
location ~ /\.
{
deny all;
}
access_log /home/wwwlogs/access_wo.log;#域名的访问日志
}
也可以在上面针对不同的服务配置不同的日志文件以便区分。配置好之后,需要重启一下nginx或者重新加载一下
[root@wulaoer vhost]# echo "这个页面的域名是www.wulaoer.org" > /home/wwwroot/default/index.html [root@wulaoer vhost]# echo "这个页面的域名是gitbook.wulaoer.org" > /home/wwwroot/wordpress/index.html验证一下访问的内容:
[root@wulaoer vhost]# curl www.wulaoer.org 这个页面的域名是www.wulaoer.org [root@wulaoer vhost]# curl gitbook.wulaoer.org 这个页面的域名是gitbook.wulaoer.org反向代理的验证是我在自己的真实机上操作的,可以自己点击一下,域名也是一样分别是www.wulaoer.org和gitbook.wulaoer.org,不过这里的内容有些私密,所以我想加点权限上去,访问的时候需要输入用户名和密码,因为我不想我所有的东西都被人看到,所以需要设置一下。nginx权限需要用到htpasswd工具,我安装一下。
[root@wulaoer ~]# yum -y install httpd-tools创建登录的用户和密码
[root@wulaoer ~]# mkdir /usr/local/src/nginx [root@wulaoer ~]# htpasswd -c /usr/local/src/nginx/passwd wulaoer New password: Re-type new password: Adding password for user wulaoer root@wulaoer ~]# cat /usr/local/src/nginx/passwd wulaoer:***************************************创建用户的密码路径没有nginx目录所以手动创建了一个,如果创建的密码忘记了重复创建即可,相当于修改密码了。创建了用户名密码,那就添加到需要权限的nginx里,我这里两个域名的nginx,只在gitbook.wulaoer.org域名中增加权限,主域名www.wulaoer.org不增加权限了。
[root@wulaoer ~]# cd /usr/local/nginx/conf/vhost/
[root@wulaoer vhost]# vi gitbook.conf
upstream gitbook.wulaoer.org {
server localhost:4082;
}
server {
listen 80;
server_name gitbook.wulaoer.org;
auth_basic "Please input password"; #
auth_basic_user_file /usr/local/src/nginx/passwd;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://gitbook.wulaoer.org;
}
}
重启一下nginx,在访问的时候就需要验证用户名和密码了。这里的验证主要是针对不想对外开放的内容,有用户和密码即可访问。
评论 0