Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

Въпрос за WEB сайт
http://mcu-bg.com/mcu_site/viewtopic.php?f=14&t=15716
Страница 1 от 4

Автор:  Dimitar [ Чет Яну 25, 2018 1:50 am ]
Заглавие:  Въпрос за WEB сайт

Проблема е следния - за да са валидни патентите на една фирма те трябва да са или изписани като номера някъде върху продукта или пък върху продукта трябва да има web линк към страница на web сайта на компанията, където да са листнати всички патенти, които имат отношение към тоя продукт. Нещо от сорта на това:
WEB адреса на сайата на фирмата е примерно: http://www.company.com, парт номера на продукта е примерно PN0001, някъде върху продукта трябва да се сложи линк: http://www.company.com/PN0001 и като го напишат тоя адрес в браузера трябва да се отвори страница на която да пише нещо от сорта:

=============================
Патенти свързани с продукт PN0001:
US12345670
US12345671
US12345672
US12345673
=============================

Парт номерата на продуктите и патентите свързани с тях са вкарани в база данни (каква точно няма значение, но може да е всякаква). Това което се иска е въпросните страници да не са статични, защото има стотици продукти със стотици свързани патенти и е трудно да бъдат обновявани и даже съзададени първоначално, затова е добре страниците да се генерират автоматично с инфото от базата данни. От няколко дена се разправям с нашите IT-та и ми се обяснява как това не можело да стане или защото в линка вместо истинския парт номер трябвало да има някакво заклинание от около 50 букви и цифри, дето нямало нищо общо с парт номера или пък да сме направили стотици статични страници. За мен това са някакви абсолютни глупости и все си мисля, че е възможно и даже не би трябвало да е голям проблем да се направи точно каквото искам аз. Та какво мислите по въпроса - възможно ли е и ако е възможно на какви технологии трябва да се стъпи и ако не е възможно може ли да ми обясни някой на човешки език защо не е възможно.

Автор:  goose [ Чет Яну 25, 2018 8:58 am ]
Заглавие:  Re: Въпрос за WEB сайт

Невъзможно е или заради мързела на ИТ-тата, или заради некадърността им ... Иначе елементарна база с пхп над нея ще свърши работа

Автор:  miro_atc [ Чет Яну 25, 2018 11:38 am ]
Заглавие:  Re: Въпрос за WEB сайт

+1, с PHP и база данни е супер елементарно и въпросът не е как ще се направи това, а как ще се върже с останалата част от сайта в случай че има контент мениджмънт, сесии, акайунт с различен достъп и т.н.
Иначе желателно е да има някаква система за разпознаване на тоя тип заявки. Ако ще е в URL-то не е зле да има да кажем www.company/product/xxxx така всички заявки от директория product се прехващат в едно php, което проверява дали има такъв продукт в базата данни, генерира му страничка on the fly с всичките му патенти и прочие..

Автор:  ToHu [ Чет Яну 25, 2018 12:56 pm ]
Заглавие:  Re: Въпрос за WEB сайт

Елементарно е, може да са им замръзнали мозъците на вашите специалисти в тоя студ, или просто да нямат такива, начукай им канчетата по здрав, може да се вразумят. За да извадиш такъв списък е елементарна заявка, е разбира се има значение как е структурирана базата, то не че има мнгоо варианти, но може някой много талантлив да я е структурирал по нчин по който заявката да се изпълнява минути, но е трудно да си чак толкова талантлив, все пак са две полета, продукт и патент :)

Автор:  woody [ Чет Яну 25, 2018 1:03 pm ]
Заглавие:  Re: Въпрос за WEB сайт

Наистина е доста елементарно, аз дето отбягвам веб пак се сещам поне няколко варианта.
Освен директно с PHP може примерно и с CGI, пък отзад си слагайте скриптове/програми запитващи бозата с данни.

И понеже не е хубаво целият домейн да е само за патентите, пък и нали трябва да е "company.com", си трябва някакъв префикс както по-горе са писали.

Автор:  radolin [ Чет Яну 25, 2018 1:53 pm ]
Заглавие:  Re: Въпрос за WEB сайт

Tехнически не е особено сложно. Също трябва да е отделено от останалата част на сайта, в URL, както Миро каза, или поддомейн http://patents.company.com/productID

Аз пиша основно да кажа, че статичната генерация не е толков лош вариант. Първо, като производителност, ще е много по-бързо от обработка на заявки. Второ, и по-важно, като сигурност с един куп статични HTML-и изсипани на уеб сървър ще е в пъти по-добре. Кой знае какъв бъг ще излезне в PHP-то (примерно), пък в тази база данни сигурно има и други неща, дето не искате да ги показвате.

Не знам колко често се променя тази информация, но един cron job, дето веднъж на ден да минава и регенерира може би не е толкова лоша идея.

Автор:  ToHu [ Чет Яну 25, 2018 2:05 pm ]
Заглавие:  Re: Въпрос за WEB сайт

Какъв бъг да излезе с php-то, една проста заявка и лист от N реда .... това може да е съвместимо с всичко чак до netscape. Има много варианти, няма абсолютно нищо сложно, аз не мога да разбера какво означава статично, колко статично, вземаш и го правиш директно като html ли ? Стига, тоя вебсайт сигурно има CMS, дори през CMS може да се направи динамично от самите потребители само да занят къде им е базата.

Автор:  bobyper [ Чет Яну 25, 2018 2:10 pm ]
Заглавие:  Re: Въпрос за WEB сайт

Това пренасочване на различни заявки към web server-a към един скрипт се прави с преконфигуриране на самия web server При apache става с нещо такова

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

Това вика винаги index.php като в $_SERVER[REDIRECT_URL] ще има субфолдерите, примерно
при http://www.company.com/PN0001 $_SERVER[REDIRECT_URL] = /PN0001
при http://www.company.com/PN0002 $_SERVER[REDIRECT_URL] = /PN0002

Автор:  radolin [ Чет Яну 25, 2018 2:16 pm ]
Заглавие:  Re: Въпрос за WEB сайт

ToHu написа:
Какъв бъг да излезе с php-то, една проста заявка и лист от N реда .... това може да е съвместимо с всичко чак до netscape. Има много варианти, няма абсолютно нищо сложно, аз не мога да разбера какво означава статично, колко статично, вземаш и го правиш директно като html ли ?


Да, статично до HTML. Имайки предвид отговорите от отговорните хора до момента, ако те седнат да го пишат, според теб какъв е шанса да има възможност за SQL injection в резултата?

Автор:  michev [ Чет Яну 25, 2018 2:31 pm ]
Заглавие:  Re: Въпрос за WEB сайт

Лесна и постижима задача е.
Само да вметна, че леко не съм съгласен с това -
radolin написа:
...Аз пиша основно да кажа, че статичната генерация не е толков лош вариант. Първо, като производителност, ще е много по-бързо от обработка на заявки. Второ, и по-важно, като сигурност с един куп статични HTML-и изсипани на уеб сървър ще е в пъти по-добре. Кой знае какъв бъг ще излезне в PHP-то (примерно), пък в тази база данни сигурно има и други неща, дето не искате да ги показвате.

Не знам колко често се променя тази информация, но един cron job, дето веднъж на ден да минава и регенерира може би не е толкова лоша идея.

Статични страници се правят за бързодействие или липса на конкретна технология за динамични такива. Отварянето на страницата ще е 1 до 2 заявки към БД, което е абсурдно смешно като натоварване а и посетителите не се очаква да са хиляди в секунда.
Ако ги направиш статични, рискуваш някой да ти зарази файловете с някой js ad/spy или там какъвто искаш adware и да си загубиш времето в регенерирането им. Мой приятел си изпати по същата схема - целия му сайт е статичен и го налази нещо което се беше внедрило в доста от файловете му. Голяма мъка беше да се изчисти.
Та, цялата работа е буквално 1 единствен php със 100-тина реда код и Н на брой реда за html-а, малко настройки на .htaccess/nginx-conf-a.
A относно изискванията - apache/nginx (стандартно) или друг уеб сървър, поддържащ PHP и имащ възможност за rewrite на urls, PHP с модул за работа с нужната база данни. Някой друг свободен час.

Автор:  radolin [ Чет Яну 25, 2018 2:55 pm ]
Заглавие:  Re: Въпрос за WEB сайт

michev написа:
Статични страници се правят за бързодействие или липса на конкретна технология за динамични такива.


Да, в повечето случаи това се ползва за сайтове с голямо натоварване.

michev написа:
Ако ги направиш статични, рискуваш някой да ти зарази файловете с някой js ad/spy или там какъвто искаш adware и да си загубиш времето в регенерирането им. Мой приятел си изпати по същата схема - целия му сайт е статичен и го налази нещо което се беше внедрило в доста от файловете му. Голяма мъка беше да се изчисти.


В случая със статични страници имаш един уязвим компонент и това е уеб сървърът (изключвам операционната система). Приемаме, че е конфигуриран добре и си ъпдейтваш нещата - не би трябвало да имаш грижи.

Във втория случай имаш уеб сървър, база данни, език от сорта на PHP, код написан за този език от незнайно кого и незнайно как. И най-важното - данни от потребителя като входни за този код. Извинявай, но не можеш да ме убедиш, че това ще е по-сигурно от варианта със статични страници.

Какъв ще е този вирус дето ей така ще ти налази уеб сървъра и как?! Същия тоя вирус не може ли да ти налази и PHP приложението и сървъра на който то се изпълнява?

Регенерирането освен ако нямат милиони продукти и патенти ще отнема секунди, минути в най-лошия случай и може да се изпълнява автоматично на определен период. Ако някой ти 'пробие' уеб сървъра, правиш нов и задействаш един път ръчно процедурата.

Каква голяма мъка е видял твоя приятел не мога да разбера, освен ако не е направил ръчно 1000 HTML файла, които после е оправял с текстов редактор един по един.

Автор:  michev [ Чет Яну 25, 2018 3:20 pm ]
Заглавие:  Re: Въпрос за WEB сайт

Забравяш, че е твърде вероятно там да има инсталиран друг уеб продукт - основния им сайт. Какъв ще е той, колко сигурен ще е - само клиента евентуално си знае.
Така че, определено може да има пробив. Отделно, пробива може да дойде от твоя компютър, ако си да кажем windows потребител и се логваш към FTP-то.
Тъй като не знам колко продукта би имало и колко страници трябва да се генерат в дългосрочен план и предвид слабата натовареност, не биx тръгнал да правя кеширани страници.
Една бърза корекция в базата данни ще стои неотразена известно време, докато не мине крона да генерира наново файловете. Отделно, знаеш че има лимити на броя файлове и папки - inodes от различните хостинг доставчици и ще е супер неприятно да се издъниш точно в тази част.
Относно SQL injection - ако не може програмиста да се справи подобаващо с 1 параметър, мисля то тази задача не е за него.

radolin написа:
Какъв ще е този вирус дето ей така ще ти налази уеб сървъра и как?! Същия тоя вирус не може ли да ти налази и PHP приложението и сървъра на който то се изпълнява?

Да, може да ми бъде заразено PHP-то, но ще е 1 файл.
radolin написа:
Каква голяма мъка е видял твоя приятел не мога да разбера, освен ако не е направил ръчно 1000 HTML файла, които после е оправял с текстов редактор един по един.

Да, точно такъв му е случая, само дето файловете бяха по-малко.

В крайна сметка, важното е, че отговора на питането на Димитър е прост - да, напълно възможно и лесно е, при това с повече от 1 подход.

Автор:  Dimitar [ Чет Яну 25, 2018 3:26 pm ]
Заглавие:  Re: Въпрос за WEB сайт

Базата данни ще се ъпдейтва веднъж седмично примерно със създадените нови продукти. Патентите не са толкова много - може би около 80, но нови продукти се създават почти всяка седмица. Хубавото е, че за сега нямаме такава база данни, т.е. трябва да я създадем сега и може да е всякаква и със сигурност ще е само за тая цел, т.е. няма да има друга информация вътре.
Структурата на url-те трябва да е както съм дал пример в първия пост, т.е. без допълнителни префекси/суфикси за предпочитане, но ако стане много сложно така може да го направим http://www.company.com/patents/PNxxxx .
Единственото, което не знам за сега е дали сайта ни е на наш си сървър или някъде другаде на уеб хостинг. По-вероятно е да е на хостинг, та може да не може да се бъзика нищо по уеб сървъра. Ако е така някой може ли да ми даде линк към обяснение/пример как се обработват url-те така че да ходят на едно място и там да се екстрактва парт номера и по него да се генерира заявката към базата данни. Нещо подобно на това, дето bobyper е показал в неговия пост за да видя как се прави и да им начукам канчетата на тия некадърници. Ако е трудно да се върже със сайта, който имаме има вариант да регистрираме нов домейн и да си е напълно отделен сайт, но за предпочитане е да се върже със сегашния, та предполагам ще се наложи да ползваме http://www.company.com/patents/PNxxxx .
Предполагам няма да ми е много трудно да направя един демо сайт с базаданни с 3-4 продукта, който да генерира така страниците и да им го покажа.

Автор:  gicho [ Чет Яну 25, 2018 5:37 pm ]
Заглавие:  Re: Въпрос за WEB сайт

Някъде се загубих, но тази фирма няма ли си вече сайт? В смисъл, тая част с патентите няма ли да е допълнение към досегашното съдържание? Ако е така значи първо трябва да се види кой и как го е направил и как да се разшири.
Иначе за такива неща може да погледнеш и node.js - добро нещо е (и) за тази работа. Библиотеки бол, да не говориш че можеш да го дадеш някъде на фрийлансър да го направи за смешни пари.
Едит: разбрах, има си вече, не съм дочел последното ти мнение.
Такива неща обаче включват и API/страничка за редактиране на базата - добавяне на продукти и патенти, потребители, ...

Автор:  bobyper [ Чет Яну 25, 2018 6:10 pm ]
Заглавие:  Re: Въпрос за WEB сайт

Правиш един фолдер products. вътре слагаш два файла
1) файл .htaccess ( барабар с точката отпред)

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /products
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /products/index.php [L]
</IfModule>

2) index.php

<?
echo "<xmp>\n";
print_r($_SERVER);
?>


и си готов за пробата. Стига apache да зарежда конфигурация от htaccess

Страница 1 от 4 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/