建议收藏chatGPT说的编译安装nginx教程

写在前面

这个是当下最流行最时髦的AI神器chatGPT和我一起合作写的一篇通用技术文章,请读者笑纳!

chatGPT说

咚咚咚,咚咚咚,嘿嘿;咚咚咚,咚咚咚,嘿嘿;AI等一会,我来发答案,看图!!!

命令演示

首先,从nginx官方网站(https://nginx.org/en/download.html)下载最新的nginx源码包。

这里我们选择Stable version下的1.22.1版本,先下载然后解压源码包,具体步骤如下:

wget https://nginx.org/download/nginx-1.22.1.tar.gz
tar -zxvf nginx-1.22.1.tar.gz
cd  nginx-1.22.1

下载的日志如下:

nginx的包解压后是这样子的

接着,安装一些必要的依赖库,执行命令:

sudo apt-get install build-essential libpcre3 libpcre3-dev zlib1g zlib1g-dev libssl-dev

再接着,配置nginx,执行命令:

./configure --prefix=/usr/local/nginx --with-http_ssl_module

这里的--prefix参数指定了nginx安装的路径,--with-http_ssl_module参数启用了SSL模块。

接下来是编译和安装,执行命令:

make
sudo make install

启动nginx, 执行如下命令:

cd /usr/local/nginx/sbin
./nginx &

如果没有报错,说明nginx已经成功安装并启动了, 可以通过ps aux | grep nginx查看nignx相关的进程。

接下来,我们要配置nginx的站点,具体如下:

在/usr/local/nginx/conf/目录下创建一个新的配置文件,例如example.conf,并添加以下内容:

server {
    listen       80;
    server_name  example.com;
    root         /var/www/example.com;

    location / {
        index  index.html index.htm;
    }
}

这里的server_name指定了该站点的域名,root指定了站点的根目录,location指定了站点的首页文件。

重启nginx:

/usr/local/nginx/sbin/nginx -s reload

这样就完成了nginx的编译和安装,并成功配置了一个站点。

或者你也可以不听它的,直接拷贝一份nginx.conf然后在nginx.conf上面改或者不改也行,默认的html目录在这里

实验拓展

试图改变首页nginx的展示

不想打字,交给AI吧, 就是这么皮,23333333。

一顿复制粘贴,如下:

<!DOCTYPE html>
<html>
<head>
	<title>我的页面</title>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<link rel="stylesheet" href="style.css">
</head>
<body>
	<header>
		<nav>
			<ul>
				<li><a href="#">首页</a></li>
				<li><a href="#">关于我们</a></li>
				<li><a href="#">产品</a></li>
				<li><a href="#">联系我们</a></li>
			</ul>
		</nav>
		<h1>欢迎来到我的页面</h1>
	</header>
	<main>
		<section>
			<h2>关于我们</h2>
			<p>我们是一家专注于XXX领域的公司,致力于为客户提供优质的XXX服务。</p>
		</section>
		<section>
			<h2>我们的产品</h2>
			<ul>
				<li>
					<h3>产品1</h3>
					<p>产品描述</p>
				</li>
				<li>
					<h3>产品2</h3>
					<p>产品描述</p>
				</li>
				<li>
					<h3>产品3</h3>
					<p>产品描述</p>
				</li>
			</ul>
		</section>
		<section>
			<h2>联系我们</h2>
			<form>
				<label for="name">姓名:</label>
				<input type="text" id="name" name="name"><br>
				<label for="email">邮箱:</label>
				<input type="email" id="email" name="email"><br>
				<label for="message">留言:</label>
				<textarea id="message" name="message"></textarea><br>
				<input type="submit" value="提交">
			</form>
		</section>
	</main>
	<footer>
		<p>版权所有 &copy; 2021</p>
	</footer>
</body>
</html>

然后执行nignx -s reload可以看到效果还是很不错的,AI真棒!!!

试图代理个网站看看

我们把问题抛给chatGPT看看答案是什么。

反向代理核心配置代码模板如下:

server {
    listen 80;
    server_name example.com;

    location / {
        proxy_pass http://backend-server:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

负载均衡核心配置代码模板如下:

upstream backend {
    server backend-server1:8080;
    server backend-server2:8080;
}

server {
    listen 80;
    server_name example.com;

    location / {
        proxy_pass http://backend;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

来看下代理的效果吧,原网页

代理后的,可以看到静态的页面没有问题,然后一些样式脚本可能还需要再配置下

最后,要和谐要文明,我们只支持国产,AI劝退!不过你去GitHub上搜下好像有人专门写了直接作为插件集成到nginx服务里面,可以玩玩看。

以上就是今天的全部内容,希望能在nginx入门的方面帮到你,再见!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值