Ho recentemente trasferito i miei siti da Django DreamHost da FastCGI poveri a causa delle prestazioni a 256 piano l'opzione Slicehost . Se segno-in su con loro, si prega di utilizzare "inerte@gmail.com" al vostro referral. Non ho idea di quanto si paga per i riferimenti, ma ogni moneta è un bene il denaro ![]()
Ecco la mia guida:
Indolore la registrazione mi ha dato la password di root in 2 minuti. Scrivi il tuo indirizzo IP e la tua password di root da qualche parte in modo da non dimenticarlo.
SSH (ho usato Putty ) al server, l'autenticazione, ed eseguire i comandi che seguono. Ho deciso di installare PHP perché ho domini utilizzarlo. Inoltre, è necessario per phpMyAdmin.
$ Apt-get install apache2 $ Apt-get install libapache2-mod-python2.4 $ Apt-get install mysql-server $ Apt-get install python2.4-MySQLdb $ Apt-get install php5 $ Apt-get install php5-mysql $ Apache2ctl riavviare $ / Etc/init.d/apache2 reload
root $ mysql-u mysql> UPDATE mysql.user SET Password = PASSWORD ('your_root_mysql_password') WHERE User = 'root'; mysql> FLUSH privilegi; Mysql> quit
E 'solo più facile. Ho deciso di non installare il server FTP per caricare i miei file. Invece, ho usato WinSFTP , il client sftp per Microsoft Windows. Scaricare e installare. Open, incollare Tagliate il vostro indirizzo IP e accedere alla directory / var / www / directory, ITS caricare installare phpMyAdmin e seguire le istruzioni.
$ Cd / usr/lib/python2.4/site-packages / $ Svn co http://code.djangoproject.com/svn/django/trunk/ Django
Open WinSFTP ancora, passare alla / usr/lib/python2.4/site-packages / directory e caricare il tuo progetto Django.
ITS Modifica settings.py file.
vi / usr/lib/python2.4/site-packages/your_django_project/settings.py I'll solo mostrare ciò che si deve cambiare, oltre quanto necessario per il vostro progetto di lavoro (come INSTALLED_APPS):
DATABASE_ENGINE = 'mysql' Database_name = 'your_db_name' DATABASE_USER = 'your_db_user' Database_password = 'your_db_password'
Io uso la directory per i file multimediali chiamati "web" sulla maggior parte dei miei progetti:
Media_root = '/ var / www / your_domain.com / web /' MEDIA_URL = '/ web /'
Avrete anche cambiare il TEMPLATE_DIRS tupla. Basta mettere tutto ciò che si usa. Ecco il mio riferimento per:
TEMPLATE_DIRS = (
# Metti qui le stringhe, come "/ home / html / django_templates.
# Utilizzare sempre le barre, anche su Windows.
'/ Usr/lib/python2.4/site-packages/my_django_project/templates/my_django_project /',
)
$ Mkdir / var / www / your_domain.com $ Mkdir / var/log/apache2/your_domain.com $ Vi / etc/apache2/sites-available/your_domain.com
Incollare questo testo all'interno del file:
<VirtualHost *>
ServerName www.your_domain.com
ServerAlias your_domain.com
# Le tre righe sotto rimuove il www dal nome di dominio. Non mi piace WWWS.
RewriteEngine On
RewriteCond% (HTTP_HOST) ^ \ www. \ Dominio_organizzazione. Con [] NC
RewriteRule (.*) http://your_domain.com $ 1 [R = 301, L]
DocumentRoot / var / www / your_domain.com
CustomLog / var/log/apache2/your_domain.com/access.log combinata
ErrorLog / var/log/apache2/your_domain.com/error.log
SetHandler python-programma
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE your_django_project.settings
PythonDebug Off
sys.path] PYTHONPATH "['/ usr/lib/python2.4/site-packages/django' +"
# La mia directory multimediali (come indicato nella sezione precedente)
<Location "/web/">
SetHandler Nessuno
</ Location>
# Necessario per la media di Django admin file
<Location "/media/">
SetHandler Nessuno
</ Location>
</> VirtualHost
Symlink configurazione nuovo dominio file nella directory corretta:
ln-s / etc/apache2/sites-available/your_domain.com / etc/apache2/sites-enabled/your_domain.com Symlink Django's media admin file sul tuo dominio:
ln-s / usr/lib/python2.4/site-packages/django/django/contrib/admin/media / var / www / your_domain.com / media Modifica la configurazione di Apache file di dire al tuo indirizzo IP:
vi / etc/apache2/apache2.conf Incolla questo prima che il # Include l'host virtuale configurazioni: la linea (è uno prima l'ultimo):
ServerName your.slice.ip.address Modifica la rotazione dei log di Apache per includere il nuovo dominio:
vi / etc/logrotate.d/apache2 Incollare questo alla fine:
/ Var/log/apache2/your_domain.com / *. log ( settimanale missingok ruotare 52 comprimere delaycompress notifempty creare 640 root adm sharedscripts postrotate if [-f /] var/run/apache2.pid, poi / Etc/init.d/apache2 restart> / dev / null fi EndScript )
Ho provato a installare il server DNS ma non solo, ho pensato che è difficile, avendo un singolo punto di errore è male. Così ho firmato con DNS Made Easy e li lascio gestire questo per me. E 'super semplice, dopo aver riunito, aggiungere il dominio di DNS Made Easy e scrivere gli indirizzi dei server DNS. Attendere che il nome di dominio è "creato" (per me, variava da 30 minuti a 2 ore), e cambiare i server DNS dal tuo registrar di nomi a dominio.
Riavviare Apache una volta di più:
$ Apache2ctl riavviare $ / Etc/init.d/apache2 reload
E abbiamo finito! Con un avvertimento: Abbiamo verificato Django "tronco" directory in directory del Python. Ciò significa che la vita reale la directory di Django qui sotto:
/ Usr/lib/python2.4/site-packages/django/django /
Il che significa che se si desidera utilizzare mai al di fuori di Apache mod_python Django, dovrete aggiungere la directory / usr/lib/python2.4/site-packages/django al tuo sys.path. Oppure, si potrebbe checkout Django a qualche altra parte, e spostare la directory "reale django site-packages per / (e cambiare il / etc/apache2/sites-available/your_domain.com) di conseguenza.
Se avete problemi, scrivete qualcosa i commenti qui e cercherò di aiutarvi.