您的位置:首页 > 移动开发 > 微信开发

Django开发微信小程序【后端配置】

2019-04-22 14:25 190 查看
版权声明:个人原创,转载请注明出处 https://blog.csdn.net/weixin_43896241/article/details/89296474

服务器配置

腾讯云ubuntu16.04 + apache2.4 + django2.1.7 + python3.5.2

允许root用户远程登录

在使用服务器最开始,先允许root远程登录

  1. 设置root用户密码 sudo passwd root
  2. 启动SSH服务 sudo /etc/init.d/ssh start
  3. 更改配置文件 sudo vim /etc/ssh/sshd_config 找到
    #PermitRootLogin prohibit-password
    输入 i 修改为
    PermitRootLogin yes
    先按Esc再输入 :wq退出
  4. 重启SSH服务 service ssh restart 此时会需要输入密码进行身份验证,之后再在腾讯云官方登录窗口以root用户登录一次就可以使用第三方登录了。

安装Python3.5.2

更新:由于最开始使用18.04系统,安装pip之后还是用python3.6!!!所以我重装Ubuntu16.04系统,自带3.5.2… 强烈推荐大家这个方式… 所以以下的一些命令可以用来对其他官方源安装做参考…暴风哭泣…

  1. wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz
  2. tar xzf Python-3.5.2.tgz
  3. cd Python-3.5.2
  4. ./configure
  5. make
  6. make install 这个时候很有可能会出现
    Ignoring ensurepip failure: pip-8.1.1 requires SSL/TLS
    ,需要 apt-get install libssl-devsudo apt-get install openssl,然后再make clean 、make、make install,但是在我这边运行还是有问题,可能因为没有把自带的3.6.5删掉,不过可以后面再装
  7. 创建软链接 cd /usr/binmv python3 python3old36ln -s /usr/local/bin/python3.5 python3之后输入 python3 --version测试一下
  8. 接着安装pip3 sudo apt-get install python3-pip
    ok!!!

安装virtualenv以及各种依赖包

  1. 首先安装虚拟环境 pip3 install virtualenv
  2. 之后在目录/home/ubuntu内创建虚拟环境 cd /home/ubuntuvirtualenv venv35source venv35/bin/activatedeactivate
  3. 值得注意的是,升级pip3后会报错:
    Traceback (most recent call last):

    File “/usr/bin/pip3”, line 9, in xxx

    from pip import main

    这时就更改/usr/bin/pip3文件为:
from pip import __main__
if __name__ == '__main__':
sys.exit(__main__._main())
  1. 具体要安装的包有:
pip3 install tensorflow==1.10.0
pip3 install keras
pip3 install librosa
pip3 install pydub
pip3 install ffmpeg
pip3 install wave
pip3 install webrtcvad
pip3 install python_speech_features
pip3 install django

本项目目前就依赖这些包,至此,python环境也安装完毕。

安装Apache2

  1. 安装Apache2 sudo apt-get install apache2
  2. 安装 mod_wsgi sudo apt-get install libapache2-mod-wsgi-py3
  3. 确认安装apache的版本号 apachectl -v

配置Apache+Django

现在可以使用WinSCP窗口化编辑配置文件,不用使用vim
首先配置ssl sudo apt-get install openssl

  1. 在基本配置文件里加载mod_wsgi模块 LoadModule wsgi_module /usr/lib/apache2/modules/mod_wsgi.so-3.5 mod_wsgi.so-3.5与文件夹中的mod_wsgi.so版本对应,是什么填什么
  2. 在/etc/apache2文件夹下创建ssl文件夹,用于存放网站证书,并把后缀名为.crf的文件更改后缀名为.pem
  3. 把/etc/apache2/sites-available中的default-ssl.conf中端口变为80,找到
    SSLCertificateFile、SSLCertificateKeyFile、SSLCertificateChainFile
    修改后面的ssl文件地址为自己ssl文件夹中的对应文件地址
  4. 再复制一遍这个文件,更名为my-site.conf,端口保持为443

接着配置网站

  1. 同样在/etc/apache2/sites-available中创建mysite.conf文件,加入以下内容:
<VirtualHost *:443>
ServerName yourweb.com
ServerAlias yourweb.com
ServerAdmin youremail@address
<Directory /home/to/project> #你项目的文件夹,注意这个文件夹是里面含有manage.py的那个文件夹。
Require all granted
</Directory>

WSGIScriptAlias / /home/to/wsgi.py #wsgi.py文件地址
WSGIDaemonProcess Server python-path=/home/to/python/site-packages
WSGIProcessGroup Server

Alias /static/ /home/to/static/
<Directory /home/django/static>
Require all granted
</Directory>

<Directory /home/to/Server> #给地址为包含wsgi.py文件的地址
<Files wsgi.py>
Require all granted
</Files>
</Directory>

ErrorLog   /home/to/error_log #保存错误信息的地址
LogLevel warn

</VirtualHost>

接下来使配置生效

  1. 先上传你的django项目,然后启动apache sudo /etc/init.d/apache2 start
  2. 再开启SSL模块sudo a2enmod ssl
  3. 接着创建连接
    a2dissite 000-default
    a2ensite default-ssl
    a2ensite mysite
    a2ensite mysite-ssl
  4. 最后重启 service apache2 reload
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: