您的位置 首页 php

Debian9详细手动安装LNMP环境

本次搭建的环境各个软件版本号分别为:

Debian9(Linode)

Nginx :1.14.0

MySQL:8.0(据说性能提升了N倍)

PHP:7.0.30

Debian9默认内核应该都是4.9以上了,所以可以在开始之前先开一波BBR,优化下网络:

 echo  "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
sysctl -p
 

现在我们开始安装Nginx,Debian9的源默认只能安装到1.10版本,该版本较旧,所以我们自己添加源安装新的稳定版本:

nano /etc/apt/sources.list
 

写入:

 deb   stretch nginx
deb-src  stretch nginx
 

添加key防止安装的时候出现GPG签名报错:

 wget  
apt-key add  nginx _signing.key
 

安装:

apt-get update
apt-get install nginx
 

接着来安装MySQL,MySQL最近的动作有点大哟,直接从5.0版本跨度到了8.0,据说8.0的版本性能有非常大的提升(虽然我没感觉出来233)。

先下载deb包:

wget 
 

安装deb包:

dpkg -i mysql-apt-config_0.8.10-1_all.deb
 

这里会弹出窗口问你要安装的版本和一些其他的东西,这里我直接默认OK:

完事之后我们直接apt安装:

apt-get update
apt-get install mysql-server
 

然后会提示让你设置ROOT密码:

接着到了非常关键的地方了,这个地方一定要选择如下图箭头所指的选项:

注:8.0版本采用了新的密码加密机制,但这个机制目前太过于“前卫”,导致很多程序目前都不兼容,所以这块我们只能委曲求全选择兼容旧版。

最后我们来安装PHP7,因为Debian9源内自带了目前的PHP7稳定版,所以可以直接apt安装:

apt-get install php7.0 php7.0-cli php7.0-common php7.0-curl php7.0-fpm php7.0-gd php7.0-mysql php7.0-opcache php7.0-xml php7.0-xmlrpc php7.0-sqlite3 php7.0-mbstring
 

安装完成之后记得启动一下FPM:

systemctl start php7.0-fpm
 

注:这个7.0.30的FPM监听方式已经从之前的127.0.0.1:9000改为了/run/php/php7.0-fpm.sock。所以接下来我们在编辑Nginx配置文件的时候需要注意一下。

环境现在已经都安装好了,有个小坑需要填一下,编辑Nginx的主配置文件:

nano /etc/nginx/nginx.conf
 

把运行用户改为root:

user root;
 

如图所示:

现在来测试一下我们搭建的这个环境是否正常,是否可用!

先来安装一个 phpmyadmin

apt-get install unzip
cd /usr/share/nginx/
wget 
unzip phpMyAdmin-4.8.2-all-languages.zip
rm -rf phpMyAdmin-4.8.2-all-languages.zip
mv phpMyAdmin-4.8.2-all-languages phpmyadmin
 

新建一个Nginx配置文件:

nano /etc/nginx/conf.d/phpmyadmin.conf
 

写入:

server {
 listen 2333;
 server_name 172.104.111.195;
 #charset koi8-r;
 #access_log /var/log/nginx/host.access.log main;
 location / {
 root /usr/share/nginx/phpmyadmin;
 index index.html index.htm index.php;
 }
 location ~ \.php$ {
 root /usr/share/nginx/phpmyadmin;
 fastcgi_pass unix:/run/php/php7.0-fpm.sock;
 fastcgi_index index.php;
 fastcgi_param SCRIPT_FILENAME /usr/share/nginx/phpmyadmin$fastcgi_script_name;
 include fastcgi_params;
 }
}
 

然后重启Nginx:

systemctl restart nginx
 

再来安装一个 wordpress

cd /usr/share/nginx/
wget 
unzip wordpress-4.9.4-zh_CN.zip
rm -rf wordpress-4.9.4-zh_CN.zip
 

新建一个Nginx配置文件:

nano /etc/nginx/conf.d/wordpress.conf
server {
 listen 81;
 server_name 172.104.111.195;
 #charset koi8-r;
 #access_log /var/log/nginx/host.access.log main;
 location / {
 root /usr/share/nginx/wordpress;
 index index.html index.htm index.php;
 include /etc/nginx/conf.d/rewrite/wordpress.conf;
 }
 location ~ \.php$ {
 root /usr/share/nginx/wordpress;
 fastcgi_pass unix:/run/php/php7.0-fpm.sock;
 fastcgi_index index.php;
 fastcgi_param SCRIPT_FILENAME /usr/share/nginx/wordpress$fastcgi_script_name;
 include fastcgi_params;
 }
}
 

再新建一个WordPress的伪静态配置文件:

mkdir -p /etc/nginx/conf.d/rewrite/
nano /etc/nginx/conf.d/rewrite/wordpress.conf
 

写入伪静态规则:

location / {
try_files $uri $uri/ /index.php?$args;
}
 

重要!最后把wordpress的目录所有者改为www-data(在Debian9中,PHP默认以www-data用户运行)

chown -R www-data:www-data wordpress
 

你可能会用到的配置文件路径:

Nginx错误日志:/var/log/nginx/error.log

Nginx主配置文件:/etc/nginx/nginx.conf

Nginx站点配置文件:/etc/nginx/conf.d/

Nginx站点目录:/usr/share/nginx/

PHP-FPM配置文件:/etc/php/7.0/fpm/pool.d/www.conf

PHP. INI 配置文件:/etc/php/7.0/fpm/php.ini

MySQL主配置文件:/etc/mysql/my.cnf

如果不想用这个环境了,想删除环境:

apt-get autoremove --purge nginx
apt-get autoremove --purge mysql-server
 

文章来源:智云一二三科技

文章标题:Debian9详细手动安装LNMP环境

文章地址:https://www.zhihuclub.com/152784.shtml

关于作者: 智云科技

热门文章

网站地图