티스토리 뷰

반응형

Asp.net Core

Program.cs 

 

builder.Services.Configure<ForwardedHeadersOptions>(options =>
{
    //프록시 서버 사용하기 위한 설정
    options.ForwardedHeaders = ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto;
    //옵션 : 해더정보 설정 Limit 수 Default : 1 
    options.ForwardLimit = 2;
    //신뢰할 프록시 서버 IP 추가
    options.KnownProxies.Add(IPAddress.Parse("127.0.0.1"));
    //옵션 : 포워드시 해더네임 설정
    options.ForwardedForHeaderName = "X-Forwarded-For-My-Custom-Header-Name";
});

 

// 해당 부분이 없으면 Default로 5000 port로 셋팅됨

builder.WebHost.ConfigureKestrel((context, serverOptions) =>
{
    //프록시 서버 listen port 설정
    serverOptions.Listen(IPAddress.Any, 15000, listenOptions =>
    {
        listenOptions.UseConnectionLogging();
    });
});

 

 

Apache

vhost.conf(httpd.conf)

 

<VirtualHost *:*>
#프록시 서버 이용하여 전달하는 역할
    RequestHeader set "X-Forwarded-Proto" expr=%{REQUEST_SCHEME}e 
</VirtualHost>

<VirtualHost *:80>
#프록시 서버로 전달
    ProxyPreserveHost On
    ProxyPass / http://localhost:15000/ retry=0
    ProxyPassReverse / http://localhost:15000/

#동작할 도메인(IP) 설정
    ServerName 'domainName or IP'
    ServerAlias 'domainName or IP'
    ServerAdmin root@localhost
    
#AspnetCore Dll파일이 있는 경로
    DocumentRoot /your/server/document/root/folder

#로그 경로
    ErrorLog ./logs/projectName-error.log
    CustomLog ./logs/projectName-access.log common
</VirtualHost>

 

 

 

기타 다른 설정들 하고 난 후 기동 시켰을때 

Permission denied: AH00957: HTTP:attempt to connect to 127.0.0.1:15000(127.0.0.1) failed

AH00959: ap_proxy_connect_backend disabling worker for(127.0.0.1) for XXs

에러가 난다면

root나 관리자 권한을 가진 계정으로

[root@localhost multiserver]# setsebool -P httpd_can_network_connect 1

실행(Selinux 설정 변경으로 권한 부여 : Selinux는 시스템 보안 관리 프로그램으로 윈도우 제어판에서 Window 보안 역할을 한다.)

반응형

'Programming > .Net' 카테고리의 다른 글

C#(.Net)에서 Log4net 설정 및 사용하기  (0) 2020.03.27
C# ref와 out의 차이  (0) 2019.03.05
자바 final 같은 기능이 C#에서는?  (0) 2019.02.01
전원 끄기 도우미  (0) 2015.06.08
Ibatis.NET XML Embedded 환경 설정 방법  (0) 2013.12.16
공지사항