การแก้จุดบกพร่องใน Heroku
เตรียม dyno
หลังจากติดตั้งแล้วnaaman/heroku-vim
คุณสามารถสร้างไดโนชั่วคราวใหม่ผ่านทางheroku vim
. ตามที่ระบุไว้อย่างถูกต้องในโพสต์อื่น ๆ คุณจะไม่สามารถเห็นการเปลี่ยนแปลงของคุณเมื่อดูผ่านเบราว์เซอร์เนื่องจากการเปลี่ยนแปลงจะไม่ถูกเผยแพร่ แต่ ... คุณสามารถดูการเปลี่ยนแปลงได้จากภายใน dyno เอง
ฉันได้ทดลอง "การท่องเว็บ" ผ่าน curl เท่านั้น แต่ถ้าคุณสามารถlynx
ไปที่นั่นได้หรือดีกว่า แต่ได้อุโมงค์ ssh - อาจจะดีมาก
เริ่มต้นเซิร์ฟเวอร์
เว็บเซิร์ฟเวอร์จะไม่ทำงานเมื่อคุณสร้างอินสแตนซ์ heroku-vim ดังนั้นคุณจะต้องดำเนินการเอง ในตัวอย่างของฉันฉันใช้ php:
~ $ cat Procfile
web: vendor/bin/heroku-php-apache2
คุณสามารถเริ่มคำสั่งนี้ด้วยตัวคุณเอง!
~ $ vendor/bin/heroku-php-apache2 2>/dev/null &
[2] 845
ตอนนี้กำลังทำงานอยู่เบื้องหลัง!
ขดเว็บไซต์ของคุณ
Dynos เริ่มต้นบนพอร์ตแบบสุ่ม โชคดีที่คุณรู้ว่าอันไหนเป็น$PORT
ตัวแปร!
~ $ curl localhost:$PORT
Hello World!
การแก้ไข
ทำสิ่งที่เป็นกลุ่มของคุณตอนนี้ แต่เมื่อคุณบันทึกไฟล์และขดอีกครั้งคุณจะไม่เห็นการเปลี่ยนแปลง ฉันไม่เข้าใจว่ามันแคชที่ไหน แต่มันถูกแคชไว้ คุณต้องฆ่าเซิร์ฟเวอร์และรีสตาร์ท
รีสตาร์ทเซิร์ฟเวอร์
ค้นหารหัสกระบวนการ
~ $ ps -f
UID PID PPID C STIME TTY TIME CMD
u6897 3 1 0 05:34 ? 00:00:00 bash
u6897 582 3 0 05:53 ? 00:00:00 bash vendor/bin/heroku-php-apache2
u6897 652 582 0 05:53 ? 00:00:00 bash vendor/bin/heroku-php-apache2
u6897 653 582 0 05:53 ? 00:00:00 bash vendor/bin/heroku-php-apache2
นี่582
คือรหัสหลัก - ใช้สิ่งนั้น
kill 582
รอเพียง 1 วินาทีจากนั้นเริ่มเซิร์ฟเวอร์อีกครั้ง (คุณจะได้รับรหัสกระบวนการใหม่!) การโค้งงอด้วยคำสั่งเดียวกันจะทำให้คุณได้รับหน้าอัปเดต