Deepin LNMP环境搭建

威尔we 等级 665 0 0

LNMP

lnmp 是一个常见的web开发的环境,尤其对于 phper 来说,基本是必须要使用的一套环境。但是在 Linux 下的安装和配置并不是那么容易,所以近些年涌现了不少的一键安装方案,比如 lnmp、宝塔等。基本满足了日常的使用,但是如果不自己动手打通每个软件直接的配置与关联,我们就无法深入的去理解各个软件之间是如何协作的。而且往往集成环境的各种细节也不太清楚,如果想要扩展或是有出现错误,有时也很难短时间的解决。所以独立安装会让我们更清晰的了解整个的流程,对于错误也更好的去分析是那个环节出现了问题。

Linux

本文基于 deepin 环境,所以不需要再安装配置 linux 环境。

Nginx

仓库中的 nginx 就可以使用,一般 nginx 不需要安装太新的版本。

如果安装过可以不用安装,或者卸载重新安装

1
sudo apt remove nginx --purge #

安装

1
2
3
sudo apt install nginx
nginx -v # 验证是否安装成功
service nginx status # 查看 nginx 的运行状态 stop停止 restart重启

PHP

仓库中的 php7.3版本,直接安装仓库中的 php7.3-fpm

同样,安装过想要重新安装可以先卸载

1
sudo apt remove php7.3-fpm --purge

安装

1
2
3
4
sudo apt install php7.3-fpm
# 安装扩展,有时运行项目提示没有扩展,需要使用下面命令安装
sudo apt install php7.3-xml php7.3-curl php7.3-mbstring php7.3-xml
# 如果还需要扩展可以使用 sudo apt install php7.3- 加Tab键自动提示所有的扩展,然后选择需要的扩展进行安装

如果仓库中没有需要的版本

  1. 首先更新下仓库
1
2
sudo apt update
sudo apt upgrade
  1. 添加存储仓库
1
2
3
sudo apt install software-properties-common 
add-apt-repository ppa:ondrej/php
sudo apt update

现在仓库中搜索就可以找到 7.2 7.3 版本的 php

1
sudo apt install php7.2  # 安装同版本的模块使用 sudo apt install php7.2- tab键自动补全,根据提示安装扩展

MYSQL

deepin 环境中看到社区很多反映的就是 mysql 的安装问题,要不然是版本太低,要不然是配置失败

其实这些软件,在官网都会有每个发行版,每个架构的安装和使用方法,只要耐心查看,安装和使用是没有问题的。

各个发行版下载页

这里我们使用的是 deepin 所以选择 mysql apt repository 进入

这里可以点击下载,使用 No thinks 那个选项下载,下载 mysql 的官方源 deb 包,也可以复制链接 使用 wget 下载

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

安装

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
sudo dpkg -i mysql-apt-config_0.8.16-1_all.deb  # 就会进入安装源的过程
# 选择 mysql-server 
# 版本 根据自己需要进行选择
# 最后选择 ok

sudo apt update # 更新 安装源成功就会看到有 mysql 的源输出 sudo apt install mysql-server # 安装 mysql 服务 # 输入 y # 会弹框提示输入密码,输入两次即可 # 会让认证插件, 一般选择第二个,第一个可能兼容性不好。

Deepin LNMP环境搭建

验证

1
2
3
mysql -uroot -p
# 输入密码
# 成功进入mysql终端

Deepin LNMP环境搭建

composer安装

官方安装

安装完如果有问题,记得加入执行权限

1
sudo chmod a+x /usr/bin/composer

配置阿里云镜像源

1
composer config -g repo.packagist composer mirrors.aliyun.com/composer/

配置 nginxphp

新增 nginx 配置文件,默认配置文件在 /etc/nginx/nginx.config

可以看到默认配置文件的引入文件内容

1
2
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;

所以我们不需要更改默认的配置,只需要在者两个目录下新建配置文件就可以被加载进来,推荐将文件新建到 /etc/nginx/sites-enabled/ ,可以看到有个默认的 default 文件,为了避免冲突,可以将这个文件的内容全部注释,或者将文件移动到其他不会加载的位置。推荐将文件名设置为 项目名,后缀为 .conf 即可。比如新建 caoayu.xyz.conf 内容如下

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
server {
    listen 80;
    server_name example.com;
    root /example.com/public;

add_header X-Frame-Options <span class="s2">"SAMEORIGIN"</span><span class="p">;</span>
add_header X-XSS-Protection <span class="s2">"1; mode=block"</span><span class="p">;</span>
add_header X-Content-Type-Options <span class="s2">"nosniff"</span><span class="p">;</span>

index index.html index.htm index.php<span class="p">;</span>

charset utf-8<span class="p">;</span>

location / <span class="o">{</span>
    try_files <span class="nv">$uri</span> <span class="nv">$uri</span>/ /index.php?<span class="nv">$query_string</span><span class="p">;</span>
<span class="o">}</span>

<span class="nv">location</span> <span class="o">=</span> /favicon.ico <span class="o">{</span> access_log off<span class="p">;</span> log_not_found off<span class="p">;</span> <span class="o">}</span>
<span class="nv">location</span> <span class="o">=</span> /robots.txt  <span class="o">{</span> access_log off<span class="p">;</span> log_not_found off<span class="p">;</span> <span class="o">}</span>

error_page <span class="m">404</span> /index.php<span class="p">;</span>

location ~ <span class="se">\.</span>php$ <span class="o">{</span>
    fastcgi_split_path_info ^<span class="o">(</span>.+<span class="se">\.</span>php<span class="o">)(</span>/.+<span class="o">)</span>$<span class="p">;</span>
    fastcgi_pass unix:/run/php/php7.3-fpm.sock<span class="p">;</span> <span class="c1"># fpm的sock地址</span>
    fastcgi_index index.php<span class="p">;</span>
    include fastcgi_params<span class="p">;</span>
<span class="o">}</span>

location ~ /<span class="se">\.</span><span class="o">(</span>?!well-known<span class="o">)</span>.* <span class="o">{</span>
    deny all<span class="p">;</span>
<span class="o">}</span>

}

关于 php-fpm 的地址,也就是 fastcgi_pass 那一项的值,我们找到 php-fmp 的配置文件,在 /etc/php/7.3/fpm/php-fpm.conf ,可以看到 sock 的地址

1
2
3
4
5
[global]
; Pid file
; Note: the default prefix is /var
; Default Value: none
pid = /run/php/php7.3-fpm.pid

所以配置为 fastcgi_pass unix:/run/php/php7.3-fpm.sock

关于 nginxphp 的配置可参考 laravel官方文档

本文转自 https://www.caoayu.xyz/post/deepin-lnmp/,如有侵权,请联系删除。

收藏
评论区

相关推荐

Deepin LNMP环境搭建
LNMPlnmp 是一个常见的web开发的环境,尤其对于 phper 来说,基本是必须要使用的一套环境。但是在 Linux 下的安装和配置并不是那么容易,所以近些年涌现了不少的一键安装方案,比如 lnmp、宝塔等。基本满足了日常的使用,但是如果不自己动手打通每个软件直接的配置与关联,我们就无法深入的去理解各个软件之间是如何协作
(Bypat代维)专注于为中小企业提供高质量的服务器配置、网站代维护服务。
**LNMP、LAMP、LTANMP环境配置**[](https://www.oschina.net/action/GoToLink?url=http%3A%2F%2Fwww.ltanmp.com%2Fwp-content%2Fuploads%2Fauto_save_image%2F2013%2F09%2F042020jgj.jpg) -----------
LNMP架构之环境搭建
本文索引: * LAMP架构介绍 * Mysql的安装 * PHP的安装 * Nginx介绍 * Nginx的安装 * * * ### LNMP架构介绍 LNMP = Linux + Ningx + Mysql + PHP ![lnmp](https://github.com/castiel-Lu/pic/blob/master
LNMP环境应用
企业LNMP环境应用 ========== > L=linux 丨 N=nginx 丨 A=apache 丨 P=php 丨 T=tomcat > > Nginx和Apache都是Web应用服务器 > > 相对来说,Nginx处理静态数据快,Apache处理动态快 > > Nginx对系统资源占用小,Apache资源占用高 > > Nginx用得是
LNMP环境网站搭建
怎样在lnmp环境中搭建网站思路: 1、lnmp环境是web服务器(后台)需要网站程序(前端)的支持例如ecshop、WordPress等。 2、安装lnmp后,把网站文件上传到/home/wwwroot/default(网页程序安装目录) 如果是LAMP,文件夹是/var/www/ 3、阿里云一键安装包位置如下: 如果使用的是默认值的话就在/h
Ubuntu 下安装深度音乐播放器
网上搜了一个安装深度音乐的有问题。 我自己又整理一个最新的2014版的深度音乐。 Linux环境:Ubuntu14.04 LTS 64bit 深度音乐都是DEB包安装。 下面,介绍如何安装深度音乐播放器。 需要python-deepin-utils、deepin-ui、gstreamer0.10-ffmpeg、python-deepin-g
CentOS 7.6 源码安装搭建LNMP架构(Nginx、MYSQL、PHP)
### LNMP架构 * LNMP是什么 * 搭建环境 * 搭建准备 * LNMP软件包 * 搭建nginx * 搭建mysql数据库 * 搭建php * 搭建Discuz!论坛 LNMP是什么 ------- LNMP:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。Nginx是一个高性能的HTTP和
Centos 8 LNMP环境部署zabbix监控
LNMP环境构建 -------- 本次构建LNMP环境采用源码的方式来进行构建 软件包 下载地址 nginx-1.19.2.tar.gz [http://nginx.org/download/](https://www.oschina.net/action/GoToLink?url=http%3A%2F%2Fnginx.org%2Fdownloa
Deepin标题栏太高的解决办法
Deepin标题栏太高的解决办法 如果你是用的默认的白色主题 ============= mkdir -p ~/.local/share/deepin/themes/deepin/light 如果你用的黑色主题 ========= mkdir -p ~/.local/share/deepin/themes/deepin/dark cd ~/.loc
LNMP架构之php
本文索引: * php-fpm的进程pool设置 * php-fpm慢执行日志 * open\_basedir参数设置 * php-fpm进程管理 * * * ### php-fpm的pool php-fpm.conf可以设置多个pool,在其中一个pool资源耗尽,会导致其他站点无法访问资源,报502错误。有必要把站点进行分离,分别
LNMP架构介绍 MySQL安装 PHP安装 Nginx介绍
LNMP架构介绍 -------- ### LNMP的简介: * LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。 * Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。 * Mysql是一个小型关系型数据库管理系统。 * PHP是一种在服务器端执行的嵌
LNMP环境+ 前后端项目部署+redis+redis扩展
LNMP 环境    (参照https://lnmp.org/install.html) -------------------------------------------- **wget -c http://soft.vpser.net/lnmp/lnmp1.4.tar.gz && tar zxf lnmp1.4.tar.gz && cd lnmp1
LNMP环境搭建Zabbix监控平台自动化安装脚本
vim auto\_install\_lnmp\_zabbix.sh #!/bin/bash #Auto Install LNMP Environment And Zabbix source /etc/rc.d/init.d/functions #Define Nginx path variables NGINX\_URL=[htt
Linux Centos7搭建web环境(LNMP)
本文内容是,如何在**Linux centos7**下快速搭建**LNMP**环境。虚拟机、实体机环境都可以。 另外,安装教程参考的是,下面这篇文章进行文字排版和内容扩充,感谢**hcchanqing**作者。 [CentOS6.2 yum安装配置LNMP服务器(Nginx+PHP+MySQL)](https://www.oschina.net/action
Linux下搭建PHP开发环境,Php
目前PHP项目开发几种比较流行的架构搭建中,LNMP在性能方面是最好的,正因为如此,使得LNMP架构逐渐流行起来,今天,前面提到了Nginx部署,由于项目实际环境的需要,今天就在说一下怎么部署PHP。 环境 CentOS 6.3 PHP 5.6 安装步骤 1\. 下载并安装PHP:先下载文件到对应的目录,然后解压文件。 [root@i