ubuntu http错误_在Ubuntu上搭建LNMP(Linux Nginx MySQL PHP)网站运行环境

看到这里,我建议没有看过我前面文章的朋友看一下。

VPS?云主机?自家服务器,启动

服务器系统哪家强 Ubuntu Server与CentOS

服务器虚拟化与ESXi安装

LNMP,即Linux Nginx MySQL PHP,是搭建动态网站的一套常用环境。还有一种叫法是LEMP。

The E in LEMP comes from the pronunciation of Nginx: Engine-X (en-juhn-ecks).The importance is the sound of the first letter rather than its written representation.Besides, LEMP is actually pronounceable and doesn’t sound like you’re just reciting letters of the alphabet.即Nginx的原意是Engine-X,取LEMP能够正确表达Nginx的读音,而且LEMP本身也可以作为一个单词发音,而LNMP则不能。

此外还有用Apache来处理HTTP请求的LAMP环境。关于Nginx和Apache的区别和优缺点在另一篇文章进行了讨论

Nginx与Apache-HTTP引擎哪家强

73d935274e431ecff66e9661fc4a5c67.png

这里把注意力集中在搭建操作本身,不再过多叙述。

Linux

Linux我选用了Ubuntu Server 18.04 LTS,也可以选用centOS。关于Ubuntu Server和CentOS的讨论参见这里。

服务器系统哪家强 Ubuntu Server与CentOS

acf9d6e329309e8ea54f09b4a0afcd38.png

Nginx

得益于Ubuntu出色的软件包管理软件apt-get,在Ubuntu上安装nginx非常简单。

sudo apt-get updatesudo apt-get install nginx

安装完成之后Nginx会自动启动。通过浏览器访问自己的ip,看到以下画面说明配置成功。

a22c2ff51e8af0c78cc44db8bcaa03df.png

此时服务器已经可以响应http通信了。

注意要通过IP进行访问,如果使用域名的话在局域网内通过域名访问可能会出现问题,我在另一篇文章中解释了原因和解决方法。

只缘身在此山中?内网域名解析问题

8a7e6ee2d34a9c7047e79753ae2ed95e.png

Nginx配置文件

Nginx的配置文件模板保存在/etc/nginx/sites-available/default,按照nginx的设计,配置并启动一个web服务分两步:

  • 在sites-available中给每个web服务创建一个单独的配置文件
  • 在/etc/nginx/sites-enabled中为想要启动的web服务创建链接。

假设想要启动服务的网站域名是example.com,首先通过default模板在/sites-avialable下创建文件。

sudo cp /etc/nginx/sites-available/deault /etc/nginx/sites-available/example.com

创建完成后按照以下步骤编辑文件中的server{}代码块。

  1. 因为wordpress是基于php的,所以在默认起始页面中添加index.php。
  2. 将server_name指定为自己的域名
  3. 把php部分的代码注释取消掉,启用php
  4. 忽略.htaccess文件

修改完之后应该是这样:

server{    listen 80 default_server    listen [::]:80 default_server    root /var/www/html;    index index.php index.html index.htm index.nginx-debian.html;    server_name example.com    location / {        try_files $uri $uri/ =404;    }    location ~ .php$ {        include snippets/fastcgi-php.conf;        fastcgi_pass unix:/run/php/php7.2-fpm.sock;    }    location ~ /.ht {        deny all;    }}

注意factcgi_pass后的php版本要修改成自己的环境中实际安装的版本。我在ubuntu18.04下配置的时候nginx的default文件中给出的是php7.0-fpm.sock,而实际上通过apt安装的php是7.2。安装wordpress时出现了形如connect() to unix:/run/php/php7.0-fpm.sock failed (11: Resource temporarily unavailable) while connecting to upstream的错误信息。

最后在sites-available中创建链接启用配置,重启nginx。

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/example.comsudo service nginx restart

MySQL

sudo apt-get install mysql-server

安装完成之后为wordpress创建一个数据库和一个用户。如果要在不同目录下安装多个wordpress也是同理,为每一个wordpress创建一个独立的数据库和用户即可。假设要创建的数据库信息如下

数据库名wordpressDB用户名wpuser密码password

sudo mysql -u root -pcreate database wordpressDB;create user 'wpuser'@'localhost' identified by 'password';grant all on wordpressDB.* to 'wpadmin'@'localhost'

之后安装wordpress的时候会要求输入这些信息。

PHP

sudo apt-get install php-fpm php-mysql

这样动态网站所需要的环境就搭建完成了。下一节:安装WordPress。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值