ubuntu(或树莓派)php+nginx的安装和php调用c++程序

1、安装php+nginx

安装php:

sudo apt-get install php5-fpm php5-cgi php5-cli php5-curl php5-gd php5-mcrypt php5-mysql php5-memcache php5-gd php5-sqlite php5-cgi php5-xmlrpc

当时遇到问题是没有软件包,即使更新也不行,后来参考下面这个博客更新了镜像源:

http://www.ixsz.com/?p=710

由于php5.6较稳定,装php5.6版本的方法:

ubuntu16.04默认是php 7,要装php 5.x要添加第三方源:

sudo add-apt-repository ppa:ondrej/php

更新包和安装php5.6版本:

sudo apt-get update  
sudo apt-get install php5.6-fpm
注:【需要额外安装一些extension如:php5.6-gd php5.6-mbstring php5.6-mysql php5.6-zip php5.6-xml php5.6-mcrypt】  
具体情况视需求来增加~  

参考:

http://blog.163.com/don_t9xu/blog/static/13290945320166610102/

重启fpm

sudo service php5.6-fpm restart

安装nginx:

sudo apt-get install nginx

2、修改站点配置文件:

sudo gedit /etc/nginx/sites-available/default

修改为以下内容:

server
{ listen
80; server_name raspiweb.dyndns.org; root /var/www/; access_log /var/log/nginx/localhost.access.log; #error_page 404 /404.html; if (!-e $request_filename) { rewrite ^(.*)$ /index.php$1 last; } location / { index index.html index.htm index.php default.html default.htm default.php; } location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|xml)$ { access_log off; expires 1d; } location ~ .*\.php(\/.*)*$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
}

 需要说明的是,站点目录为/var/www/,重点关注这一句:

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

然后注意一定要重启nginx使得它生效

sudo service nginx restart

php调用c++的demo:
http://www.cnblogs.com/freeweb/p/5645699.html

注意php调用c++的demo中的test可执行文件,html文件,php文件需要放在上面的root指定的路径中,即/var/www/;

 并且也不能直接打开html文件,需要在浏览器中输入localhost/form.html就可以了

 

前后端连接的时候出现了504这种error的解决办法:

要么是端口的问题,用netstat -tunlp查一下被占用的端口,然后kill -9 对应pid,或者将nginx和fpm重启一下就可以了






posted @ 2017-10-28 16:42  YYYYQQQQ  阅读(706)  评论(0编辑  收藏  举报