首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将nginx配置文件从代码服务器转换为apache2配置文件

如何将nginx配置文件从代码服务器转换为apache2配置文件
EN

Stack Overflow用户
提问于 2021-11-05 22:36:24
回答 2查看 476关注 0票数 0

我之所以来到这里,是因为正如标题所示,我安装了代码服务器,只是我希望它在apache2下而不是在nginx下。我试图在https下设置我的服务器,我已经有了我的证书--我只需要配置文件。我是个初学者,所以我并不完全了解nginx和代码服务器是如何工作的,以及如何调整它。我遵循了许多教程来完成此操作,并且配置文件总是相同的:

代码语言:javascript
复制
server {
    listen 80;
    listen [::]:80;
    server_name domainname.domain.dev;
    location / {
        proxy_pass http://localhost:8080/;
        proxy_set_header Host $host;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection upgrade;
        proxy_set_header Accept-Encoding gzip;
    }
}

在我必须设置服务文件之前: code-server.service:

代码语言:javascript
复制
[Unit]
Description=code-server
After=apache2.service #I changed this line before it was: nginx.service

[Service]
Type=simple
Environment=PASSWORD=code-server-password
ExecStart=/usr/bin/code-server --bind-addr 127.0.0.1:8080 --user-data-dir /var/lib/code-server --auth password
Restart=always

[Install]
WantedBy=multi-user.target

你能帮我吗?我正在设法找到解决这个问题的办法,但我不知道怎么做

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-11-06 09:31:42

最后,我找到了解决问题的方法,我不得不使用apache反向代理。我不明白所有的代码,但它有效。对于那些和我有同样问题的人,我发现了这个网站:https://toscode.gitee.com/crazyleega/code-server/blob/master/doc/quickstart.md

为了激活https,从而激活ssl,我执行了以下操作:

代码语言:javascript
复制
<VirtualHost *:443>
  ServerName domainname

  RewriteEngine On
  RewriteCond %{HTTP:Upgrade} =websocket [NC]
  RewriteRule /(.*)           ws://localhost:8080/$1 [P,L]
  RewriteCond %{HTTP:Upgrade} !=websocket [NC]
  RewriteRule /(.*)           http://localhost:8080/$1 [P,L]
  SSLEngine on
  SSLProxyEngine on
  SSLCertificateFile pathofyourcert
  SSLCertificateKeyFile pathofyourkey
  ProxyRequests off
  ProxyPass        / http://localhost:8080/ nocanon
  ProxyPassReverse / http://localhost:8080/
</VirtualHost>

票数 0
EN

Stack Overflow用户

发布于 2021-11-05 22:58:54

我认为以下几点应该有效:

代码语言:javascript
复制
<VirtualHost _default_:80>
ServerName myserverdomainname
ServerAdmin webmaster@myserverdomainname
ProxyRequests Off
ProxyPreserveHost On
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
RequestHeader set Connection ""
RequestHeader set Upgrade $http_upgrade;
RequestHeader set Connection "upgrade"
RequestHeader set X-Forwarded-Proto "http"
<Location />
</VirtualHost>

启用SSL

代码语言:javascript
复制
<VirtualHost _default_:443>
ServerName myserverdomainname
ServerAdmin webmaster@myserverdomainname
SSLEngine on
SSLProxyEngine on
##LE Certs
SSLCertificateFile /etc/letsencrypt/live/domain/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/domain/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/domain/fullchain.pem
ProxyRequests Off
ProxyPreserveHost On
ProxyPass / http://localhost:8000/
ProxyPassReverse / http://localhost:8000/
RequestHeader set Connection ""
RequestHeader set Upgrade $http_upgrade;
RequestHeader set Connection "upgrade"
RequestHeader set X-Forwarded-Proto "https"
<Location />
</VirtualHost>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69859920

复制
相关文章

相似问题

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