本文介绍了centos6.5服务器安装Nginx设置服务和开机自启的方法,分享给大家,也给自己留个笔记
1、安装Nginx及其依赖
首先是老套路,使用ssh链接服务器,还记得以前的代码吗?
ssh -t 用户名@服务器IP或者域名 -p 22<!--用户名一般是root,方便操作,我的登录代码如下-->ssh -t root@acheng1314.cn -p 22
在终端中输入上面命令按下回车,要求我们输入密码,这个密码是不可见的,所以一定要输入正确。
链接到服务器后,我们切换到常用的安装路径,当然我服务器上面的安装路径是/usr/src,接着开始在终端操作:
<!--切换到安装目录下-->cd /usr/src<!--创建Nginx文件夹用来存放Nginx相关的资源和依赖-->mkdir Nginx<!--下载资源和依赖-->yum -y install zlib zlib-devel openssl openssl--devel pcre pcre-devel <!--上面的命令一般来说会是不需要安装什么,不过这都不重要,我们接着会重新安装指定的版本--><!--下载pcre-->wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.40.tar.gz<!--解压-->tar -zxvf pcre-8.40.tar.gz<!--切换到pcre目录-->cd pcre-8.40<!--设置-->./configure<!--编译-->make<!--安装-->make install<!--切换到Nginx主目录-->cd ..<!--下载及安装zlib-->wget http://zlib.net/zlib-1.2.11.tar.gz<!--解压-->tar -zxvf zlib-1.2.11.tar.gz<!--切换到zlib目录-->cd zlib-1.2.11<!--设置、编译、安装-->./configuremakemake install<!--切换到Nginx主目录-->cd ..<!--下载及准备ssl-->wget http://www.openssl.org/source/openssl-fips-2.0.14.tar.gz<!--解压-->tar -zxvf openssl-fips-2.0.14.tar.gz<!--yum安装ssl-->yum -y install openssl openssl-devel<!--下载及安装nginx-->wget http://nginx.org/download/nginx-1.4.2.tar.gztar -zxvf nginx-1.4.2.tar.gzcd nginx-1.4.2<!--设置Nginx安装目录/opt/nginx,且添加ssl支持-->./configure --prefix=/opt/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcremakemake install
到这里来讲,我们的nginx安装完成了,但是我们还需要做更多的事情,那就是配置服务器,添加ssl访问,设置服务和开机启动
2、配置服务器
互联网上关于服务器设置的很多,但是准确阐述的却不是那么多,而我刚好是在看了他们的东西后就呵呵了。正确的配置方法如下:
<!--切换到nginx设置目录-->cd /opt/nginx/conf<!--vim编辑nginx配置文件-->vi nginx.conf
我的nginx.conf如下:
#user nobody;worker_processes 1;#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;#pid logs/nginx.pid;events { worker_connections 1024;}http { include mime.types; default_type application/octet-stream; #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 logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on;# 注意这里是设置本机的相关的东西,建议不要更改 server { listen 80; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { root html; index index.html index.htm; # proxy_pass http://localhost; # proxy_set_header Host $host; # proxy_set_header X-Real-IP $remote_addr; # proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } #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; #} # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} } # another virtual host using mix of IP-, name-, and port-based configuration # #server { # listen 8000; # listen somename:8080; # server_name somename alias another.alias; # location / { # root html; # index index.html index.htm; # } #}# 这里是设置本机的https访问的,这里必须设置才能正确时https # HTTPS server # server { listen 443; server_name localhost acheng1314.cn www.acheng1314.cn; ssl on; # 这里是你申请的签名,扔到conf下面的cert目录中 ssl_certificate cert/214217283570796.pem; ssl_certificate_key cert/214217283570796.key; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; ssl_prefer_server_ciphers on; location / { # root html; # index index.html index.htm; proxy_pass http://localhost; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }}# 这里是设置域名跳转的,转发这些域名到本机的8080端口,server { listen 80; server_name *.acheng1314.cn acheng1314.cn; location / { proxy_pass http://localhost:8080/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } }