前提・実現したいこと
Apache経由でGolangのプログラムを動かせるようにしたいと思っております。
かつ、サブディレクトリにアクセスした時にGolangに繋がるようにしたいです。
例えば、http://{domain}/golang
みたいな形でアクセスした時にgoプログラムが動けばなあ、と
発生している問題・エラーメッセージ
下記のソース及びApacheのconfで実現できると思ったのですが、404エラーが返ってきます。
該当のソースコード
main.go
go
1package main 2 3import ( 4 "net" 5 "net/http" 6 "net/http/fcgi" 7) 8 9func main(){ 10 fs := http.FileServer(http.Dir("static")) // static下にはindex.htmlがあります 11 l,_:= net.Listen("tcp","127.0.0.1:8080") 12 http.Handle("/", fs) 13 fcgi.Serve(l,nil) 14}
Apacheのconf
(mod_proxyとmod_proxy_fcgiはinclude済み)
conf
1ProxyPass "/golang" "fcgi://127.0.0.1:8080/"
試したこと
http://{domain}/golang/index.html
でアクセスしても404エラーになります。
しかし、Apacheのconfを下記のようにサブディレクトリ指定ではなくルートにするとstatic
下にあるindex.htmlがちゃんと表示されます。
conf
1ProxyPass "/" "fcgi://127.0.0.1:8080/"
補足情報(FW/ツールのバージョンなど)
OS: CentOS7
Go: 1.13.11 linux/amd64
Server version: Apache/2.4.6 (CentOS)