我想在我的Apache2服務器上啓用線程安全,以最終能夠使用PHP pthreads模塊(PHP多線程)。如何啓用Apache2服務器上的線程安全
到目前爲止,我已編譯PHP從源代碼的選項(COMMON_CONFIG
下):
--enable-maintainer-zts
和的phpinfo說Thread Safety disabled
然後我重新編譯:
--enable-maintainer-zts
--enable-roxen-zts
和的phpinfo說:Thread Safety disabled
最後,我試着用:
--enable-maintainer-zts
--enable-roxen-zts
--with-tsrm-pthreads
和的phpinfo說Thread Safety disabled
我仍然試圖安裝並行線程作爲最後的情況下,使用PECL。在正確的CLI代表移動pthreads.so
後,PHP說:
~ # php -m
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20121212/pthreads.so' - /usr/lib/php5/20121212/pthreads.so: undefined symbol: sapi_globals_id in Unknown on line 0
我在做什麼錯?我是否需要使用特殊的./configure選項從源代碼編譯Apache?
任何英特爾非常感謝,謝謝!
沒有必要重新編譯Apache。我3天前用--enable-maintainer-zts啓用了線程安全,並且它工作正常。 Pthreads也可以編譯成PHP,但你必須先從GIT下載它。你確定你使用了正確的版本[路徑,...]嗎? – 2014-11-07 18:07:18
我成功構建了2周前的所有內容,但卻懶得更新我的文章:p我所做的是從PHP.net/Apache.org源代碼編譯而不是'apt-get source'。然後用正確的'。/ configure'選項一切正常。 – PinkTurtle 2014-11-07 18:09:31