首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用SED注释NGINX.CONF文件中的SSL

使用SED注释NGINX.CONF文件中的SSL
EN

Stack Overflow用户
提问于 2017-12-14 12:01:00
回答 1查看 995关注 0票数 0

在追求自动化的过程中,我试图对某些代码进行注释和注释。请注意,这是脚本的一部分,因此我试图隔离具有#ssl_system的特定行。

在此之前

代码语言:javascript
复制
#return 301 https://$server_name$request_uri; #ssl_system

#} #ssl_system

#server { #ssl_system

    # SSL configuration 
    #listen 443 ssl; #ssl_system
    #listen [::]:443 ssl; #ssl_system
    expires $expires;
    #include snippets/ssl-newdomain.com.conf; #ssl_system
    #include snippets/ssl-params.conf; #ssl_system

之后

代码语言:javascript
复制
return 301 https://$server_name$request_uri; #ssl_system

} #ssl_system

server { #ssl_system

    # SSL configuration 
    listen 443 ssl; #ssl_system
    listen [::]:443 ssl; #ssl_system
    expires $expires;
    include snippets/ssl-newdomain.com.conf; #ssl_system
    include snippets/ssl-params.conf; #ssl_system

实际上,它是启用和禁用SSL的一种方法。

我正在尝试使用SED:

这样做是可行的:

代码语言:javascript
复制
sudo sed -i -e "s|#server_name newdomain.com www.newdomain.com; #ssl_system|server_name newdomain.com www.newdomain.com; #ssl_system|g" "/var/www/srv/templates/nginx.tpl"

这并不意味着:

代码语言:javascript
复制
sudo sed -i "s|#return 301 https://$server_name$request_uri; #ssl_system|return 301 https://$server_name$request_uri; #ssl_system|g" "/var/www/srv/templates/nginx.tpl"

我希望有一组启用SSL的命令和另一组禁用SSL的命令。

我不太清楚我做错了什么,但是,任何洞察力都会很好。

更新

这起作用了

代码语言:javascript
复制
sudo sed -i "s|#return 301 https://[$]server_name[$]request_uri; #ssl_system|return 301 https://[$]server_name[$]request_uri; #ssl_system|g" "/var/www/srv/templates/nginx.tpl"
EN

回答 1

Stack Overflow用户

发布于 2017-12-14 12:11:45

启用操作:

代码语言:javascript
复制
sed -Ei 's/^([[:space:]]*)#(return|\}|server|listen|include)/\1\2/' file.conf

禁用操作:

代码语言:javascript
复制
sed -Ei 's/^([[:space:]]*)(return|\}|server|listen|include)/\1#\2/' file.conf
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47812902

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档