Maison  >  Article  >  Applet WeChat  >  Certification de développeur de compte public WeChat : explication détaillée des étapes de uwsgi combinées avec web.py

Certification de développeur de compte public WeChat : explication détaillée des étapes de uwsgi combinées avec web.py

高洛峰
高洛峰original
2017-03-23 13:07:452429parcourir

Linux Version :

[root@mail ~]# uname -a
Linux mail.vtata.cn 2.6.18-128.el5xen #1 SMP mercredi 21 janvier 11:12:42 EST 2009 x86_64 x86_64 x86_64 GNU/Linux
[root@mail ~]# cat / etc/redhat-release
CentOS version 5.3 (Finale)

Python Version :

[root@mail ~]# python
Python 2.7.5 (par défaut, 14 juin 2013, 18:21:34)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-44)] sur Linux2
Tapez "help", "copiedroit", "crédits" ou "licence" pourplus d'informations

uwsgi Version :

uWSGI 1.4.9

Version web.py :

web.py-0.37

Tout d'abord, installez les programmes requis, car le Python fourni avec Centos est 2.4. Si vous ne mettez pas à jour vers 2.7, des erreurs d'importation de module et d'autres problèmes peuvent survenir

tar xvf Python-2.7.5.tgz
cd Python-2.7.5
./configure && make all && make install && make distclean
mv /usr/bin/python /usr/bin/python.bak
ln -sv /usr/local/bin/python2.7 /usr/bin/python
sed -i s@/usr/bin/python@/usr/bin/python2.4@ /usr/bin/yum
tar zxvf uwsgi-1.4.9.tar.gz
cd uwsgi-1.4.9
python uwsgiconfig.py --build
python setup.py install
tar zxvf web.py-0.37.tar.gz
cd web.py-0.37
python setup.py install

Cette fois, il est utilisé via la combinaison de uwsgi et nginx. intégration de uwsgi et nginx. >Écrivez le code de vérification comme suit :

Nom du fichier : webinput.py

Démarrez uwsgi après avoir démarré nginx. >
import web
import hashlib
urls = (
    '/','index'
)
class index:
    def GET(self):
        token='shiji'
        sign = web.input()
        tmplist = [token,sign.timestamp,sign.nonce]
        tmplist.sort()
        tmpstr = "%s%s%s"%tuple(tmplist)
        tmpstr = hashlib.sha1(tmpstr).hexdigest()
        if tmpstr == sign.signature:
            return sign.echostr
        else:
            return None
app = web.application(urls,globals())
application = app.wsgifunc()

Ouvrez l'interface de la plateforme publique WeChat, définie dans les fonctions avancées comme indiqué ci-dessous :

[root@mail html]# uwsgi -s 127.0.0.1:9000 -w webinput
*** Starting uWSGI 1.4.9 (64bit) on [Mon Jun 17 17:19:16 2013] ***
compiled with version: 4.1.2 20080704 (Red Hat 4.1.2-44) on 17 June 2013 17:15:20
os: Linux-2.6.18-128.el5xen #1 SMP Wed Jan 21 11:12:42 EST 2009
nodename: mail.vtata.cn
machine: x86_64
clock source: unix
pcre jit disabled
detected number of CPU cores: 8
current working directory: /usr/local/nginx/html
detected binary path: /usr/local/bin/uwsgi
uWSGI running as root, you can use --uid/--gid/--chroot options
*** WARNING: you are running uWSGI as root !!! (use the --uid flag) ***
*** WARNING: you are running uWSGI without its master process manager ***
your processes number limit is 61234
your memory page size is 4096 bytes
detected max file descriptor number: 52100
lock engine: pthread robust mutexes
uwsgi socket 0 bound to TCP address 127.0.0.1:9000 fd 3
Python version: 2.7.5 (default, Jun 14 2013, 18:21:34)  [GCC 4.1.2 20080704 (Red Hat 4.1.2-44)]
*** Python threads support is disabled. You can enable it with --enable-threads ***
Python main interpreter initialized at 0xfe30520
your server socket listen backlog is limited to 100 connections
mapped 72424 bytes (70 KB) for 1 cores
*** Operational MODE: single process ***
WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0xfe30520 pid: 10775 (default app)
*** uWSGI is running in multiple interpreter mode ***
spawned uWSGI worker 1 (and the only) (pid: 10775, cores: 1)
13712480011371460796shiji
[pid: 10775|app: 0|req: 1/1] 101.226.33.171 () {34 vars in 616 bytes} [Mon Jun 17 17:19:43 2013] GET /?signature=915c123b81282828ae1eecdc202336d07dfc15d8&echostr=5889465363321509055&timestamp=1371460796&nonce=1371248001 => generated 4 bytes in 2 msecs (HTTP/1.0 200) 0 headers in 19 bytes (2 switches on core 0)

Certification de développeur de compte public WeChat : explication détaillée des étapes de uwsgi combinées avec web.py

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn