51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 1358|回复: 0
打印 上一主题 下一主题

Linux MySQL Apache Django 配置

[复制链接]
  • TA的每日心情
    奋斗
    2021-8-6 16:14
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    跳转到指定楼层
    1#
    发表于 2018-4-11 15:37:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    安装各种包

    俺用的是ubuntu,装包什么的最方便了.

    Pip - python的包获取/安装工具,相当好用。django各个版本它都有:

    sudo apt-get install python-pip

    Django - 装原来用过的版本。不然的话会有很多兼容的问题(坑)。我用的是1.4.5的版本:

    pip install django==1.4.5

    Apache - 一般都是2.2.1吧:

    sudo apt-get install apache2

    MySQL - 装个server就够了:

    sudo apt-get install mysql-server

    MySQLdb - MySQL跟Django的data layer:

    sudo apt-get install python-mysqldb

    Mod_wsgi - 支持Apache模块和python应用的通信组件:

    sudo apt-get install libapache2-mod-wsgi

    建立app

    如果你已经有项目了,直接mv项目到/var/www/下面就行了。如果是新项目,同样到www的目录下新建一
    个项目:
    django-admin.py startproject your-app

    配置apache

    cd去/etc/apache2/site-available/下,把80端口的virtualshost换了。

    1. <VirtualHost *:80>

    2.          ServerAdmin your-app
    3.          ServerName your-app.com

    4.          DocumentRoot /var/www/your-app
    5.          <Directory />
    6.                  Options FollowSymLinks
    7.                  AllowOverride None
    8.          </Directory>
    9.          <Directory /var/www/>
    10.                  Options Indexes FollowSymLinks MultiViews
    11.                  AllowOverride None
    12.                  Order allow,deny
    13.                  allow from all
    14.          </Directory>

    15.          ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    16.          <Directory "/usr/lib/cgi-bin">
    17.                  AllowOverride None
    18.                  Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
    19.                  Order allow,deny
    20.                  Allow from all
    21.          </Directory>

    22.          ErrorLog ${APACHE_LOG_DIR}/error.log

    23.          # Possible values include: debug, info, notice, warn, error, crit,
    24.          # alert, emerg.
    25.          LogLevel warn

    26.          CustomLog ${APACHE_LOG_DIR}/access.log combined

    27.      Alias /doc/ "/usr/share/doc/"
    28.      <Directory "/usr/share/doc/">
    29.          Options Indexes MultiViews FollowSymLinks
    30.          AllowOverride None
    31.          Order deny,allow
    32.          Deny from all
    33.          Allow from 127.0.0.0/255.0.0.0 ::1/128

    34.      </Directory>
    35. </VirtualHost>
    复制代码

    配置wsgi

    在/var/www/下新建一个文件夹叫apache,然后在文件夹里面新建一个叫django.wsgi的文件,加入以下:

    import os
    import sys
    import django.core.handlers.wsgi
    sys.stdout=sys.stderr
    sys.path.append(r'/var/www/your-app')
    os.environ['DJANGO_SETTINGS_MODULE']='settings'
    application=django.core.handlers.wsgi.WSGIHandler()
    如果你有多个app分支,建议把setting分开成多个配置文件。然后再切到/etc/apache2/下面,在httpd.conf
    里面加上:

    WSGIScriptAlias / /var/www/apache/django.wsgi
    WSGIScriptAlias / /var/www/apache/django.wsgi
    ###配置MySQL

    mysql -u root -p yourpwd进入MySQL,建一个新的databasecreate database new_database。在setting里面
    加入MySQL信息:

    1. DATABASES = {
    2.     'default': {
    3.         'ENGINE': 'django.db.backends.mysql',
    4.         'NAME': 'new_database',
    5.         'USER': 'root',
    6.         'PASSWORD': 'your password',
    7.         'HOST': 'localhost',
    8.         'PORT': '3306',
    9.     }
    10. }
    复制代码

    配置settings

    一些路径的配置:

    INSTALLED_APPS = ('your-app') #加入你的app

    DEBUG = True #开debug,如果是prod请设置成False
    TEMPLATE_DEBUG = DEBUG

    SITE_URL = '/var/www/your-app'

    MEDIA_ROOT = SITE_URL + '/media/'

    TEMPLATE_DIRS = (SITE_URL + '/template',)

    STATIC_PATH = SITE_URL + "/static/"

    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-4-25 01:34 , Processed in 0.059850 second(s), 23 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表