本篇文章为你整理了nginx(nginx负载均衡)的详细内容,包含有nginx反向代理 nginx负载均衡 nginx启动命令和停止命令 nginx是干嘛用的 nginx,希望能帮助你了解 nginx。
Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx的网站有:百度、京东、新浪、网易、腾讯、淘宝等。
Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。
官网:https://nginx.org/
2.Nginx-命令(手动安装限定)
1.查看版本
./nginx -v
2.检查配置文件
./nginx -v
./nginx
./nginx -s stop
停止之后,我们可以查看nginx的进程:
ps -efgrep nginx
5.重新加载
当修改了Nginx配置文件后,需要重新加载才能生效,可以使用下面命令重新加载配置文件:
./nginx -s reload
3.环境变量配置
在上述我们在使用nginx命令在进行服务的启动、停止、重新加载时,都需要用到一个指令nginx,而这个指令是在nginx/sbin目录下的,我们每一次使用这个指令都需要切换到sbin目录才可以,使用相对繁琐。那么我们能不能在任意目录下都可以执行该指令来操作nginx呢?答案是可以的,配置nginx的环境变量即可。
打开/etc/profile文件, 在PATH环境变量中增加nginx的sbin目录,如下:
ecpot PATH=/usr/local/nginx/sbin:$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH
修改完配置文件之后,需要执行 source /etc/profile 使文件生效。 接下来,我们就可以在任意目录下执行nginx的指令了
1.安装依赖包
由于nginx是基于c语言开发的,所以需要安装c语言的编译环境,及正则表达式库等第三方依赖库。
yum -y install gcc pcre-devel zlib-devel openssl openssl-devel
2.下载Nginx安装包
以1.16.1版本为例
yum install wget
wget https://nginx.org/download/nginx-1.16.1.tar.gz
wget:
wget命令用来从指定的URL下载文件。wget非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性,如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕。如果是服务器打断下载过程,它会再次联到服务器上从停止的地方继续下载。
3.解压nginx压缩包
tar -zxvf nginx-1.16.1.tar.gz
4.配置Nginx编译环境
cd nginx-1.16.1
./configure --prefix=/usr/local/nginx
----prefix 指定的目录,就是我们安装Nginx的目录。
5.编译 安装
make make install
docker安装
1.docker拉取nginx镜像
docker pull nginx
2.创建映射容器的文件目录
创建配置文件目录
mkdir -p /mydata/nginx/conf/
mkdir -p /mydata/nginx/conf.d/
mkdir -p /mydata/nginx/log/
授予权限
chmod 777 /mydata/nginx/conf/
chmod 777 /mydata/nginx/conf.d/
chmod 777 /mydata/nginx/log/
3.在/mydata/nginx/conf/中创建nginx.conf文件
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log notice;
pid /var/run/nginx.pid;
log_format main $remote_addr - $remote_user [$time_local] "$request"
$status $body_bytes_sent "$http_referer"
"$http_user_agent" "$http_x_forwarded_for";
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
include /etc/nginx/conf.d/*.conf;
4.在/mydata/nginx/conf.d/中创建default.conf文件
server {
listen 80;
listen [::]:80;
server_name localhost;
#access_log /var/log/nginx/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
# deny access to .htaccess files, if Apaches document root
# concurs with nginxs one
#location ~ /\.ht {
# deny all;
5.创建容器
docker run -p 80:80 --name nginx \
--restart=always \
-v /mydata/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /mydata/nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf \
-v /mydata/nginx/html:/usr/share/nginx/html \
-v /mydata/nginx/log:/var/log/nginx \
-d nginx
-d:后台运行
-p:端口映射
--name:指定容器名称
-v:数据卷映射
--restart:重启容器方式
以上就是nginx(nginx负载均衡)的详细内容,想要了解更多 nginx的内容,请持续关注盛行IT软件开发工作室。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。