apt get mysql 5.7_Ubuntu16.04 apt-get命令安装 Nginx、PHP 7、MySQL 5.7

本文档详细介绍了如何在Ubuntu 16.04上使用apt-get命令安装Nginx、PHP7和MySQL5.7。首先更新源,然后安装MySQL5.7并设置root用户密码。接着,如果已安装Apache2,则停止并移除,再安装Nginx。之后安装PHP7.0-fpm,配置Nginx以支持PHP,并启用必要的PHP扩展。最后,调整PHP-FPM配置以使用TCP连接,并确认所有服务正常运行。
摘要由CSDN通过智能技术生成

先更新源

apt-get update

安装 MysqL5.7 运行命令:

apt-get -y install MysqL-server MysqL-client

安装期间要求设置MysqL的root用户密码 :

New password for the MysqL “root” user:

Repeat password for the MysqL “root” user:

myql命令

service MysqLd stop

service MysqL restart

GRANT ALL ON *.* TO test@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

如果你已经安装了Apache2的话,那么使用这些命令先删除再安装Nginx:

service apache2 stop

update-rc.d -f apache2 remove

apt-get remove apache2

Ubuntu16.04有Nginx安装包,我们可以安装。

apt-get -y install Nginx

启动ngninx:

service Nginx start

输入您的Web服务器的IP地址或主机名到浏览器(例如120.132.114.131),你应该

Ubuntu16.04的默认Nginx的文档根目录为/var/www/html

安装 PHP 7

apt-get -y install PHP7.0-fpm

打开配置文件 /etc/Nginx/Nginx.conf:

vi /etc/Nginx/Nginx.conf

配置很容易理解 (你可以点击官方教程: http://wiki.Nginx.org/NginxFullExample或:http://wiki.Nginx.org/NginxFullExample2)

首先(这是可选)调整keepalive_timeout到一个合理的值:

[...]

keepalive_timeout 2;

[...]

虚拟主机服务器{}容器定义。默认的虚拟主机是在/etc/Nginx/sites-available/default 文件中定义- 修改它,如下所示:

vi /etc/Nginx/sites-available/default

[...]

server {

listen 80 default_server;

listen [::]:80 default_server;

# SSL configuration

#

# listen 443 ssl default_server;

# listen [::]:443 ssl default_server;

#

# Note: You should disable gzip for SSL traffic.

# See: https://bugs.debian.org/773332

#

# Read up on ssl_ciphers to ensure a secure configuration.

# See: https://bugs.debian.org/765782

#

# Self signed certs generated by the ssl-cert package

# Don't use them in a production server!

#

# include snippets/snakeoil.conf;

root /var/www/html;

# Add index.PHP to the list if you are using PHP

index index.html index.htm index.Nginx-debian.html;

server_name _;

location / {

# First attempt to serve request as file,then

# as directory,then fall back to displaying a 404.

try_files $uri $uri/ =404;

}

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

#

location ~ \.PHP$ {

include snippets/fastcgi-PHP.conf;

# With PHP7.0-cgi alone:

# fastcgi_pass 127.0.0.1:9000;

# With PHP7.0-fpm:

fastcgi_pass unix:/run/PHP/PHP7.0-fpm.sock;

}

# deny access to .htaccess files,if Apache's document root

# concurs with Nginx's one

#

location ~ /\.ht {

deny all;

}

}

[...]

server_name _; 使这是一个默认虚拟主机(当然,你可以同时喜欢这里www.example.com指定主机名)。

根目录 /var/www/html;意味着文档根目录/var/www/html.

PHP重要组成部分位置 ~ \.PHP$ {} stanza. 取消注释它来启用它。

现在保存文件并重新加载Nginx:

service Nginx reload

下一步打开 /etc/PHP/7.0/fpm/PHP.ini…

vi /etc/PHP/7.0/fpm/PHP.ini

设置 cgi.fix_pathinfo=0:

[...]

; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI. PHP's

; prevIoUs behavIoUr was to set PATH_TRANSLATED to SCRIPT_FILENAME,and to not grok

; what PATH_INFO is. For more information on PATH_INFO,see the cgi specs. Setting

; this to 1 will cause PHP CGI to fix its paths to conform to the spec. A setting

; of zero causes PHP to behave as before. Default is 1. You should fix your scripts

; to use SCRIPT_FILENAME rather than PATH_TRANSLATED.

; http://PHP.net/cgi.fix-pathinfo

cgi.fix_pathinfo=0

[...]

重新加载 PHP-FPM:

service PHP7.0-fpm reload

建立探针文件/var/www/html:

vi /var/www/html/info.PHP

PHPinfo();

?>

浏览器访问 (e.g. 120.132.114.131/info.PHP):

先搜索一下PHP支持的模块:

apt-cache search PHP7.0

使用下面的命令安装:

apt-get -y install PHP7.0-MysqL PHP7.0-curl PHP7.0-gd PHP7.0-intl PHP-pear PHP-imagick PHP7.0-imap PHP7.0-mcrypt PHP-memcache PHP7.0-pspell PHP7.0-recode PHP7.0-sqlite3 PHP7.0-tidy PHP7.0-xmlrpc PHP7.0-xsl PHP7.0-mbstring PHP-gettext

APCu是随PHP7 PHP Opcache模块的扩展,它增加了一些兼容性功能的支持APC缓存(例如wordpress的插件缓存)软件。

APCu可以安装如下:

apt-get -y install PHP-apcu

重新加载 PHP-FPM:

service PHP7.0-fpm reload

刷新 120.132.114.131/info.PHP 浏览器看看模块安装情况:

让 PHP-FPM 使用 TCP 连接

默认情况下PHP-FPM监听 /var/run/PHP/PHP7.0-fpm.sock. 另外,也可以使 PHP-FPM 试用 TCP 连接,打开文件 /etc/PHP/7.0/fpm/pool.d/www.conf…

vi /etc/PHP/7.0/fpm/pool.d/www.conf

修改如下:

[...]

;listen = /var/run/PHP5-fpm.sock

listen = 127.0.0.1:9000

[...]

这将使PHP-FPM端口9000侦听的IP127.0.0.1(本地主机)。请确保您使用的端口,是不是在你的系统上使用。

然后重新加载 PHP-FPM:

PHP7.0-fpm reload

接下来通过你的Nginx的配置和所有的虚拟主机,并更改fastcgi_pass UNIX行:/var/run/PHP/PHP7.0-fpm.sock; tofastcgi_pass127.0.0.1:9000;,如下:

vi /etc/Nginx/sites-available/default

[...]

location ~ \.PHP$ {

include snippets/fastcgi-PHP.conf;

# With PHP7.0-cgi alone:

fastcgi_pass 127.0.0.1:9000;

# With PHP7.0-fpm:

# fastcgi_pass unix:/run/PHP/PHP7.0-fpm.sock;

}

[...]

最后,重新加载Nginx:

service Nginx reload

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

如您喜欢交流学习经验,点击链接加入交流1群:1065694478(已满)交流2群:163560250

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值