ECS centos6.8系统下从nginx安装到简单网站上线配置操作的完整记录
1.准备工作
1.1已购买阿里云云服务器ECS
1.2域名已购买并解析成功
1.3安装有远程链接工具Xshell和文件传输工具Xftf,并链接上ECS实例
2.安装nginx(在Xshell操作)
2.1检查安装环境
Nginx是C写的,需要用GCC编译;Nginx的Rewrite和HTTP模块会用到PCRE(Perl Compatible Regular Expression);Nginx中的Gzip用到zlib[1]。
因此在安装nginx之前需要检查当前环境是否已经安装有GCC、PCRE、Zlib还有一个就是OpenSSL。
使用rpm -qa命令查看GCC、Zlib、PCRE和OpenSSL是否已安装:
# rpm -qa gcc
gcc-4.4.7-17.el6.x86_64
# rpm -qa pcre
pcre-7.8-7.el6.x86_64
# rpm -qa zlib
zlib-1.2.3-29.el6.x86_64
# rpm -qa openssl
openssl-1.0.1e-48.el6_8.3.x86_64
可知,ECS centos6.8系统下已安装有所需要的以上软件,下一步直接安装nginx。
3.下载安装nginx
3.1下载
从http://nginx.org/download/下载ngixn安装包到/usr/local/src路径下(可指定),此次选择的是nginx-1.10.3.tar.gz:
# cd /usr/local/src
# wget http://nginx.org/download/nginx-1.10.3.tar.gz
3.2解压
# tar -zxvf nginx-1.10.3.tar.gz
3.3安装
3.3.1源码编译准备
使用./configure进行安装环境检查和安装配置(由于不确定默认安装路径,故指定安装路径为/usr/local/nginx),此命令会生成 Makefile:
# ./configure --prefix=/usr/local/nginx
3.3.2编译
# make
3.3.3安装
# make install
4.查看安装
# whereis nginx
nginx: /etc/nginx /usr/lib64/nginx /usr/local/nginx /usr/share/nginx
除了指定安装了nginx的路径/usr/local/nginx,其他路径的应该是nginx配置文件、可执行文件以及其他资源文件默认存放的位置吧。
5.启动nginx
nginx可执行文件存放路径: /usr/local/nginx/sbin/nginx
可进入/usr/local/nginx/sbin路径,输入 ./nginx -h命令,查看命令帮助:
# ./nginx -h
nginx version: nginx/1.10.3
Usage: nginx [-?hvVtTq] [-s signal] [-c filename] [-p prefix] [-g directives]
Options:
-?,-h : this help
-v : show version and exit
-V : show version and configure options then exit
-t : test configuration and exit
-T : test configuration, dump it and exit
-q : suppress non-error messages during configuration testing
-s signal : send signal to a master process: stop, quit, reopen, reload
-p prefix : set prefix path (default: /usr/local/nginx/)
-c filename : set configuration file (default: conf/nginx.conf)
-g directives : set global directives out of configuration file
也可以通过ps -A命令查看nginx进程状态,确认nginx已启动:
#ps -A | grep nginx
6.此时,输入服务器域名或公网IP,可以nginx的欢迎页面,表明nginx web服务器已经成功安装,下一步可进行相关配置。
至于为什么会出现该页面,可以查看nginx.conf,所在路径为:/usr/local/nginx/conf/ngin.conf,进入/usr/local/nginx/conf路径,输入以下命令:
# vi nginx.conf
产看到nginx.conf配置文件内容:
location / { root 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 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; #}
其中:
listener 监听端口
server_name 监听域名
location{}是用来为匹配的 URI 进行配置,URI 即语法中的“/uri/”。
location / { }匹配任何查询,因为所有请求都以 / 开头。
root指定对应uri的资源查找路径,html为相对路径,在我的服务器上完整路径为/usr/local/nginx/html/,
该路径下有一个index.html的文件,便是输入ECS实例IP或绑定的域名返回的响应内容。[2]
7.上线静态网站到服务器来完成网站简单发布
比如你已经建立了一个网站,资源文件都存放在test文件夹中,该文件下有一个index.html,路径为test/index.html。
7.1上传网站文件
通过xftp把test文件上传到/usr/local/nginx/html路径下
7.2修改nginx.conf文件
# vi ./nginx.conf
更改nginx.conf配置文件中location / {}中内容为:
location / {
root html/test;
index index.html index.htm;
}
然后,依次键入esc : wq Enter保存修改并退出
7.3重启nginx
进入/usr/local/nginx/sbin路径:
# ./nginx -s reload
然后,输入你的域名,就可以看到test/inde.html页面了,至此,完成nginx的安装和简单配置,不过此时服务器还只能处理静态资源,要提供动态的web服务,则需要其他模块来组合使用。
(ps.网上相关的内容有很多,处理更复杂需求的配置也有很多,不过我只是想通过解决简单的目的来梳理前端到后端的认知体系!我还是小白!)
[1]http://www.cnblogs.com/jtlgb/p/5809808.html
[2]http://www.cnblogs.com/skynet/p/4146083.html