云服务器网:购买云服务器和VPS必上的网站!

nginx安装教程(nginx linux 安装)

本文目录:1、502 bad gateway怎么解决2、如何在linux上安装nginx3、https nginx证书安装方法?Nginx怎么安装https证书4、如何在ubuntu上安装nginx5、安装 Nginx 前 必须安装 PCRE6、在Windows系统上搭建Nginx+Python+M

本文目录:

  • 1、502 bad gateway怎么解决
  • 2、如何在linux上安装nginx
  • 3、https nginx证书安装方法?Nginx怎么安装https证书
  • 4、如何在ubuntu上安装nginx
  • 5、安装 Nginx 前 必须安装 PCRE
  • 6、在Windows系统上搭建Nginx+Python+MySQL环境的教程

502 bad gateway怎么解决

502badgateway要先找到nginx配置的路径。

然后找到nginx所在的error日志文件来查看具体原因。

如果是客户端浏览器配置的问题,以360浏览器为例,出现502BadGateway可能是设置了代代理导致的。

取消浏览器代理之后,刷新一下就可以访问了。

502BadGateway是一种报错提示,这一错误并不意味着上游服务器已关闭(无响应网关/代理),而是上游服务器和网关/代理不同意的协议交换数据。

鉴于互联网协议是相当清楚的,它往往意味着一个或两个机器已不正确或不完全编程。

如何在linux上安装nginx

1 nginx安装环境

nginx是C语言开发,建议在linux上运行,本教程使用Centos6.5作为安装环境。

gcc

安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc:yum install gcc-c++

PCRE

PCRE(PerlCompatible Regular Expressions)是一个Perl库,包括 perl 兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库。

yuminstall -y pcre pcre-devel

注:pcre-devel是使用pcre开发的一个二次开发库。nginx也需要此库。

zlib

zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip,所以需要在linux上安装zlib库。

yuminstall -y zlib zlib-devel

openssl

OpenSSL是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。

nginx不仅支持http协议,还支持https(即在ssl协议上传输http),所以需要在linux安装openssl库。

yuminstall -y openssl openssl-devel

2 编译安装

将nginx-1.8.0.tar.gz拷贝至linux服务器。

解压:

tar -zxvf nginx-1.8.0.tar.gz

cd nginx-1.8.0

1、 configure

./configure –help查询详细参数(参考本教程附录部分:nginx编译参数)

注意:临时文件目录指定为/var/temp/nginx,需要在/var下创建temp及nginx目录

参数设置如下:

./configure \

–prefix=/usr/local/nginx \

–pid-path=/var/run/nginx/nginx.pid \

–lock-path=/var/lock/nginx.lock \

–error-log-path=/var/log/nginx/error.log \

–http-log-path=/var/log/nginx/access.log \

–with-http_gzip_static_module \

–http-client-body-temp-path=/var/temp/nginx/client\

–http-proxy-temp-path=/var/temp/nginx/proxy\

–http-fastcgi-temp-path=/var/temp/nginx/fastcgi\

–http-uwsgi-temp-path=/var/temp/nginx/uwsgi\

–http-scgi-temp-path=/var/temp/nginx/scgi

2、 编译安装

make

make install

安装成功查看安装目录 :

3 启动nginx

cd /usr/local/nginx/sbin/

./nginx

查询nginx进程:

15098是nginx主进程的进程id,15099是nginx工作进程的进程id

注意:执行./nginx启动nginx,这里可以-c指定加载的nginx配置文件,如下:

./nginx-c /usr/local/nginx/conf/nginx.conf

如果不指定-c,nginx在启动时默认加载conf/nginx.conf文件,此文件的地址也可以在编译安装nginx时指定./configure的参数(–conf-path= 指向配置文件(nginx.conf))

4 停止nginx

方式1,快速停止:

cd /usr/local/nginx/sbin

./nginx -s stop

此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。

方式2,完整停止(建议使用):

cd /usr/local/nginx/sbin

./nginx -s quit

此方式停止步骤是待nginx进程处理任务完毕进行停止。

6 测试

nginx安装成功,启动nginx,即可访问虚拟机上的nginx

https nginx证书安装方法?Nginx怎么安装https证书

第一步:获取证书:

服务器 SSL 证书由系统通过 Email 方式发送给用户,证书文件的内容格式如下,请把您的 SSL

证书内容(包括“—–BEGIN CERTIFICATE—–”和“—–END CERTIFICATE—–”)粘贴到记

事本等文本编辑器中,在服务器证书代码文本结尾处回车换行,并分别粘贴证书链代码(包括“—–BEGIN CERTIFICATE—–”和“—–END CERTIFICATE—–”),修改文件扩展名,保

存包含证书和证书链代码的文本文件为 server.pem 或者 server.crt 文件。

第二步:修改配置文件:

最后把 server.crt(或者 server.pem) 、server.key(生成 csr 时生成的私钥)两个文件保存到同一个目录,例如/usr/local/nginx/conf 目录下。

1.用文本编辑器打开 Nginx 根目录下 conf/nginx.conf 文件找到并更新一下内容:

server

{

listen 443 ssl;

ssl_certificate /usr/local/nginx/conf/server.crt; (备注:证书路径)

ssl_certificate_key /usr/local/nginx/conf/server.key; (备注:私钥路径)

ssl_session_timeout 5m;

ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;

ssl_prefer_server_ciphers on;

location / {

root /home/wwwroot/; (备注:网站文件路径) index index.php index.html index.htm; (备注:默认首页文件指定)

}

Blow,I can’t anyway update.

listen 80 default_server;

listen [::]:80 default_server ipv6only=on;

server_name _;

index index.html index.htm index.php;

root /home/wwwroot/default;

第三步:https 访问排错调整设置:

如果控制每个网站对应的文件路径有单独的配置文件,一般放在/usr/local/nginx/conf/vhost 下面。需要编辑对应网站配置文件配置 443 端口,不然可能导致 http 能正常访问,https 访问 404 报错。修改规则参考如下:

server

{

listen 80; 启用 80

listen 443 ssl; 404 报错就是需要在这里启用 443

listen [::]:80;

server_name domain.com;

index index.html index.htm index.php default.html default.htm default.php;

root /home/wwwroot/;

include rewrite/opencart.conf;

error_page 404 /404.html;

Deny access to PHP files in specific directory

location ~ /(wp-content|uploads|wp-includes|images)/.*\.php$ { deny all; }

include enable-php.conf;

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$

{

expires 30d;

}

location ~ .*\.(js|css)?$

{

expires 12h;

}

location ~ /.well-known { allow all;

}

location ~ /\.

{

deny all;

}

location / {

if ($host != ‘’) {

rewrite ^/(.*)$ permanent;

设置重定向自动跳转到 www 网站。

}

try_files $uri @opencart;

}

location @opencart {

rewrite ^/(.+)$ /index.php?_route_=$1 last;

}

location /admin/ { index index.php;

}

location ~* (\.(tpl|ini))$ { deny all;

}

access_log /home/wwwlogs/domain.log;

}

修改保存重启 nginx 服务:

service nginx restart

Nginx 安装 SSL 证书成功过后显示如下:

如何在ubuntu上安装nginx

你好,

安装方法:

1.开始说明

  首先需要跟大家说明一下,这个教程中使用的IP地址是192.168.0.23,主机名称为Server1.example.com这些设置可能会有所不同,你需要根据不同情况进行修改。

2安装Apache2

2.切换管理员身份

在Ubuntu中需要用root身份进行操作,所以用下面的命令确保以root身份登录:

sudo su

3.开始安装MySQL5

apt-get install mysql-server mysql-client

你将被要求提供一个MySQL的root用户的密码,我们需要在红色区域设置密码。

New password for the MySQL “root” user: — yourrootsqlpassword

Repeat password for the MySQL “root” user: — yourrootsqlpassword

4.安装Apache2

Apache2的是作为一个Ubuntu的软件包,因此我们可以直接用下面命令安装它:

apt-get install apache2

5.安装PHP5

我们可以直接安装PHP5和Apache的PHP5的模块,如下:

apt-get install php5 libapache2-mod-php5

安装完需要重启

/etc/init.d/apache2 restart

6.测试的PHP5并获取PHP5安装的详细信息:

默认网站的文件根目录是在/var/www下中。现在我们将在该目录中创建一个小型PHP文件(info.php的)在浏览器中调用它。该文件将显示很多关于我们的PHP安装,如安装的PHP版本和有用的一些细节。

7.PHP5获得MySOL的支持

让PHP在MySQL中获得支持,我们可以安装的php-mysql软件包。安装一些其他的PHP5模块,以及您可能需要的应用程序,这是一个好主意:

apt-cache search php5

还安装需要安装的

apt-get install php5-mysql php5-curl php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl

现在重新启动Apache2的:

/etc/init.d/apache2 restart

8.安装phpMyAdmin

phpMyAdmin是一个网络接口,通过它可以管理你的MySQL数据库。

apt-get install phpmyadmin

你会看到以下问题:

Web server to reconfigure automatically: — apache2

Configure database for phpmyadmin with dbconfig-common? — No

安装 Nginx 前 必须安装 PCRE

Nginx是高度自由化的Web服务器,它的功能是由许多模块来支持。如果使用了某个模块,这个模块使用了一些类似zlib或OpenSSL等的第三方库,那么就必须先安装这些软件。Ubuntu下不像在centOS中使用yum直接在线安装,可以使用以下方法。

(1)PCRE库

PCRE库支持正则表达式。如果我们在配置文件nginx.conf中使用了正则表达式,那么在编译Nginx时就必须把PCRE库编译进Nginx,因为Nginx的HTTP模块需要靠它来解析正则表达式。另外,pcre-devel是使用PCRE做二次开发时所需要的开发库,包括头文件等,这也是编译Nginx所必须使用的。可以这样安装:

(2)zlib库

zlib库用于对HTTP包的内容做gzip格式的压缩,如果我们在nginx.conf中配置了gzip on,并指定对于某些类型(content-type)的HTTP响应使用gzip来进行压缩以减少网络传输量,则在编译时就必须把zlib编译进Nginx。zlib-devel是二次开发所需要的库。可以这样安装:

(3)OpenSSL库

如果服务器不只是要支持HTTP,还需要在更安全的SSL协议上传输HTTP,那么需要拥有OpenSSL。另外,如果我们想使用MD5、SHA1等散列函数,那么也需要安装它。可以这样安装:

网址:

最好在更新一下 openssl

但是升级了 openssl nginx 安装 –with-http_ssl_module 会报错 (所以我 为了开启 –with-http_ssl_module 没有升级 openssl 不升级也没什么关系 哈哈哈)

升级 openssl 教程:

在Windows系统上搭建Nginx+Python+MySQL环境的教程

1 安装nginx

下载windows上的nginx最新版本,/en/download.html。

解压后即可。

运行nginx.exe后本地打开localhost,将会看到欢迎页面,这证明nginx在本地运行良好,如果没有出现欢迎页面,请检查是否有进程占用了80端口。

2 安装flup

下载对应版本的flup,这里下载flup3.x版本,适合python3.2,下载地址:

解压(比如解压到D:flup)

安装(进入到python的安装路径,然后执行下面的命令

1 python setup.py install )

!注意,如果提示缺少setuptools,安装distribute-0.6.49.tar.gz,安装方法和flup安装一样,下载地址:

3 安装Mysql

在这里我使用的是5.1版本。在win系统上双击安装文件,下一步下一步完成。下载地址:/downloads/

4 安装数据库驱动

下载用于win上对应py版本的的python-mysql驱动,双击安装即可。下面的下载地址是3.2:

/wangqc/distribute-0.6.49.zip

5 配置服务器

首先需要修改nginx的配置文件nginx.conf。

找到:

1 2 3 4 location / { root html; index index.html index.htm; } 在里面加上:

1 2 3 4 5 6 7 8 9 10 11 12 host and port to fastcgi server fastcgi_pass 127.0.0.1:55880; fastcgi_param PATH_INFO $fastcgi_script_name; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param QUERY_STRING $query_string; fastcgi_param SERVER_NAME $server_name; fastcgi_param SERVER_PORT $server_port; fastcgi_param SERVER_PROTOCOL $server_protocol; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_pass_header Authorization; fastcgi_intercept_errors off; 然后测试该配置文件是否正确,在cmd中切换到nginx安装目录里,输入

1 nginx.exe -t 即可开始对配置文件测试,如果提示成功,说明配置正确,

这是可以结束掉任务管理器中所有的nginx.exe进程,重新运行ngin.exe重启nginx服务。

6 运行Server.py

在cmd下切换到项目目录,输入命令

1 python Server.py runfcgi method=threaded host=127.0.0.1 port=55880 注意,

这条命令只能用来启动项目,如果出现错误并不会给出提示。下面是正确的情况.

用浏览器打开127.0.0.1:8080 测试一下,项目是不是已经跑起来了(第一次运行等待的时间稍长,请耐心等待)。

7 一些注意事项

(1)、首先应该改的地方,这个大家应该都知道:

1 DEBUG = TEMPLATE_DEBUG = False将debug设置为False (2)、改一下ALLOWED_HOSTS,我死死的就将这个给忘了,我的`配置:

1 2 3 4 if DEBUG:根据DEBUG来确定 ALLOWED_HOSTS = [“”] else: ALLOWED_HOSTS = [“localhost”,”127.0.0.1″] (3)、重头戏来了,配置nginx:

这里相关的代码网上很多,但是几乎都没有说明一件事:

配置location ~ ^/static/ 的位置,一定要在location ~ ^/的前面,而且不能单纯的使用 location /static/ 或者location /static ,不然,static文件夹中的静态文件都不能加载!!!

ps:提起这个,慢慢的泪啊,就错在这里了。

嫌麻烦可以写成批处理,运行的时候双击一下就好了。

本文来源:https://www.yuntue.com/post/91505.html | 云服务器网,转载请注明出处!

关于作者: yuntue

云服务器(www.yuntue.com)是一家专门做阿里云服务器代金券、腾讯云服务器优惠券的网站,这里你可以找到阿里云服务器腾讯云服务器等国内主流云服务器优惠价格,以及海外云服务器、vps主机等优惠信息,我们会为你提供性价比最高的云服务器和域名、数据库、CDN、免费邮箱等企业常用互联网资源。

为您推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注