Py学习  »  R.A.Munna  »  全部回复
回复总数  2
6 年前
回复了 R.A.Munna 创建的主题 » 在apache上部署Django rest API

首先,您需要将它部署到其他服务器上,如 apache . 下面我将分享如何像往常一样配置apache2来部署PythonDjango项目。

Apache安装: 如果尚未安装,则需要安装apache。在这里,我将展示apache2安装和一些我们需要的其他安装。

sudo apt-get update
sudo apt-get install apache2
sudo a2enmod wsgi
sudo apt-get install python3-pip apache2 libapache2-mod-wsgi-py3

000-default.conf文件的配置: 通常apache2位于linux m的path /etc/apache2/sites-available/000-default.conf . 配置文件可能会这样。

<VirtualHost *:80>
     ServerName www.something.com

    # this is the document root of your project
    DocumentRoot /path/to/my-project
    # The directory which you can access with base path EX: www.something.com/static/images/image.png
    Alias /static /path/to/my-project/static

    <Directory /path/to/my-project/static>
        Require all granted
    </Directory>

    <Directory /path/to/my-project/my-project>
        <Files wsgi.py>
        Header set Access-Control-Allow-Origin "*"
            Require all granted
        </Files>
    </Directory>

    WSGIDaemonProcess my-project python-home=/path/to/my_env python-path=/path/to/my-project
    WSGIProcessGroup my-project
    WSGIScriptAlias / /path/to/my-project/my-project/wsgi.py

    ErrorLog /path/to/my-project/logs/error.log
    CustomLog /path/to/my-project/logs/access.log combined3
</VirtualHost>

Django项目wsgi.py: 你在那里创建的django项目 wsgy.py 这个文件可能看起来像。

python_home = '/path/to/my_env'

import sys
import site

sys.path.append('/path/to/my-project')
sys.path.append('/path/to/my_env/bin')
sys.path.append('/path/to/my_env/lib/python3.6/site-packages')

# Calculate path to site-packages directory.

python_version = '.'.join(map(str, sys.version_info[:2]))
site_packages = python_home + '/lib/python%s/site-packages' % python_version

# Add the site-packages directory.

site.addsitedir(site_packages)

import os

from django.core.wsgi import get_wsgi_application

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "my-project.settings")

application = get_wsgi_application()

在那之后,你可以启动apache2服务器 sudo service apache2 start

您还需要授予项目目录的权限 sudo chmod -R 777 /path/to/my-project

这是apache2与Pythondjango项目的基本配置。希望这将有助于配置任何 linux machine 和你的 python django project

6 年前
回复了 R.A.Munna 创建的主题 » 如何使for循环在python中更容易理解?

从你的文章中。我认为一切都不能一概而论。各自为政。 程序设计的概念是相同的,但在不同的语言中,它们的表示或语法是不同的。 所以,如果我是你,我会分享这个概念,我会用语言语法来表示这些概念。

因为循环的概念是一样的。 (Initialize, condition, increment/decrement) 如果你想用python来写,那就用python来写。例如。

start, stop, step = 1, 11, 1
for i in range(start, stop, step):
    print(i, end=', ')
# Output: 1 2 3 4 5 6 7 8 9 10 
  • 开始: 序列的起始编号, default=0. (initialize)
  • 停止: 生成最多个数字,但不包括此数字。 (condition)
  • 步骤: 序列中每个数字之间的差异, default=1. (increment/decrement)

其他人的答案中已经给出了python for loop示例。谢谢您。