Elxis CMS Forum

Ελληνικό Forum => Εγκατάσταση => Topic started by: sirioss on January 31, 2008, 20:09:28

Title: module Who's Online
Post by: sirioss on January 31, 2008, 20:09:28
Ο αριθμός των επισκεπτών αυξάνει όπου κι αν κάνω κλικ στον ιστότοπο(είτε σε μενού είτε στα άρθρα, κ.λ.π.). Από τη μία είναι ευχάριστο να βλέπεις τον μετρητή να δείχνει άπειρους επισκέπτες online αλλά από την άλλη..... Τι δεν δουλεύει σωστά?
Title: Re: module Who's Online
Post by: machinakias on January 31, 2008, 20:14:21
file mou to exw dei ki egw...kapou argei na kanei refresh kai deixnei kati syndedemenoi kamia 100aria....an breis kati,kane ena post....
Title: Re: module Who's Online
Post by: CREATIVE Options on January 31, 2008, 20:21:20
Καλό είναι να κάνουμε καμία αναζήτηση στο forum πριν ρωτήσουμε, έχουμε απαντήσει ΠΑΡΑ πολλά.

https://forum.elxis.org/index.php?topic=1044.m... (https://forum.elxis.org/index.php?topic=1044.msg7772#msg7772)
Title: Re: module Who's Online
Post by: ArXoS on February 06, 2008, 01:17:10
το Link του Sirigos είναι πολύ κατατοπιστικό

Μπορείς να κάνεις κι εσύ έναν έλεγχο .. πήγαινε από το admin panel του Elxis στο Σύστημα/Εμφάνιση πληριοφοριών συστήματος/Πληροφορίες για την PHP και δες που είναι δηλωμένο το session.save_path. Αυτός ο φάκελος πρέπει να είναι προσβάσιμος σε όλους (άρα και για την PHP)

Σωστά δε τα λέω Sirigos?
Κάτι άλλο.. παρατηρώ το /tmp φάκελο (εκτος public_html) και δε βλέπω αρχεία sess_***** μέσα .. δε θα έπρεπε να υπάρχουν τα τρέχοντα ?
Title: Re: module Who's Online
Post by: CREATIVE Options on February 06, 2008, 09:58:46
Κάτι άλλο.. παρατηρώ το /tmp φάκελο (εκτος public_html) και δε βλέπω αρχεία sess_***** μέσα .. δε θα έπρεπε να υπάρχουν τα τρέχοντα ?
Όχι, τα sessions στο Elxis αποθηκεύονται στην βάση δεδομένων. <- Είναι λάθος, διαβάστε αυτά που λέει ο datahell και συγνώμη εάν δημιούργησα κάποια σύγχυση ή σας ταλαιπώρισα με αυτή την δημοσίευση.

Η απάντηση μου ήταν βασισμένη σε αυτό που θυμόμουν και δεν την έλεγξα (όπως συνήθως κάνω).
Title: Re: module Who's Online
Post by: datahell on February 06, 2008, 11:33:49
Προς Sirigos: Τα session αποθηκεύονται στο temporary κατάλογο της PHP (συνήθως /tmp). Στη βάση αποθηκεύεται μόνο το όνομα του session.

Αν το temporary directory δεν είναι εγγράψιμο το Elxis θα γεννά σε κάθε κλικ νέο session και θα το γράφει στη βάση με αποτέλεσμα να έχετε 500 session στη βάση με έναν επισκέπτη... Παρακαλώ αν δεν γνωρίζετε καλά κάτι για κάποιο σημαντικό ζήτημα μην παραπληροφορείτε γιατί μπερδεύονται οι χρήστες.

[old attachment deleted by admin]
Title: Re: module Who's Online
Post by: ArXoS on February 06, 2008, 17:27:59
ωραία .. βρήκαμε άκρη ...
για να είναι λοιπόν ο φάκελος tmp κενός από αρχεία sess_**** σημαίνει οτι κάτι δε δουλεύει σωστά και θέλει ψάξιμο .. ?
Title: Re: module Who's Online
Post by: datahell on February 06, 2008, 18:02:17
Το πρώτο πράγμα που θα κοιτάξεις είναι το php.ini για να δεις τη διαδρομή αποθήκευσης των session. Αν αυτός ο κατάλογος δεν υπάρχει δημιούργησέ τον και κάντον εγγράψιμο. Σε κάποιους server για λόγους ασφαλείας, και μάλιστα αν συγκεκριμένες ντιρεκτίβες ασφαλείας της php είναι ενεργοποιημένες, δημιουργείται ένας τέτοιος κατάλογος ΓΙΑ ΚΑΘΕ site. Παράδειγμα από το τοπικό μου pc:

session.save_path = "D:/PHP/sessiondata"

Για να σιγουρευτείς ποια είναι η τρέχουσα ρύθμιση σε ένα site για το session.save_path φτιάξε ένα αρχείο php με περιεχόμενο:

Code: (php) [Select]
<?php 
echo session_save_path();
?>

και τρέξτο από τον browser.

Για λόγους ασφαλείας είναι καλό το temporary directory να γίνεται mount με noexec και nosuid. Απευθυνθείτε σε αυτούς που σας φιλοξενούν για περισσότερα.
Title: Re: module Who's Online
Post by: tallone on February 24, 2008, 19:39:40
Γεια σας,

αντιμετωπίζω και εγω το ίδιο πρόβλημα.
Απο το Admin πήγα στο μενού System ->View System Information και είδα το παρακάτω για το session save path:

Session save path:      /var/lib/php/session

Από οτι διαβάζω εδώ ,  το directory session πρέπει να είναι εγγράψιμο προκειμένου να δουλεύει σωστά το Who's Online.
Το συγκεκριμένο directory βρίσκετε εκτός /httpdocs. Πιστεύετε ότι θα δημιουργήσω πρόβλημα ασφάλειας εάν προσπαθήσω
να κάνω το /session εγγράψιμο (777) ? Δεδομένου ότι δουλεύω με virtual hosts και δεν ξέρω εάν το /session χρησιμοποιείται και από άλλα domain.

Πρέπει το /session  να έχει file permission 777 ή άλλη τιμή?

Thanks
Title: Re: module Who's Online
Post by: datahell on February 24, 2008, 22:08:37
Εννοείται ότι το temporary directory πρέπει να είναι έξω από το www directory του apache!
Εφόσον έχεις πρόσβαση μέσω ssh άνοιξε τον κατάλογο /var/lib/php/session και δες υπάρχει τίποτα μέσα (αρχεία sess_...); Αν όχι, τότε κάντο εγγράψιμο (777). Περιηγήσου λίγο στο site και ξανακοίτα τον κατάλογο. Υπάρχει τώρα τίποτα μέσα;

Πάντως απορώ πως δουλεύετε σε τέτοιους server. Όταν εγκαθιστούμε την PHP το session save path είναι από τα πρώτα πράγματα που πρέπει να ρυθμίσουμε.
Title: Re: module Who's Online
Post by: tallone on February 24, 2008, 23:20:08
Η php ήταν είδη εγκατεστημένη δεν είχα επιλογή να την κάνω configure.

Πάντως είμαι ανοιχτός σε προτάσεις για server και σε άλλη εταιρία hosting.
Μήπως έχεις να μου προτείνεις κάποια?

Thanks for the response.
Title: Re: module Who's Online
Post by: ks-net on June 17, 2008, 23:33:39
Μια λύση προτείνω στο παρακάτω topic χωρις να χρειαστεί(ελπιζω ) να αλλαχτεί καποιος server

https://forum.elxis.org/index.php?topic=1044.0 (https://forum.elxis.org/index.php?topic=1044.0)