Puncte:0

Calea URL a redirecționării către o acțiune pe index?

drapel in

Rulez un server web apache pe Ubuntu 20.04.

Am un domeniu.com care direcționează clienții către index.html. Pe site există un buton care, atunci când este apăsat, deschide un widget pop-up calendaristic. Mi-ar plăcea oameni care merg la domain.com/schedule să aterizeze pe pagina de index de parcă ar fi făcut clic pe acel buton.

Cum pot face asta simplu?

Puncte:3
drapel es

Cu siguranță trebuie să declanșați fereastra pop-up din partea clientului. Iată o mostră rapidă pe care o puteți încerca cu ușurință și să vă adaptați (și să vă asigurați) nevoilor dvs.:

<html>
  <head>
      <script type="text/javascript">
        function isScheduleRequested() {
        if(window.location.href.includes('/schedule')) {
          document.getElementById('button').click();
        }
      }
      </script>
  </head>
  <body onload='isScheduleRequested();'>
      <button type="button" name="button" id="button" onclick="alert('Opening calendar');">Open calendar</button>
  </body>
</html>

Ceea ce face aceasta este, în general vorbind, să verifici dacă adresa URL a paginii curente conține subșirul „/schedule” (oriunde, nu neapărat la sfârșit, nici măcar o singură dată) și, dacă o face, atunci apelează butonul clic eveniment.

The onload='isScheduleRequested(); bit este doar pentru a vă asigura că scriptul javascript este executat după ce corpul este încărcat (și elementul buton există).

Puteți încerca chiar acest lucru pe computer. Salvați acest cod ca „index.html” și deschideți-l cu browserul dvs. Nu se va întâmpla nimic până când nu faceți clic pe butonul.Cu toate acestea, dacă adăugați ?q=/schedule la URI, evenimentul „clic” al butonului va fi declanșat. (În acest exemplu, trebuie să trecem /programa șir de caractere ca parte a unui parametru GET, deoarece nu există un nume de domeniu, un server sau ceva configurat de lux.).

donkey avatar
drapel in
Acesta este un început excelent, dar funcționează doar pentru domain.com?q=/schedule, în timp ce aș dori să funcționeze pentru domain.com/schedule. Cu toate acestea, când merg în prezent la domain.com/schedule, spune corect că nu există un astfel de director. Cum pot face ca asta să redirecționeze către index.html-ul meu?
drapel es
Cea mai simplă soluție la care mă pot gândi este definirea unui alias.Ceva de genul `Alias ​​/schedule "/var/www/"`, unde `/var/www/` este DocumentRoot-ul dvs. curent ar trebui să funcționeze. Practic apelează același index de director, deși ar trebui să fii atent cu toate căile tale relative.
donkey avatar
drapel in
Unde aș defini pseudonimul?
drapel es
Fie în _httpd.conf_, fie în fișierul _conf_ al gazdei virtuale, de preferință înainte ca acesta să fie corespunzător secțiune. De exemplu: ``Alias ​​"/schedule" "/var/www" Opțiuni Indexuri FollowSymLinks AllowOverride All Solicitați toate acordate ``
Puncte:0
drapel in

Pe serverul Apache puteți crea regulă de rescrie pentru redarea aceluiași index.html dintr-o altă cale, dar afișarea widgetului pop-up este ceva pe care trebuie să-l rezolvați în partea aplicației (de exemplu, JavaScript poate utiliza URL API Web.pathname pentru a detecta vizitarea domain.com/schedule URL). Când aplicația dvs. detectează acel utilizator vizitat domain.com/schedule (pe baza numelui căii), poate apela acțiunea de deschidere a widgetului pop-up.

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.