Score:0

เปลี่ยนเส้นทาง URL ไปยังการดำเนินการกับดัชนี?

ธง in

ฉันใช้เว็บเซิร์ฟเวอร์ apache บน Ubuntu 20.04

ฉันมี โดเมน.คอม ซึ่งนำลูกค้าไปยัง index.html. บนเว็บไซต์มีปุ่มที่เมื่อคลิกแล้วจะเปิดวิดเจ็ตป๊อปอัปปฏิทิน อยากให้คนที่ไป domain.com/schedule เพื่อเข้าสู่หน้าดัชนีราวกับว่าพวกเขาได้คลิกปุ่มนั้น

ฉันจะทำอย่างนั้นได้อย่างไร?

Score:3
ธง es

คุณต้องเรียกป๊อปอัปในฝั่งไคลเอ็นต์อย่างแน่นอน นี่คือตัวอย่างสั้นๆ ที่คุณสามารถลองและปรับเปลี่ยน (และปลอดภัย) ตามความต้องการของคุณได้อย่างง่ายดาย:

<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>

โดยทั่วไป การดำเนินการนี้คือการตรวจสอบว่า URL ของหน้าปัจจุบันมีสตริงย่อย '/schedule' หรือไม่ (ที่ใดก็ได้ ไม่จำเป็นต้องต่อท้าย หรือแม้แต่ครั้งเดียว) และถ้ามี ให้เรียกปุ่มของ คลิก เหตุการณ์.

เดอะ onload='isScheduleRequested(); บิตเป็นเพียงเพื่อให้แน่ใจว่าสคริปต์จาวาสคริปต์ถูกเรียกใช้งานหลังจากโหลดเนื้อหาแล้ว (และมีองค์ประกอบปุ่มอยู่)

คุณสามารถลองทำสิ่งนี้บนคอมพิวเตอร์ของคุณ บันทึกรหัสนี้เป็น "index.html" และเปิดด้วยเบราว์เซอร์ของคุณ จะไม่มีอะไรเกิดขึ้นจนกว่าคุณจะคลิกปุ่มแต่ถ้าคุณผนวก ?q=/กำหนดการ ไปยัง URI เหตุการณ์ "คลิก" ของปุ่มจะถูกเรียกใช้ (ในตัวอย่างนี้เราต้องผ่านการ /กำหนดการ สตริงเป็นส่วนหนึ่งของพารามิเตอร์ GET เนื่องจากไม่มีชื่อโดเมน เซิร์ฟเวอร์ หรือการตั้งค่าใดๆ ที่แปลกใหม่)

donkey avatar
in flag
นี่เป็นการเริ่มต้นที่ดี แต่ใช้ได้กับ domain.com?q=/schedule เท่านั้น ในขณะที่ฉันต้องการให้ใช้กับ domain.com/schedule อย่างไรก็ตาม เมื่อฉันไปที่ domain.com/schedule ระบบแจ้งว่าไม่มีไดเร็กทอรีดังกล่าวอย่างถูกต้อง ฉันจะให้มันเปลี่ยนเส้นทางไปยัง index.html ของฉันได้อย่างไร
es flag
ทางออกที่ง่ายที่สุดที่ฉันคิดได้คือการกำหนดนามแฝงบางอย่างเช่น `Alias ​​/schedule "/var/www/"` โดยที่ `/var/www/` เป็น DocumentRoot ปัจจุบันของคุณควรใช้งานได้ โดยทั่วไปจะเรียกดัชนีไดเร็กทอรีเดียวกัน แต่คุณควรระวังเส้นทางสัมพัทธ์ทั้งหมดของคุณ
donkey avatar
in flag
ฉันจะกำหนดนามแฝงดังกล่าวได้ที่ไหน
es flag
ทั้งใน _httpd.conf_ ของคุณหรือในไฟล์ _conf_ ของโฮสต์เสมือนของคุณ โดยเฉพาะอย่างยิ่งก่อนที่จะสอดคล้องกัน ส่วน. ตัวอย่างเช่น: ``นามแฝง "/schedule" "/var/www" ดัชนีตัวเลือก FollowSymLinks AllowOverride ทั้งหมด ต้องได้รับอนุญาตทั้งหมด ``
Score:0
ธง in

ที่เซิร์ฟเวอร์ Apache คุณสามารถสร้างได้ เขียนกฎใหม่ สำหรับการเรนเดอร์ index.html เดียวกันจากพาธอื่น แต่การแสดงป๊อปอัปวิดเจ็ตเป็นสิ่งที่คุณต้องแก้ไขที่ฝั่งแอ็พพลิเคชัน (เช่น JavaScript สามารถใช้ URL ของเว็บ API ชื่อพาธ เพื่อตรวจหาการเยี่ยมชม domain.com/schedule URL). เมื่อแอปพลิเคชันของคุณตรวจพบว่าผู้ใช้เยี่ยมชม domain.com/schedule (ตามชื่อพาธ) มันสามารถเรียกใช้การดำเนินการเปิดวิดเจ็ตป๊อปอัป

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา