นี่คือเว็บแอปพลิเคชันสำหรับการรวบรวมข้อมูลตำแหน่งทางภูมิศาสตร์แบบเรียลไทม์ติดตามการดูและการจัดการ ร่วมกับไคลเอนต์มือถือμloggerโดยเฉพาะมันอาจใช้เป็นโซลูชันเซิร์ฟเวอร์ที่โฮสต์ด้วยตนเองที่สมบูรณ์สำหรับการบันทึกและตรวจสอบตำแหน่งทางภูมิศาสตร์ของผู้ใช้
การสาธิตสด:
- https://ulogger.lima.zone
- สำหรับการทดสอบแทร็กอัปโหลดด้วยแอป Android หรือติดตามการแก้ไขล็อกอินด้วยผู้ใช้: ตัวอย่างรหัสผ่าน: ตัวอย่าง
- โฮสต์โดย Lima-City.de
ข้อกำหนดขั้นต่ำ:
- PHP 5.5
- ส่วนขยาย PHP: Ctype, JSON, PDO (พร้อมไดรเวอร์ที่เกี่ยวข้อง), เซสชัน, simplexml, xmlwriter, xdebug (สำหรับการทดสอบเท่านั้น)
- MySQL, PostgreSQL หรือ SQLITE (มากกว่าไดรเวอร์ PDO)
- เบราว์เซอร์ที่เปิดใช้งาน JavaScript, คุกกี้สำหรับการตรวจสอบสิทธิ์และการตั้งค่าการบันทึก
คุณสมบัติ:
- เรียบง่าย
- อนุญาตให้ติดตามสด
- ติดตามสถิติ
- กราฟระดับความสูง
- ผู้ใช้หลายคน
- การรับรองความถูกต้องของผู้ใช้
- Google Maps
- OpenLayers (OpenStreet และเลเยอร์อื่น ๆ )
- การตั้งค่าผู้ใช้ที่เก็บไว้ในคุกกี้
- เมนูผู้ดูแลระบบง่ายๆ
- แทร็กส่งออกไปยัง GPX และ KML
- นำเข้าแทร็กจาก GPX
ติดตั้ง
- ดาวน์โหลด zipped archive หรือโคลนที่เก็บบนคอมพิวเตอร์ของคุณ
- ย้ายไปยังไดเรกทอรีเว็บเซิร์ฟเวอร์ของคุณ (คลายซิปถ้าจำเป็น)
- แก้ไขสิทธิ์โฟลเดอร์:
uploads โฟลเดอร์ (สำหรับภาพที่อัปโหลด) ควรเขียนได้โดยสคริปต์ PHP - ในกรณีของเวอร์ชันการพัฒนาจำเป็นต้องสร้างชุด JavaScript จากไฟล์ต้นฉบับ คุณจะต้องติดตั้ง
npm และเรียกใช้ npm install และ npm run build ในโฟลเดอร์รูท - สร้างฐานข้อมูลและผู้ใช้ฐานข้อมูล (อย่างน้อยเลือก, แทรก, อัปเดต, ลบสิทธิ์, สร้าง, วางสำหรับสคริปต์การตั้งค่า, ลำดับสำหรับ postgreSQL)
- สร้างสำเนาของ
config.default.php และเปลี่ยนชื่อเป็น config.php ปรับแต่งและเพิ่มข้อมูลรับรองฐานข้อมูล - แก้ไข
scripts/setup.php , เปิดใช้งานโดยการตั้งค่า $ เปิดใช้งานค่าเป็น true - ตรวจสอบให้แน่ใจว่าคุณมีเว็บเซิร์ฟเวอร์ที่ทำงานด้วย PHP และฐานข้อมูลที่เลือก
- เปิด http: //your_host/ulogger-server/scripts/setup.php ในเบราว์เซอร์ของคุณ
- ทำตามคำแนะนำในสคริปต์การตั้งค่า มันจะเพิ่มตารางฐานข้อมูลและตั้งค่าผู้ใช้μloggerของคุณ
- อย่าลืมลบหรือปิดใช้งาน
scripts/setup.php - เข้าสู่ระบบกับผู้ใช้ใหม่ของคุณใน http: // your_host/ulogger-server/
- คุณอาจต้องการตั้งค่าผู้ใช้ใหม่ของคุณเป็นผู้ดูแลระบบในไฟล์กำหนดค่า
- โฟลเดอร์
.docker/ และ .tests/ รวมถึงไฟล์นักแต่งเพลงเป็นสิ่งจำเป็นสำหรับการพัฒนาเท่านั้น อาจถูกลบออกอย่างปลอดภัย
อัพเกรดเป็นเวอร์ชัน 1.x
- การเปลี่ยนแปลงที่เข้ากันไม่ได้รวมถึงฐานข้อมูลและการเปลี่ยนแปลงไฟล์กำหนดค่า
- การอัพเกรดด้วยตนเอง:
- สำหรับการเปลี่ยนแปลงฐานข้อมูลดูสคริปต์ตัวอย่าง mysql ใน
scripts/migrate_to_1_x.mysql - ตั้งค่าคอลัมน์
admin ในตาราง users เป็นจริงสำหรับผู้ใช้งานผู้ดูแลระบบ - แก้ไขการกำหนดค่าจากกล่องโต้ตอบการตั้งค่าแอปพลิเคชัน
- การอัพเกรดด้วยสคริปต์การโยกย้ายจากเวอร์ชัน 0.6:
- สร้างการสำรองข้อมูลฐานข้อมูล
- แทนที่ไฟล์โครงการทั้งหมดด้วยไฟล์ใหม่ แต่เก็บไฟล์ config ท้องถิ่นเก่า:
config.php - เปลี่ยนไดเรกทอรีเป็นโฟลเดอร์รูทแอปพลิเคชันและเรียกใช้สคริปต์การย้ายข้อมูลจากคอนโซล:
php scripts/migrate_to_1_x.php - สคริปต์จะอัปเดตสคีมาฐานข้อมูลและบันทึกตัวแปร config เก่าไปยังฐานข้อมูล
- งานเพิ่มเติมหลังจากการอัปเดตด้วยตนเองหรือสคริปต์:
- แก้ไขไฟล์
config.php ของคุณและลบตัวแปรทั้งหมดยกเว้นการตั้งค่าฐานข้อมูลดู config.default.php สำหรับค่าที่ถูกต้อง - ตรวจสอบให้แน่ใจว่าโฟลเดอร์
uploads (สำหรับรูปภาพที่อัปโหลดจากแอปไคลเอนต์) สามารถเขียนได้โดย PHP - ล้างแคชเบราว์เซอร์และรีสตาร์ทเว็บเพจ
นักเทียบท่า
- เรียกใช้
docker run --name ulogger -p 8080:80 -d bfabiszewski/ulogger และเข้าถึง http://localhost:8080 ในเบราว์เซอร์ของคุณ เข้าสู่ระบบด้วย admin : ข้อมูลรับรอง admin และเปลี่ยนรหัสผ่านเริ่มต้น - ตัวเลือกการกำหนดค่าเสริมด้วยตัวแปร Env สำหรับรายการดู DockerFile ตัวแปรสอดคล้องกับพารามิเตอร์การกำหนดค่าμloggerหลัก
- ตัวอย่างเช่น:
docker run --name ulogger -e ULOGGER_LANG="pl" -p 8080:80 -d bfabiszewski/ulogger - คุณสามารถสร้างภาพด้วยตัวเอง เรียกใช้
docker build . จากโฟลเดอร์รูทที่ Dockerfile อาศัยอยู่ มีอาร์กิวเมนต์เวลาสร้างเพิ่มเติมที่อนุญาตให้คุณตั้งรหัสผ่านฐานข้อมูลเริ่มต้นสำหรับผู้ใช้รูทและ ulogger - ตัวอย่างเช่น:
docker build --build-arg DB_ROOT_PASS=secret1 --build-arg DB_USER_PASS=secret2 --build-arg DB_DRIVER=sqlite . - Docker ถูกสร้างขึ้นเพื่ออำนวยความสะดวกในการพัฒนาและทดสอบ มันยังไม่พร้อมการผลิต หากคุณต้องการใช้ในการผลิตคุณจะต้องปรับให้เข้ากับความต้องการของคุณ
การทดสอบ
- ติดตั้งการทดสอบการพึ่งพา การทดสอบ PHP ต้องการ php> = 7.3
-
composer install -
npm install
- การทดสอบการรวมอาจเรียกใช้กับอิมเมจนักเทียบท่า เราต้องการ HTTP ที่เปิดเผยและพอร์ตฐานข้อมูลทางเลือก (เช่นแมปกับ LocalHost 8080 และ 8081) ตัวอย่างด้านล่างสำหรับการตั้งค่า MySQL
-
docker build -t ulogger . -
docker run -d --name ulogger -p 8080:80 -p 8081:3306 --expose 3306 -e ULOGGER_ENABLE_SETUP=1 ulogger
- ใช้ตัวแปรสภาพแวดล้อม (หรือสร้างไฟล์
.env ใน .tests/ โฟลเดอร์) เพื่อตั้งค่ารายละเอียดการเชื่อมต่อ (ด้านล่างข้อมูลรับรองฐานข้อมูลเป็นค่าเริ่มต้น Docker)-
DB_DSN="mysql:host=127.0.0.1;port=8081;dbname=ulogger;charset=utf8" -
DB_USER=ulogger -
DB_PASS=secret2 -
ULOGGER_URL="http://127.0.0.1:8080"
- การทดสอบ PHP
-
XDEBUG_MODE=coverage ./vendor/bin/phpunit -c .tests/phpunit.xml
- การทดสอบ JS
- การทดสอบอื่น ๆ
-
npm run lint:js -
npm run lint:css
การแปล
- การแปลอาจมีส่วนร่วมผ่าน transifex
บริจาค
bc1qt3uwhze9x8tj6v73c587gprhufg9uur0rzxhvh
0x100C31C781C8124661413ed6d1AA9B1e2328fFA2
ใบอนุญาต
- GPL
- ไอคอนส่วนใหญ่มาจากไอคอน