ubuntu php v8js,Ubuntu16安装配置LNMP(7.1)环境并安装v8js拓展

在服务器上安装 Git

sudo apt-get install git

配置环境

一:安装 PHP 7.1

ppa 方式安装 php7.1 :

sudo apt-get install software-properties-common

添加 php7 的 ppa

sudo LC_ALL=en_US.UTF-8 add-apt-repository ppa:ondrej/php

更新安装包

sudo apt-get update

检验是否安装成功,运行命令如若成功就能开始安装php7.1

apt-cache search php7.1

php7.1安装

sudo apt-get -y install php7.1

apt-get install php7.1-dev

运行php -v查看版本,出现如下结果则为成功

bV5qH4?w=896&h=95

二:安装php7.1的各个模块

sudo apt-get -y install php7.1-mysql

sudo apt-get install php7.1-fpm

apt-get install php7.1-curl php7.1-xml php7.1-mcrypt php7.1-json php7.1-gd php7.1-mbstring

php7.2-mcrypt 安装

apt-get install php-pecl

apt-get install libmcrypt-dev libreadline-dev

pecl install mcrypt-1.0.1

After the successful installation

You should add "extension=mcrypt.so" to php.ini

PS:为了与我下方nginx配置对应,这里要将php-fpm监听接口打开

vim /etc/php/7.1/fpm/php-fpm.conf 或者 /etc/php/7.1/fpm/pool.d/ 下配置文件

pm.max_children = 5 => pm.max_children = 20 最大子进程数

listen = /run/php/php7.1-fpm.sock => listen = 127.0.0.1:9000

重启:service php7.1-fpm restart

三:安装 mysql

安装命令

sudo apt-get install mysql-server mysql-client

ps:安装过程中需要输入 2 次密码确认,安装完成后mysql -u root -p登陆测试,能正常登陆即安装完成。exit;退出 mysql,ubuntu16 安装的mysql版本为mysql-5.7,如若不是需要升级执行以下操作:

cd ~

wget https://dev.mysql.com/get/mysql-apt-config_0.8.1-1_all.deb

sudo dpkg -i mysql-apt-config_0.8.1-1_all.deb

选择mysql5.7按OK继续

更新包索引

sudo apt-get update

安装

MySQL-server:sudo apt-get install mysql-server

升级数据库

sudo mysql_upgrade -u root -p

重启

mysql:server:sudo service mysql restart

登陆 mysql 查看是否已经升级完毕

四:安装 Nginx

检查服务器是有存在apache2,如若存在卸载,执行以下操作

sudo service apache2 stop

update-rc.d -f apache2 remove

sudo apt-get remove apache2

卸载完毕或原不存在执行以下操作

更新包列表: sudo apt-get update

安装Nginx: sudo apt-get install nginx

重启Nginx: service nginx restart

测试

输入服务器地址能访问到自带欢迎页面

五:配置 PHP

sudo vim /etc/php/7.1/fpm/php.ini

命令行模式下输入/进入查找模式

搜索fix_pathinfo将cgi.fix_pathinfo=1改为cgi.fix_pathinfo=0

六:配置 Nginx

打开nginx配置文件

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

编辑修改,例如

server {

listen 80;

server_name mycode.test.top;

root "/home/Code";

index index.html index.htm index.php;

charset utf-8;

location / {

try_files $uri $uri/ /index.php?$query_string;

}

location = /favicon.ico { access_log off; log_not_found off; }

location = /robots.txt { access_log off; log_not_found off; }

access_log off;

error_log /var/log/nginx/mycode.test.com-error.log error;

sendfile off;

client_max_body_size 100m;

location ~ \.php$ {

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

include fastcgi_params;

}

location ~ /\.ht {

deny all;

}

}

配置成功后查看是否正确

service nginx configtest

配置好之后,运行Nginx -t如果出现报错,尝试删除其他站点的ipv6only=on

七:安装 Composer

php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"

php composer-setup.php

php -r "unlink('composer-setup.php');"

sudo mv composer.phar /usr/local/bin/composer

八:配置v8js拓展

tar zxvf v8js-2.1.0.tgz

进入解压后目录

cd v8js-2.1.0/

添加libv8-dev包的仓库

sudo add-apt-repository -y ppa:pinepain/libv8

更新包列表

sudo apt-get update

安装libv8-dev

apt-get install libv8-6.6-dev

执行操作

phpize

./configure --with-v8js=/opt/libv8-6.6

make

make test

cp v8js.so /usr/lib/php/20160303/

配置php.ini填上:extension=v8js.so

重启fpm与nginx并创建测试文件

$v8 = new V8Js();

/* basic.js */

$JS = <<< EOT

len = print('Hello' + ' ' + 'World!' + "\\n");

len;

EOT;

try {

var_dump($v8->executeString($JS, 'basic.js'));

} catch (V8JsException $e) {

var_dump($e);

}

?>

访问文件成功或者访问phpinfo存在v8js则安装成功

如果出现以下错误:

configure: error: Please reinstall the v8 distribution

表示没有安装libv8*-dev的包

checking for libv8_libplatform... checking for libv8_libplatform... configure: error: could not find libv8_libplatform library

表示安装libv8-dev包的版本太低了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值