douzhuo6931
2017-05-10 00:35
浏览 228
已采纳

在Ubuntu中使用PHP openssl

I have created a web app which uses PHPMailer for mailing and its working properly on my local server(Windows OS). However, when I uploaded it to the production server(Ubuntu 14.04.4) it returned an error which says “Message could not be sent.Mailer Error: Extension missing: openssl”.I tried looking for solution but nothing works. Anyway I'm using PHP5.3.6. I hope you guys can help me.

图片转代码服务由CSDN问答提供 功能建议

我创建了一个Web应用程序,它使用PHPMailer进行邮件发送,并在我的本地服务器(Windows操作系统)上正常工作。 但是,当我将其上传到生产服务器(Ubuntu 14.04.4)时,它返回了一个错误,上面写着 “无法发送消息.Mailer错误:扩展缺失:openssl” 。我试图寻找解决方案,但没有任何作用。 无论如何我使用的是PHP5.3.6。 我希望你们能帮助我。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • duanneng2014 2017-05-10 02:08
    已采纳

    You can compile the openssl extension.

    first step : download the php source in the version you are using .

    then run command:

    tar zxvf php-yourphpversion.tar.gz
    cd php-yourphpversion/ext/openssl/
    
    #notice if you have error  "cannot find config.m4" when run phpize , you   
    #should   rename the file "config0.m4" to "config.m4" by command
    #"mv config0.m4 config.m4"
    
    
    /usr/local/php/bin/phpize     #here is your php location have install 
                                  #in my computer ,the php is location in 
                                  # /usr/local/php/ so the phpize is in
                                  # /usr/local/php/bin/phpize
    
    
                                                 #(your php location)/bin/php-config                                        
    ./configure --with-openssl --with-php-config=/usr/local/php/bin/php-config
    make
    sudo make install
    

    then the openssl will install and return a path in my computer it return /usr/local/php/lib/php/extensions/debug-zts-20160303/

    finally modify php.ini and restart php-fpm :

    extension_dir = "the path return after install"   #you should add the return path here
    extension=openssl.so
    
    点赞 评论

相关推荐 更多相似问题