Ξεκινώντας το Yii

Γεια σας ξανά,

νομίζω μετά τις συστάσεις και παρουσιάσεις μας θα πρέπει να κάνουμε κάτι ώστε

[list=1]

[*]Να μάθουμε το Yii

[*]Να επιλύουμε πρόβλήματα που προκύπτουν από την ανάπτυξη

[/list]

Το πιο σημαντικό κατά την άποψη μου, είναι να μεγαλώσει η βάση των Ελλήνων χρηστών του Yii Framework, ώστε να υπάρξει και η απαραίτητη Ελληνική ανάπτυξη αλλά και αργότερα θα υπάρξουν σημαντικά Ελληνικά project με βάση το Yii.

Σε λίγο καιρό ελπίζω να έχω τα πρώτα μαθήματα ανάπτυξης πάνω στο Yii

Θα ήθελα και την δική σας γνώμη πάνω σε αυτό

Happy Coding

Hello dyrer,

Για πες, τι έχεις σκοπό να κάνεις; Tutorials τύπου Lary Ullman?

Ακούγεται αρκετά ενδιαφέρον, θα βοηθήσει κυρίως όσους δεν έχουνε καλή επαφή με τα Αγγλικά.

Βασικά τώρα που το σκέφτομαι, ίσως να είναι καλή ιδέα να γινόταν μια μετάφρασή των παραπάνω άρθρων, είναι πολύ καλογραμμένα (εάν ξεκινάς από το μηδέν) και θα καθιστούσαν ένα καλό πρώτο βήμα πιστεύω.

Δεν είναι άσχημη ιδέα να κινηθώ σε αυτό το πρώτυπο.

Παντως μολις βρω χρόνο θα προχωρήσω σε αυτό, και βλέπουμε ;)

Μια ερώτηση σαν νέος στην πλατφόρμα του YII.

Θέλω να εγκαταστήσω την πλατφόρμα σε έναν κατάλογο έξω από το webroot, για να μπορώ να χρησιμοποιώ μία πλαρφόρμα για πολλαπλά site. Το δοκίμασα αλλά δυστηχώς η εφαρμογή μου πετάει "500 internal server error" όταν χτυπάω το url. Στο documentation αναφέρεται ότι δεν είναι ανάγκη το ΥΙΙ να ειναι στο webroot και μάλιστα προτείνεται για μεγαλυτερη ασφάλεια. Έχω αλλαξει τα permissions του καταλογου framework ακόμα και σε 777 αλλά τίποτα.

Γνωρίζει κανείς τι πρέπει να κάνω;

Γεια σου john καλωσήρθες καταρχάς!

δηλαδή λειτουργεί κανονικά εντός του webroot και πετάει σφάλμα εκτός?

Δοκίμασε να κάνεις τα permissions 777 recursively σε όλο το framework αλλά και στο webroot κάπως έτσι




sudo chmod -R 777 directory/



Καλως σας βρήκα.

Ακριβώς αυτό μου κάνει.

Τα έχω αλλάξει recursively, αλλά πάλι τίποτα.

Έχω κοιτάξει και το relative path στο yii.php μέσα στο index.php αλλά είναι σωστό.

Για να δώσω μια πιο συγκεκριμένη εικόνα των paths.

Τα sites είναι στο:

/var/www/vhosts/"όνομα του site"/httpdocs

και θέλω να έχω το framework κατάλογο σε αυτό

/var/www/vhosts/framework

Οπότε στο index.php πρέπει να έχεις:


$yii=dirname(__FILE__).'/../../framework/yii.php';

$config=dirname(__FILE__).'/protected/config/main.php';

Σωστά;

Σωστά. Τα path είναι σωστά. Δεν μπορώ να καταλάβω τι άλλο μπορεί να είναι.

Μήπως υπάρχει κανένα ξεχασμένο .htaccess κάπου, με php directives που δίνουν το 500 server error;

Λέω, μήπως; :rolleyes:

Λογικά, ο κατάλογος του Yii μπορεί να είναι οπουδήποτε. Ακόμα και σε άλλο σκληρό δίσκο.

Κάνοντας μια γρήγορη αναζήτηση βλέπω ότι εκτός από το index.php, paths προς το yii framework περιέχουν και τα αρχεία \protected\yiic.php και \protected\tests\bootstrap.php. Αν και δεν ξέρω αν παίζουν ρόλο, έχεις διορθώσει τα path σε αυτά τα αρχεία?

Οι εφαρμογές φτιάχτηκαν με το yiic?

Άλλαξες τη θέση του καταλόγου του Yii μετά τη δημιουργία των εφαρμογών?

Αν ναι, και η αιτία είναι κάποιο path προς το Yii folder, μπορείς να φτιάξεις μια νέα εφαρμογή που να βρίσκεται στον ίδιο κατάλογο με την εφαρμογή σου και να αντιγράψεις από την νέα εφαρμογή στην παλιά όσα αρχεία δεν είναι δικά σου ή τροποποιημένα.

[color="#0000FF"]Επειδή είμαστε εκτός topic και κάποιος που έχει το αντίστοιχο πρόβλημα δεν θα βρίσκει τα post που κάνουμε θα παρακαλούσα τον admin (αν παρακολουθεί) να τα μεταφέρει σε διαφορετικό topic.[/color]

Αν είσαι σε linux πρέπει επίσης να βεβαιωθείς ότι το Apache (η οποίος webserver τρέχεις) έχει δικαιώματα στο Directory που εσωσες το framework.


chown -R :ApacheGroupName /absolute/Path/2/yii/framework

Προσοχή στο : πριν το Group name

Έκανα τα παρακάτω βήματα για να είμαι σίγουρος ότι δεν έχει πειραχθεί τίποτα από τα default.

Έκανα αποσυμπίεση το framework στο webroot ενός domain. Στην συνέχεια έτρεξα το αρχείο requirements και όλα είναι οκ.


http://www.domain.gr/requirements/index.php

Μετά έκανα


mv -f 

τον κατάλογο framework από το webroot στην τοποθεσία που θέλω να είναι στον server και άλλαξα τα δικαιώματα του καταλόγου


chmod -R 777

Στην συνέχεια έκανα μια καινούργια εφαρμογή στο webroot και δεν άλλαξα τίποτα.


./yiic webapp /var/www/vhosts/"domain name"/httpdocs/

Έκανα ένα έλεγχο όλα τα αρχεία που περιέχουν path στο framework και είναι σωστά.

Αλλά πάλι 500 internal server error.

Έκανα και αυτό αλλά χωρίς αποτέλεσμα.

Σας ευχαριστώ πολύ για τις απαντήσεις όλων στην προσπάθεια σας να με βοηθήσετε.

Αν καταλαβαίνω σωστά τρέχεις 1VH @ /var/www/vhosts/example.gr

έχεις εγκαταστήσει το fw @ /otherDir/framework

έχεις ξεκινήσει 1 web app @ /var/www/vhosts/example.gr/httpdocs

τα δικαιώματα των φακέλων είναι ΟΚ

και όταν πλοηγείσαι στο http://example.gr/httpdocs/index.php

σου επιστρέφει e500?

index.php περιεχέι 2 γραμμές με οδηγίες για framework & protected folders πχ:




$yii=dirname(__FILE__).'/../yii-1.1.8/framework/yii.php'; //evaluates to /var/www/yii-1.1.8...

$config=dirname(__FILE__).'/protected/config/main.php'; //evaluates to /var/www/domainname.gr/protected...



αυτοί οι φάκελοι υπάρχουν; είναι οι σωστοί;

η virtualhost directive του apache είναι σωστή;

Λοιπόν, τα path δεν φταίνε σίγουρα!

Έστησα ένα Ubuntu με LAMPP, έβαλα το Yii στο /opt/lampp/htdocs/Yii/framework

και έφτιαξα με το yiic ένα webapp στη θέση: /opt/lampp/htdocs/yiiapp

Τσέκαρα ότι δούλευε μια χαρά και στην συνέχεια έβγαλα το Yii έξω από το webroot

και το πήγα ένα επίπεδο πιο πάνω: /opt/lampp/Yii/framework

H εφαρμογή πέταξε ένα σφάλμα για τα path! Λογικό! Τροποποίησα το path της μεταβλητής $yii στο αρχείο index.php και η εφαρμογή ξαναδούλεψε!

Μάλλον έχεις πρόβλημα στο configuration του Apache ή…κάτι άλλο!

Δεν ξέρω τι άλλο να κάνω. Στον apache φένεται ότι όλα είναι όπως πρέπει να είναι. Τα υπόλοιπα site ( δεν χρησιμοποιούν yii όμως ) στον dedicated δεν έχουν πρόβλημα.

Προς το παρών, για να δουλέψει, έβαλα τον κατάλογο του yii στο κατάλογο httpdocs ( webroot ) και τοποθέτησα το site ένα κατάλογο μετά και άλλαξα το webroot ( έγινε httpdocs/κατάλογος ) στο http.include του domain.

Δεν έχω πολύ χρόνο να το ψάξω παραπάνω.

Μόλις τελειώσω το project θα προσπαθήσω ξανά.

Σας ευχαριστώ όλους για την βοήθεια.

Fatal error: require_once() [function.require]: Failed opening required ‘C:\WebRoot\demo/../yii.php’ (include_path=’.;C:\php\pear’) in C:\WebRoot\demo\index.php on line 12

Καλημέρα κ απο μένα κ καλως σας βρήκα…

Προσπάθώντας να εκτελέσω κάποιες ασκήσεις από το βιβλίο του Jeffrey Winesett χτυπαέι το παραπάνω error

Δουλεύω στο wamp

Any ideas?