Ich habe von unserer Softwareentwicklung eine kleine Aufgabe bekommen an der ich etwas hänge. Vielleicht sieht jemand von euch mein Problem.
Prinzipiell geht es darum, dass diverse GoLang WebApps auf einem Debian Server gestartet werden sollen. Da ich nicht für jede einzelne WebApp eine IP Adresse habe, soll ich diese über einen Apache Proxy lösen.
Somit sollte jede WebApp über eine einzige IP Adresse erreichbar sein. Da jede WebApp über einen eindeutigen Port gestartet werden muss, muss im Apache eingestellt werden, dass ein bestimtes Verzeichnis über einen bestimten Port erreichbar ist.
Ich möchte somit einfach folgendes aufrufen:
http://ApacheServer.domain.com/myapp1 (diese ist über den Port 8080 erreichbar)
http://ApacheServer.domain.com/myapp2 (diese ist über den Port 8081 erreichbar)
Anbei meine Konfiguration.
- sudo apt install -y apache2
- sudo a2enmod proxy proxy_http
- sudo systemctl restart apache2
sudo nano /etc/apache2/sites-available/000-default.conf
Code: Alles auswählen
<VirtualHost *:80>
ServerName ApacheServer.domain.com
#ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
ProxyPass /myapp1/ http://ApacheServer.domain.com:8080/
ProxyPassReverse /myapp1/ http://ApacheServer.domain.com:8080/
ProxyPass /myapp2/ http://ApacheServer.domain.com:8081/
ProxyPassReverse /myapp2/ http://ApacheServer.domain.com:8081/
</VirtualHost>
Code: Alles auswählen
{
"Server": {
"Host": "ApacheServer.domain.com",
"PortHttp": 8080,
"PortHttps": 443,
"UseHttps": false,
"CertFile": "D:/certificate/cert.pem",
"KeyFile": "D:/certificate/key.pem",
"UseAuth": false
},
"Controller": {
"UseCache" : false
},
"Model": {
"CycleInterval": 5000,
"UpdateInterval": 600000,
"FilterImage": "ANI BMP CAL EPS FAX GIF IMG JBG JPE JPEG JPG MAC PBM PCD PCX PCT PG$
"FilterVideo": "MP4"
},
"View": {
"Template" : {
"Path": "template",
"DefaultPath": "default",
"BaseName": "base",
"Extension": "html",
"Include": [
"content"
]
}
},
"Environment": {
"ContextUrl": "/myapp1",
"UseLogger": false,
"Path" : {
"static": "/var/www/html/myapp1/",
"template": "/var/www/html/myapp1/",
"logging": "/var/www/html/myapp1/",
"image": "/var/www/html/myapp1/images/"
}
}
}
Die Seite ist jedoch nur über folgenden Link erreichbar http://ApacheServer.domain.com:8080/myapp1
Nicht über: http://ApacheServer.domain.com/myapp1
Was mache ich hier falsch?