用pcre支持重builduwsgi

当运行uwsgi我得到以下消息:

!!! no internal routing support, rebuild with pcre support !!! 

我已经用下面的命令安装了pcre(我认为):

 Sudo apt-get install libpcre3 libpcre3-dev 

我的问题是:为什么我仍然得到这个消息,即使我已经安装了pcre软件包,如果我需要重新安装uwsgi并激活pcre我该怎么做呢?

另外,内部路由是否重要? 我认为这样做,否则uwsgi的制造者不会让消息出现。 我正在运行Ubuntu 12.04 LTS

谢谢您的帮助!

 pip install uwsgi -I 

不会重新编译uwsgi二进制文件,它只是重新安装Python的蛋。 您需要使用pcre库重builduwsgi二进制文件。

 sudo apt-get install libpcre3 libpcre3-dev 

我认为最简单的方法就是卸载uwsgi,然后再次运行pip安装程序。

 pip uninstall uwsgi sudo apt-get remove uwsgi 

然后

 pip install uwsgi 

你应该看到pip运行setup.py脚本和一堆编译器消息。 最后一条消息应该告诉你这样的事情:

 ################# uWSGI configuration ################# pcre = True kernel = Linux malloc = libc execinfo = False ifaddrs = True ssl = True zlib = True locking = pthread_mutex plugin_dir = . timer = timerfd yaml = embedded json = False filemonitor = inotify routing = True debug = False capabilities = False xml = libxml2 event = epoll ############## end of uWSGI configuration ############# 

注意现在pcre = true

pip install uwsgi -I --no-cache-dir

它像@leech说的那样重新安装( -I ),但忽略编译的caching( --no-cache-dir )并用新的库重新编译。

 pip uninstall uwsgi sudo apt-get install libpcre3 libpcre3-dev pip install uwsgi 

我用上面的命令解决了它。

你试过了吗:

 pip install uwsgi -I 

-I标志将强制它重新安装

如果你已经尝试了以上所有,但仍然有相同的错误和下面的错误,请检查你的命令参数,特别是–http-socket /path/to/your.sock。 那就是path ='/ path / to'必须存在

 thunder lock: disabled (you can enable it with --thunder-lock) bind(): No such file or directory [core/socket.c line 230]