Jump to content

Βοήθεια με δημιουργία XML προϊόντων


Recommended Posts

Από UX είναι μαύρο χάλι η Amazon. Χρεώνουν με την ωρα με κάποιο ανώτατο ποσό το μήνα. Σχεδόν τσάμπα.

 

Επειδή ακόμα και αυτή η λύση μπορεί να είναι overkill, ποιες είναι οι απαιτήσεις του skroutz κλπ για τη μορφή του url? Μπορεί να βρίσκεται σε οποιοδήποτε domain?

Link to post
Share on other sites
52 minutes ago, masteroidz said:

Από UX είναι μαύρο χάλι η Amazon. Χρεώνουν με την ωρα με κάποιο ανώτατο ποσό το μήνα. Σχεδόν τσάμπα.

 

Επειδή ακόμα και αυτή η λύση μπορεί να είναι overkill, ποιες είναι οι απαιτήσεις του skroutz κλπ για τη μορφή του url? Μπορεί να βρίσκεται σε οποιοδήποτε domain?

Λογικά φαντάζομαι δεν υπάρχει κανένας περιορισμός, πχ τώρα του είχα δώσει url κατευθείαν από τον storage server χωρίς το domain μου δεν υπήρχε πρόβλημα.

 

Σκέφτομαι τώρα μήπως δώσω (αν γίνεται φυσικά αυτό) στο Skroutz κάτι τέτοιο mypage.gr/products.xml  και απλά να κάνω κάποιο redirect πχ στο url που θα δημιουργηθεί από τον AWS EC2 ώστε να υπάρχει και η δυνατότητα σε περίπτωση που γίνει κάτι απλά να αλλάξω το redirect page χωρίς να αλλάζει το original url. Γιατί το Skroutz δεν θέλει να του αλλάζεις το original url. 

Link to post
Share on other sites

Μπορώ να προτείνω μια ευέλικτη λύση. Φτιάξε ένα νέο DNS A record του τύπου storage.mydomain.tld. που να δείχνει στον server που είναι το αρχείο.

 

Δώσε στο skroutz ένα URL  όπως https://storage.mydomain.tld/public/products.xml. Κάθε φορά που θα αλλάζεις hosting provider απλά θα αλλάζεις το που θα δείχνει το dns record.

  • Like 4
  • Thanks 1
Link to post
Share on other sites
11 minutes ago, BasiliCeLew said:

πχ τώρα του είχα δώσει url κατευθείαν από τον storage server χωρίς το domain μου

 

Αφού έχεις ήδη domain, ίσως να δικαιούσαι ένα πολύ μικρό πακέτο για δωρεάν hosting από τον πάροχό σου (ή τουλάχιστον με πολύ μικρό κόστος). Για δες το κι αυτό, μήπως δε χρειάζεται να μπλέξεις περισσότερο με άγνωστες υπηρεσίες.

  • Like 3
  • Thanks 1
Link to post
Share on other sites

Btw το αγαπητό Skroutz λογικά διαβάζει Λάμπη γιατί σήμερα έλαβα τηλέφωνο για να μιλήσουμε για τα προβλήματα ώστε να δούμε μαζί πως μπορούν να λυθούν. Και ήταν σαν να διάβασε τυχαία αυτό το thread 😛 

PS. Κατερίνα ευχαριστώ 🙂

  • Like 5
  • Haha 1
Link to post
Share on other sites

Παιδιά τελικά προχώρησα στην επιλογή του Amazon Server EC2 μιας κ ήταν (αν ισχύουν οι χρεώσεις που είδα) πολύ φθηνή λύση.  Το xml θα ενημερώνετε επίσης αυτόματα εκεί οπότε δεν θα χρειαστεί να ασχοληθώ με αυτό το κομμάτι ξανά.

 

Μπορείτε να μου πείτε πως μπορώ να ελέγξω τώρα αν το XML url έχει πρόβλημα με caching;

  • Like 2
Link to post
Share on other sites
1 hour ago, BasiliCeLew said:

Παιδιά τελικά προχώρησα στην επιλογή του Amazon Server EC2 μιας κ ήταν (αν ισχύουν οι χρεώσεις που είδα) πολύ φθηνή λύση.  Το xml θα ενημερώνετε επίσης αυτόματα εκεί οπότε δεν θα χρειαστεί να ασχοληθώ με αυτό το κομμάτι ξανά.

 

Μπορείτε να μου πείτε πως μπορώ να ελέγξω τώρα αν το XML url έχει πρόβλημα με caching;

Μάλλον θα πρότεινα από τα Response Headers, ελέγχοντας το Last-Modified. Επειδή είναι και αργά όμως και το μυαλό έχει εργαστεί σκληρά σήμερα (:D) μπορείς να περιμένεις κι άλλες απαντήσεις.

 

Λίγα λόγια το Last Modified εδώ.

  1. Άνοιξε το XML (από Edge Chromium ή Chrome προτιμότερο)
  2. Πάτησε δεξί κλικ > Inspect
  3. Επίλεξε την καρτέλα Network
  4. Επίλεξε από αριστερά το αρχείο σου
  5. Πάτησε στην καρτέλα Headers
  6. Δες την ημερομηνία στο Last-Modified

image.thumb.png.80c6d2705c64cd4e81f2d60fb3ce72f2.png

  • Like 2
Link to post
Share on other sites

Έχουμε λοιπόν δύο ειδών caching, το server-side και το client-side. Το δεύτερο δεν μας απασχολεί εδώ γιατί είναι δουλειά των web crawlers.

 

Αρχικά απ'οσο γνωρίζω δεν γίνεται server-side caching από την πλευρά της Amazon. Το επόμενο σημείο που μπορεί να γίνει sever-side caching είναι ο web server. Το πρώτο βήμα είναι να επιστρέφει στον client κάποια χρήσιμα  header tags όπως το Last-Modified (όπως αναφέρει παραπάνω ο @trib) και το Cache-Control.

 

Αν χρησιμοποιείς nginx μπορείς να χρησιμοποιήσεις τις οδηγίες για το configuration από το https://ubiq.co/tech-blog/disable-nginx-cache/

server {
    listen 8080;
    server_name localhost;

    location / {
        root /your/site/public;
        index index.html;

        # kill cache
        add_header Last-Modified $date_gmt;
        add_header Cache-Control 'no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0';
        if_modified_since off;
        expires off;
        etag off;
    }
}

 

Αυτό πιστεύω πως είναι αρκετό!

 

Για πιο αναλυτικά μπορείς να δεις και το https://webdock.io/en/docs/optimizing-performance/setting-cache-control-headers-common-content-types-nginx-and-apache

  • Like 3
Link to post
Share on other sites
20 hours ago, trib said:

Μάλλον θα πρότεινα από τα Response Headers, ελέγχοντας το Last-Modified. Επειδή είναι και αργά όμως και το μυαλό έχει εργαστεί σκληρά σήμερα (:D) μπορείς να περιμένεις κι άλλες απαντήσεις.

 

Λίγα λόγια το Last Modified εδώ.

  1. Άνοιξε το XML (από Edge Chromium ή Chrome προτιμότερο)
  2. Πάτησε δεξί κλικ > Inspect
  3. Επίλεξε την καρτέλα Network
  4. Επίλεξε από αριστερά το αρχείο σου
  5. Πάτησε στην καρτέλα Headers
  6. Δες την ημερομηνία στο Last-Modified

image.thumb.png.80c6d2705c64cd4e81f2d60fb3ce72f2.png


Μιας και νουμπάς σε όλα αυτά που λέμε, η διαδικασία αυτή ήταν πολύ εύκολη και φαινομενικά δεν υπάρχει πρόβλημα.
Δοκίμασα διάφορους Chromium Browsers  και μέχρι τώρα όλες οι αλλαγές (κάθε μία ώρα) φαίνονται κανονικά 

 

10 hours ago, masteroidz said:

Έχουμε λοιπόν δύο ειδών caching, το server-side και το client-side. Το δεύτερο δεν μας απασχολεί εδώ γιατί είναι δουλειά των web crawlers.

 

Αρχικά απ'οσο γνωρίζω δεν γίνεται server-side caching από την πλευρά της Amazon. Το επόμενο σημείο που μπορεί να γίνει sever-side caching είναι ο web server. Το πρώτο βήμα είναι να επιστρέφει στον client κάποια χρήσιμα  header tags όπως το Last-Modified (όπως αναφέρει παραπάνω ο @trib) και το Cache-Control.

 

Αν χρησιμοποιείς nginx μπορείς να χρησιμοποιήσεις τις οδηγίες για το configuration από το https://ubiq.co/tech-blog/disable-nginx-cache/

server {
    listen 8080;
    server_name localhost;

    location / {
        root /your/site/public;
        index index.html;

        # kill cache
        add_header Last-Modified $date_gmt;
        add_header Cache-Control 'no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0';
        if_modified_since off;
        expires off;
        etag off;
    }
}

 

Αυτό πιστεύω πως είναι αρκετό!

 

Για πιο αναλυτικά μπορείς να δεις και το https://webdock.io/en/docs/optimizing-performance/setting-cache-control-headers-common-content-types-nginx-and-apache

Επειδή να σου πω την αλήθεια δεν το έχω αυτό που λες ( βασικά κατάλαβα τι πρέπει να κάνω αλλά δεν ξέρω που πως γιατί κλπ 😛 ) αλλά αποκτάω μία οικειότητα γενικότερη, I will be back soon για να κάνω update με βάση αυτά που μου είπες.  

Νομίζω ότι διάλεξα να τελειώσω λάθος σχολή πάντως ( Μηχ. Μηχ. ) μιας και με κατέκτησε το κομμάτι του ηλεκτρονικού εμπορίου σε διάφορους τομείς/εκτάσεις του εδώ και χρόνια. 

Edited by BasiliCeLew
  • Like 3
Link to post
Share on other sites
7 hours ago, BasiliCeLew said:

Νομίζω ότι διάλεξα να τελειώσω λάθος σχολή πάντως ( Μηχ. Μηχ. )


Όχι.

  • Like 1
Link to post
Share on other sites
11 hours ago, BasiliCeLew said:

Νομίζω ότι διάλεξα να τελειώσω λάθος σχολή πάντως ( Μηχ. Μηχ. ) μιας και με κατέκτησε το κομμάτι του ηλεκτρονικού εμπορίου σε διάφορους τομείς/εκτάσεις του εδώ και χρόνια. 

 

Πτυχίο και μεταπτυχιακό στα Οικονομικά. Σήμερα μιλάω με τους υπολογιστές σε διάφορες γλώσσες 😛

  • Like 2
Link to post
Share on other sites
On 11/18/2020 at 10:43 AM, masteroidz said:

Μπορώ να προτείνω μια ευέλικτη λύση. Φτιάξε ένα νέο DNS A record του τύπου storage.mydomain.tld. που να δείχνει στον server που είναι το αρχείο.

 

Δώσε στο skroutz ένα URL  όπως https://storage.mydomain.tld/public/products.xml. Κάθε φορά που θα αλλάζεις hosting provider απλά θα αλλάζεις το που θα δείχνει το dns record.

Μία βοήθεια σε αυτό,

 

Το domain το έχω στο Papaki.gr , κάνω νέο DNS A name  όπως  είπες storage.mydomain.tld

Βάζω σαν όνομα πχ storage , στην διεύθυνση IP τι βάζουμε τώρα και το TTL το αφήνω ως έχει; 

image.thumb.png.aea78b3c3d32236d4e0b0410dbd5e1ee.png

Link to post
Share on other sites
3 hours ago, BasiliCeLew said:

Βάζω σαν όνομα πχ storage , στην διεύθυνση IP τι βάζουμε τώρα και το TTL το αφήνω ως έχει;

 

To ttl μπορείς να το βάλεις και μικρότερο π.χ. μια ώρα. Δεν είναι οτι θα δέχεται χιλιάδες κλήσεις το λεπτό ο dns server για αυτή την εγγραφή και θα ζοριστεί.

 

3 hours ago, BasiliCeLew said:


Τώρα μένει να βγάλω καλύτερη άκρη με το nginx γιατί η επαφή μου με αυτό είναι στο -100 😛😛 

 

https://youtu.be/oykl1Ih9pMg?t=828

  • Like 1
  • Thanks 1
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.