A Webportal to provide educational content to the students.
(Summer Internship 2014, Indian Institute of Technology, Bombay)
- Make sure your Internet is working.
Clone this repo by typing :
git clone https://github.com/khushbu14/webportal.git
Install Virtual Environment using the following command :
sudo apt-get install python-virtualenv
Create a Virtual Environment :
virtualenv /path/to/virtualenv
Activate the virtualenv using the command :
source /path/to/virtualenv-name/bin/activate
Change the directory to the webportal/ project using the command :
cd /path/to/webportal
Install pre-requisites using the command :
pip install -r requirements.txt
or you can also type :
easy_install `cat requirements.txt`
Using sqlite3 (For local server only). We recommend to use MySQL for server. See settings.py file for usage.
Open webportal/webportal/settings.py file and do the following changes :
DATABASES = { 'default': { 'ENGINE': 'django.db.backend.sqlite3', 'NAME' : 'webportal.db', 'USER': '', 'PASSWORD': '', 'HOST': '', 'PORT': '', } }
Initialize the database using the command :
cd /path/to/webportal python manage.py syncdb
Start the server using the command :
python manage.py runserver
(Tested on Ubuntu 12.04)
- Make sure your Internet is working.
Clone this repo by typing :
git clone https://github.com/khushbu14/webportal.git
Collect static files(Required by Django's admin interface) :
cd webportal python manage.py collectstatic
Install virtualenv using above steps and mention the path in wsgi.py file.
Assuming the virtualenv wb_virt in placed inside /var/www/ directory
------8<------------------------------------------------------------------------
import os import sys # We defer to a DJANGO_SETTINGS_MODULE already in the environment. This breaks # if running multiple sites in the same mod_wsgi process. To fix this, use # mod_wsgi daemon mode with each site in its own daemon process, or use # os.environ["DJANGO_SETTINGS_MODULE"] = "webportal.settings" activate_this = '/var/www/wb-virt/bin/activate_this.py' execfile(activate_this, dict(__file__=activate_this)) sys.path.append("/var/www/webportal/") # Project directory PATH. os.environ.setdefault("DJANGO_SETTINGS_MODULE", "webportal.settings") # This application object is used by any WSGI server configured to use this # file. This includes Django's development server, if the WSGI_APPLICATION # setting points here. from django.core.wsgi import get_wsgi_application application = get_wsgi_application() # Apply WSGI middleware here. # from helloworld.wsgi import HelloWorldApplication # application = HelloWorldApplication(application)
------------------------------------------------------------------------>8------
Make sure you have following dependencies installed on server :
sudo apt-get install apache2 sudo apt-get install python-dev sudo apt-get install libmysqlclient-dev sudo apt-get install libapache2-mod-wsgi
Configure apache2 conf file: /etc/apache2/httpd.conf
Assuming the project is inside: /var/www/
------8<------------------------------------------------------------------------
Alias /media/ /var/www/webportal/media/ Alias /static/ /var/www/webportal/webportal/static/ <Directory /var/www/webportal/static> Require all granted </Directory> <Directory /var/www/webportal/media> Require all granted </Directory> WSGIScriptAlias / /var/www/webportal/webportal/wsgi.py WSGIPythonPath /var/www/webportal <Directory /var/www/webportal/webportal/wsgi.py> <Files wsgi.py> Require all granted </Files> </Directory>
------------------------------------------------------------------------>8------
Finally restart apache server :
sudo service apache2 restart
To generate docs:
- Make sure you have Python Sphinx installed(See requirements.txt file)
Change to docs/ directory :
cd docs
Export DJANGO_SETTINGS_MODULE :
export DJANGO_SETTINGS_MODULE=webportal.settings
Generate HTML :
make html
and browse docs/_build/html/index.html file from Web Browser
Generate PDF(Optional)
Make sure you have latex installed. :
make latexpdf
PDF file will be generated inside docs/_build/latex directory.
- Never edit the master branch.
- Make a branch specific to the feature you wish to contribute on.
- Send us a pull request.
- Please follow PEP8 style guide when coding in Python.
GNU GPL Version 3, 29 June 2007.
Please refer this link for detailed description.