Puncte:0

Implementarea aplicației react js prin configurarea unui proxy invers

drapel dk

Am o aplicație react js care rulează localhost: 3000 pe vps-ul meu (Godaddy).

Am configurat un proxy invers folosind serverul web Apache /var/www/html/ecommerce/app prin setare .htaccess ca aceasta:

DirectoryIndex dezactivat

RewriteEngine Pornit 
RewriteRule ^(.*)$ http://127.0.0.1:3000/$1 [P,L] 
RewriteRule ^$ http://127.0.0.1:3000 [P,L] 

Ideea este să accesați aplicația prin http://my-vps-public-ip/ecommerce/app.

În acest moment pagina nu se încarcă. Orice ajutor ar fi apreciat.

Pentru a testa dacă aplicația rulează într-adevăr http://localhost:3000 Am făcut un tunel SSH:

ssh -L 3000:$GD_IP:3000 -N logan@$GD_IP

Și, când îl văd din capătul meu http://localhost:3000, a mers! Deci ceva nu este în regulă cu configurația mea Apache?. Am făcut un proxy invers similar cu portul 8000 și a funcționat.

Acesta a funcționat într-un caz diferit:

DirectoryIndex dezactivat

RewriteEngine Pornit 
RewriteRule ^(.*)$ http://127.0.0.1:8000/api/$1 [P,L] 
RewriteRule ^$ http://127.0.0.1:8000/api [P,L] 

Prin „lucrat” vreau să spun, să zicem .htaccess fișierul este sub /var/www/html/ecommerce/api, apoi îl pot accesa prin http://my-vps-public-ip/ecommerce/api.

Când am vizitat http://$GD_IP:3000 se deschide site-ul! Dar de ce? .htaccess fișierul este sub /var/www/html/ecommerce/app așa că mă gândeam că va fi accesibil prin http://$GD_IP/ecommerce/app?

Ieșire din ss comanda:

logan@vps:~$ ss -ltn 'sport = :8000'
State Recv-Q Send-Q Adresă locală: Port Peer Address: Port Process    
ASCULTATE 0 511 *:8000 *:* 

logan@vps:~$ ss -ltn 'sport = :3000'
State Recv-Q Send-Q Adresă locală: Port Peer Address: Port Process    
ASCULTATE 0 511 0.0.0.0:3000 0.0.0.0:*

Ieșire din apachectl -S:

logan@vps:~$ apachectl -S
AH00558: apache2: Nu s-a putut determina în mod fiabil numele de domeniu complet calificat al serverului, utilizând ip-184-168-120-55.ip.secureserver.net. Setați directiva „ServerName” la nivel global pentru a suprima acest mesaj
Configurare VirtualHost:
*:80 ip-184-168-120-55.ip.secureserver.net (/etc/apache2/sites-enabled/000-default.conf:1)
ServerRoot: „/etc/apache2”
DocumentRoot principal: „/var/www/html”
ErrorLog principal: „/var/log/apache2/error.log”
Mutex proxy: using_defaults
Mutex implicit: dir="/var/run/apache2/" mecanism=default 
Mutex watchdog-callback: using_defaults
Mutex rewrite-map: using_defaults
Fișier Pid: „/var/run/apache2/apache2.pid”
Definiți: DUMP_VHOSTS
Definiți: DUMP_RUN_CFG
Utilizator: name="www-data" id=33 not_used
Grup: name="www-data" id=33 not_used
drapel cn
Modulul Apache `proxy` poate fi de ajutor, în special directivele `ProxyPass` și `ProxyPassReverse`. Vedeți, de exemplu, [acest răspuns la o întrebare similară](https://askubuntu.com/questions/1342447/how-do-i-setup-a-subdomain-in-apache2-on-ubuntu-20-04/1342457# 1342457).

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.