Django app and Wordpress page on same VServer but different domains - django

I have one virtual server with 2 domains configured. One domain should host a wordpress page and the other domain will be a django web application.
I did some research, but I am confused. I know that for Wordpress Apache is the way to go. But for Django I often read that Nginx is the best setup.
My question is: What is the best practice in terms of web server setup when hosting 2 domains on the same (virtual) server, where one domain hosts a wordpress page and the other domain hosts a django web application?

My answer is based upon my own server. You can use Wordpress with Nginx without any problems. Personnaly, I have 2 Wordpress website and a Django web application on the same server with Nginx.
I used these documentations to set up all of this :
https://www.digitalocean.com/community/tutorials/how-to-install-wordpress-with-nginx-on-ubuntu-14-04
https://www.digitalocean.com/community/tutorials/how-to-set-up-django-with-postgres-nginx-and-gunicorn-on-debian-8#create-a-gunicorn-systemd-service-file
I hope that this will be useful for you,
Best regards

Related

root domain running wordpress and django application on app subdomain - proxy pages from app subdomain to main domain

I have a Saas website that is developed using Django and the marketing site is also hand coded and running under django.
I would like to move the marketing site on the main domain to wordpress and then host the web application under an app subdomain.
However a number of pages that are important to our SEO are generated by the web application and appear on the main domain now.
eg.
example.com/service_page_1
example.com/service_page_2
Once I move the application to a subdomain these will be available at:
app.example.com/service_page_1
app.example.com/service_page_2
Is there a way example.com can be running a wordpress marketing site and these pages from the subdomain can be made available on the main domain?
I thought about hosting the content in iframes on the wordpress site but I am not sure how this would affect SEO.
The web application will be running behind an nginx web server.
Is there a way to proxy calls to certain routes on wordpress to my web application running behind nginx? (eg. www.example.com/service/*/ to display the page from my web application at app.example.com/service/*/)

how to create website using Django

I have one Django App. I want to get this app on World Wide Web.
Can anyone please help me with steps.
Like Some server addition(e.g. Apache or Nginx),Configuration of server,Integrating with Django,Web Hosting,etc.
Thanks
This at this link you will find a tutorial that helps you to deploy your app with NGINX
http://uwsgi-docs.readthedocs.io/en/latest/tutorials/Django_and_nginx.html
simple and fast
In regards to hosting, you will have to get a domain name (unless you want to connect to your web page via IP address).
If you want to host your own web page from your server you will also have to set up your router to forward traffic to your server's IP. Having a static IP from your internet provider is preferable and also set your machine to have a static IP so you don't have problems with routing.
If you don't want the hassle of setting up a server environment all by yourself, you can also choose a PaaS provider like Heroku which supports Django applications out of the box. Hosting will cost more, but you will save time deploying your apps.

Can i Deploy django project without any webhost eg. heroku , pythonanywhere etc etc

I have created a dynamic web page using HTML5 Css3 JS And django.
I have already bought a domain name.
Now i want to deploy my django project, but dont want to use any web host like heroku aws pythonanywhere etc.
All I could find on the web is how to configure apache and mod_wsgi to serve the files.
Is it possible to create a web hosting from my home ? If yes how ?
Using ubuntu server, apache & mod_wsgi or any other technology?
P.S. I dont want to use any web hosting company
So on your local computer you have to install webserver(apache, nginx or something else).
Then you have to specify a note of your domain name to your home ip address(it is better when you have static IP). If you will do this, all requests that will be in to your domain name will redirect to your home IP.
Then you have to configure your webserver.

How to deploy mid sized Django App [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I just finished my Django App. All these months, I have been running the app on a local server using
python manage.py runserver
and it ran on 127.0.0.1 and was accessible only to my computer. Now that I am finished my app, I want it to be accessible to the world. I tried researching how to deploy my django app, and probably like most people in my situation, I am now completely lost. The words 'WSGI, AWS, WebFaction, Domain, Web hosting, Shared hosting, servers, VPS Vendor, RackSpace, Apache2 etc' are all flying around my head.
The first post I cam across was this one:
How to setup Django website in Amazon EC2 hosting?
The post says Amazon EC2 servers are good, but recommends WebFaction / Dreamhost instead. I decide to pick Amazon EC2 instead of WebFaction / DreamHost. I google about Amazon EC2, and then I find myself reading comparisons about AWS and VPS Vendors like RackSpace. I then agree to use Amazon EC2 instead of RackSpace. Then I thought to myself, where exactly do I buy the domain name from? I know that goDaddy is really popular for hosting domians so I look into that and I realize that godaddy doesn't support Django. I google'd which web hosting companies support Django, and I came across WebFaction again. So wait, I use WebFaction to register the domain and Amazon to host the site? I look at the prices for WebFaction and they give prices for bandwidth, disk space, server location etc. I google the price for AWS and they talk about the exact same thing: server location, space etc. At this point, I don't even know if WebFaction and AWS accomplish the same thing and if I am supposed to pick one or the other, or if WebFaction is for simply hosting the domain and AWS for the server? I then decide to research about servers, hoping to come across a post of how Amazon servers work and their relation with domain hosting sites. Instead, I find myself reading about Apache. Hm, so Apache is now another option? I google the relationship between the Apache server and AWS, and find that I can set up Apache on AWS? So do I need WebFaction, AWS and Apache to deploy my Django app?
I tried doing more research about deploying a Django app and came across a post talking about WSGI. It seems as if the more research I do, the more confused I get. So this is where I need your help:
The Django Application is basically a 'Blog' site which allows users to create accounts, upload images, comment and like images, follow other users, make posts (which consist of only text and images), comment on posts and like posts.
The Django Application is directed to an audience of about 1500 users (I'm estimating about 1500 users within the first two months). The application will be put up on the Android and iPhone app store as well (through WebView). My hostOS is windows 8 but I downloaded a VM (which runs Lubuntu) and did all my Django stuff in Lubuntu using Django 1.5, Python 2.7 and had to install PIL and Pillow as well. I used a PostgreSQL database. With all these details, how should I host my site?
I don't want to say 'Which servers should I use' because then some will say 'Amazon', some will say 'DreamHost', some might say 'Buy a domain and then user Amazon' and some might even start talking about WSGI and Apache to make me really confused.
What steps do I need to take to host my 1500 user application? Once the application hits 1500 users and starts going higher than that, then I will think about switching to a larger server, but for the first 1500 users, where should I buy the domain name and host the site? The site needs to be live within the next 3 weeks (so if a VPS vendor or Amazon EC2 is highly recommend, I can take out an entire week to learn about them). I just want to know if there is a more recommended, simpler solution rather than jumping right into a VPS vendor or buying a Domain and using Amazon EC2 server.
Edit: Should this go on ServerFault instead?
There are several layers here that you all need, but it can be confusing at first. To set up a Django site in a production environment, you're going to need:
Server hardware.
Webserver software.
Python connector (WSGI).
Registered domain name with DNS records.
A hosting service gives you access to server hardware. You rent a physical server or a virtual environment on a physical server. Most hosting platforms include domain name registration and managing DNS records, but some might require you to seek these services elsewhere.
In order for the server to actually serve a http response upon receiving a request, it has to run a webserver process. Apache and Nginx are such webservers. WSGI is the standard that allows webservers to communicate with Python applications. You'll need an implementation of this in order to connect to your Django application. Some choices are gunicorn, uWSGI and Apache's mod_wsgi.
With this information you should be able to understand most articles explaining how to deploy a Django application. Everything except the part about WSGI is also applicable to any other website, not just Django.

Deploying website along with web application

I'm in the process of researching possible ways to deploy web site along with a web application. I'm using Python/Django with gunicorn as the webserver and AngularJS (front-end) for the web application, which will be deployed on some PaaS like Heroku.
The web site (mainly used for marketing purposes), what are some recommending ways to deploy this site along with the web application? My concern is that users hitting the site will slow down performance for users of the web application. If I'm using Django for the web application backend, is it ok to use Django for the web site and deploy it...say on a different port/server? Perhaps use nginx to serve just static content for the site? What are some best practices out there on solving this? Many thanks
If your "web site" is all static files, could you load it all up into a single folder and have it served directly by nginx?
Alternatively, you could look at something like CloudFlare