centos 重启nginx_在Centos7上将Apache(httpd)切换为Nginx的过程记录

原文转载自「刘悦的技术博客」https://v3u.cn/a_id_129

近期要上线几个基于tornado+motor的移动端接口服务,众所周知,Apache和tornado天生八字不合,尤其apache对python3尤为的不友好,tornado和nginx才是木石前盟,另外由于apache目前系统占用确实比较高,不光进程数多,httpd竟然占用了200多M,太庞大,决定换为较轻量级,高并发的nginx。

2cf14a9c7fffb3baf0854eb1b22e1805.png

如上图所示:系统也就2g ,除了mysql占用的100M, httpd 占了1/2 还多

首先由于apache和nginx默认都是监听80端口,所以首先要停止apache服务(为了保险起见,只是停止服务,不要卸载)

systemctl  stop httpd

第二步,安装nginx

#设置源
sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

#安装
yum install -y nginx

#启动服务
systemctl start nginx.service

#开机自启
systemctl enable nginx.service

由于机器上还有一些php服务,而nginx需要php-fpm的支持才能代理php,所以安装php-fpm

yum install php-fpm

yum install php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt

开启php服务
systemctl start php-fpm

开机启动php服务
systemctl enable php-fpm

然后将原来apache的服务配置翻译成nginx的,二者大同小异,值得一提的是,关于https服务,nginx配置要简单很多

apache配置:

<VirtualHost _default_:443>

#   General setup for the virtual host
DocumentRoot "/opt/v3u"
ServerName v3u.cn:443
ServerAdmin you@example.com
ErrorLog "/opt/lampp/logs/error_log"
TransferLog "/opt/lampp/logs/access_log"

#   SSL Engine Switch:
#   Enable/Disable SSL for this virtual host.
SSLEngine on


SSLCertificateFile "证书目录"
SSLCertificateKeyFile "证书目录"
SSLCertificateChainFile "证书目录"


<FilesMatch ".(cgi|shtml|phtml|php)$">
    SSLOptions +StdEnvVars
</FilesMatch>
<Directory "/opt/lampp/cgi-bin">
    SSLOptions +StdEnvVars
</Directory>


BrowserMatch "MSIE [2-5]" 
         nokeepalive ssl-unclean-shutdown 
         downgrade-1.0 force-response-1.0

CustomLog "/opt/lampp/logs/ssl_request_log" 
          "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x "%r" %b"

</VirtualHost>

翻译为ngixn的配置:

server {
        listen 443 ssl;
        server_name v3u.cn;
        root /opt/v3u;
location / {
            index  index.html index.htm index.php;
        rewrite ^/sitemap.xml$ /Index_sitemap last;
    rewrite ^/resume$ /Index_resume last;
    rewrite ^/search_(.+?)$ /Index_search_text_$1 last;
    rewrite ^/a_id_(.+?)$ /Index_a_id_$1 last;
    rewrite ^/ls_id_(.+?)$ /Index_ls_id_$1 last;
    rewrite ^/l_id_(.+?)$ /Index_l_id_$1 last;

         if (!-e $request_filename) {
   rewrite  ^(.*)$  /index.php?s=$1  last;
   break;
    }

        }

        ssl_certificate   证书目录;
        ssl_certificate_key  证书目录;

        location ~ .php(.*)$ {
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
                fastcgi_param PATH_INFO $1;
                include fastcgi_params;
        }
}

修改好配置文件,重启nginx

systemctl restart nginx.service

最后别忘了将apache的开机自启关闭

systemctl disable httpd

ok,到此从apache迁移到nginx就配置结束了,总体上没啥难度

bc2baea809e1d8514133b93416c3e950.png

由图上可知,应用了nginx之后,系统感觉清爽了很多,内存也节约了大约300多m,系统告别臃肿,轻装上阵。

原文转载自「刘悦的技术博客」 https://v3u.cn/a_id_129在Centos7上将Apache(httpd)切换为Nginx的过程记录

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值