SSRS экспорт хэрэглэгчгүй VPN порталаар дамжин бүтэлгүйтдэг: юу ялгаатай вэ
Тайлангийн хуудас дүрслэлийг нотолдог, экспортыг биш. Порталаар дамжсан экспортын хүсэлтийг хянаж, толгой болон биеийг харьцуулж, дараа нь аливаа үл хамаарах зүйлийг нарийн хязгаарла.
Тайлан хөтөч дээр нээгдэж, параметрүүд дүрслэгдэж, экспортын товч алдаа, хоосон таталт эсвэл хүснэгт нээхээс татгалздаг файл үүсгэдэг. Энэ хослол стандарт хэлбэртэй. Ажиллаж буй тайлангийн хуудас дүрслэл болон баталгаажуулалтыг шалгасан, өөр юу ч үгүй. Экспорт нь өөрийн хариулттай тусдаа хүсэлт бөгөөд хэрэглэгчгүй порталаар дамжихдаа файл татахад зориулагдаж байгаагүй дахин бичих давхаргаар ч өнгөрдөг.
Хоёр зам, нэг ажиллаж буй хуудас
Дүрслэл ба экспорт нэг товчоос эхэлсэн ч өөр өөр үйлдэл юм. Тайлангийн сервер хуудсыг хөтөчдөд дүрсэлж, экспортыг өөрийн агуулгын төрөл, өөрийн алдааны зан төлөвтэй өөр гаралтын өргөтгөлөөр дүрсэлдэг, үүнийг экспортын баримт бичиг тайлбарладаг. Эхнийхийг төгс дамжуулдаг портал хоёр дахьыг эвдэж болно, учир нь хоёр дахь нь портал харахаар хүлээгээгүй хариулт юм. Хоёулаа нэг сесс болон хаягийг хуваалцдаг, өөр юу ч биш.
Ажиллаж буй хуудсыг зөвхөн баталгаажуулалт болон хүртээмжийн нотолгоо гэж үз. Энэ нь бүртгэл тайлангийн серверт хүрч чадах, портал HTML дамжуулдаг гэдгийг нотолдог. Файлын хариулт, агуулгын байршлын толгой, эсвэл баримт биш таталтаар төгсдөг дахин чиглүүлэлтийн талаар юу ч хэлэхгүй.
Аль хэдийн ажиллаж буй хуудсыг дахин шалгахын оронд экспортын замыг тусад нь харьцуулах бүх шалтгаан энд байна. Нэг сесс хуваалцдаг хоёр хүсэлт одоо ч хоёр хүсэлт юм.
Экспорт хаана тасрахыг тодорхойлох гурван нөхцөл
Гурван асуулт гэмтлийг хурдан тодорхойлж, асуулт бүрийн хариулт өөр өөр эзэнд заадаг.
Нэгд, ижил тайлан, бүртгэл, формат дотоод сүлжээнээс зөв экспортлогдож байна уу? Хэрэв тийм бол тайлангийн сервер болон түүний дүрслэгч хэвийн, ялгаа нь хандах замд байна. Хоёрт, бүтэлгүй хариулт файлын агуулгын төрөл агуулж байна уу, эсвэл файлын өргөтгөл өмссөн HTML хуудас уу? Энэ нь дүрслэгчийн алдааг порталын орлуулгаас ялгадаг. Гуравт, портал хүсэлтийн URL-ыг дахин бичдэг үү эсвэл хариултаас толгойг устгадаг уу? Дахин бичсэн URL огт өөр төгсгөлийн цэгт газардаж болно.
Аливаа тохиргоог өөрчлөхөөс өмнө гурвуулаад хариул, учир нь тус бүр өөр эмчилгээтэй. Дүрслэгчийн гэмтэл тайлангийн серверт хамаарна, орлуулсан бие порталд хамаарна, устгасан толгой нь алдаа биш, бодлогын асуудал.
Хариултуудыг бич. Тэр гурван мөрөөс бүрдсэн дэмжлэгийн хэрэг арван дэлгэцийн зурагтай тэнцэнэ.
Төлөвийн код биш, экспортын хариултыг унш
HTTP-ийн амжилттай төлөв нь ямар нэгэн зүйл хүсэлтэд хариулсныг л нотолдог. Бие болон толгойг хамт шалга, учир нь сонирхолтой гэмтэл бол буруу агуулга агуулсан амжилттай хариулт юм.
curl -sS -D export.headers -o export.bin --location "https://portal.example.com/reports/export?format=xlsx"
file export.bin
head -c 300 export.bin
Толгойн дэвсгэр агуулгын төрөл болон портал буцаасан аливаа агуулгын байршлыг харуулна. file команд бие нь үнэхээр юу болохыг тодорхойлдог, хүснэгт хүлээгдэж байсан газарт текст файл байх нь сонгодог орлуулсан нэвтрэх хуудас юм. head команд бүх тайланг терминал руу асгахгүйгээр HTML таних хангалтыг харуулна.
Түүний аль нэг хэсгийг хуваалцахаас өмнө сессийн күүки болон токеныг устга. Ажиллаж буй экспортын бичлэг нь ашигтай нотолгоо, бусдын сессийн бичлэг нь тохиолдол юм.
Үл хамаарах зүйлийг бүртгэлд биш, апп дээр хязгаарла
Хэрэв портал хариултыг дахин бичиж эсвэл блоклож байгаа бол уруу татдаг засвар нь бүх сайтыг чөлөөлөх эсвэл тайланг нэргүй болгох юм. Хоёулаа таталтыг засаж, портал орших шалтгааныг арилгадаг. Хязгаарлагдмал үл хамаарах зүйл нь нэг аппын зам, нэг агуулгын төрөл, нэг чиглэлийг нэрлэдэг бөгөөд бодлогыг эзэмшигчид хянуулахад нээлттэй хэвээр байна.
Таны үнэхээр ажиллуулж буй гарцын хувилбар болон түүний баримтжуулсан аппын тохиргоог ашигла. Нийлүүлэгч нэг удаа урсгалыг өөрчлөхгүй орхидог гэж тайлбарласан сонголт нь ерөнхий заавар биш, хуучин форумын сэдвээс хуулах нь түр зуурын үл хамаарах зүйлийг байнгын архитектур болгох зам юм.
Хэрэв үл хамаарах зүйлийг ийм нарийн хязгаарлаж чадахгүй бол экспорт нь порталын ард биш, өөр хандалтын аргатай дотоод замд хамаарах магадлалтай. Бүх сайтыг чөлөөлөх нь порталын эзний шийдвэр, нэг тайлангийн тойрч гарах зам биш.
Экспортыг хүлээж ав, хадгалах харилцах цонхыг биш
Сүүлийн шалгалт бол файл өөрөө: нээгддэг, хүлээгдэж буй багануудыг агуулдаг, нийлбэрүүд нь хэрэглэгчийн зөвшөөрсөн тайлантай таардаг.
Хадгалах харилцах цонх гарч ирэх нь амжилт биш, засварын анхааруулгатай нээгдэх файл ч амжилт биш. Дэлгэц дээрх тайлантай мөрийн тоо болон нэг мэдэгдэх утгыг харьцуул, учир нь тайрагдсан экспорт зөвхөн файлын хэмжээг хардаг бүх шалгалтыг давдаг. Дараа нь хоёр дахь удаа экспортол, учир нь нэг удаа буруу бие өгсөн кэш давхарга дараагийн оролдлогод зөвийг өгч магадгүй.
Хэрэглэгчид хэрэгтэй байсан ажлын урсгалыг хүлээж ав, үүнээс багагүй. Буруу апп дээр нээгдэх таталт ч бүтэлгүй экспорт хэвээр байна.