在Ubuntu上搭建LNMP(Linux Nginx MySQL PHP)网站运行情况
看到这里,我建议没有看过我前面文章的朋友看一下。服务器体系哪家强 Ubuntu Server与CentOS
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引擎哪家强
https://p3-sign.toutiaoimg.com/pgc-image/32e3a763c8e24db7a0dc0dd85b709812~tplv-tt-large.image?x-expires=1970206041&x-signature=bH2EW%2BcH%2BQnORitmeLILY1qg%2BFQ%3D
这里把注意力会合在搭建操作自己,不再过多叙述。
Linux
Linux我选用了Ubuntu Server 18.04 LTS,也可以选用centOS。关于Ubuntu Server和CentOS的讨论参见这里。
服务器体系哪家强 Ubuntu Server与CentOS
https://p3-sign.toutiaoimg.com/pgc-image/fcf9b11986aa4839830785c324da3dc2~tplv-tt-large.image?x-expires=1970206041&x-signature=pTlImu%2FRrKhCzK%2F3NCYwdKRQbss%3D
Nginx
得益于Ubuntu精彩的软件包管理软件apt-get,在Ubuntu上安装nginx非常简单。
sudo apt-get updatesudo apt-get install nginx安装完成之后Nginx会主动启动。通过欣赏器访问自己的ip,看到以下画面阐明配置乐成。
https://p3-sign.toutiaoimg.com/pgc-image/f3da1e9ac2cc435aac994a182e8140db~tplv-tt-large.image?x-expires=1970206041&x-signature=ocfJlXBiahjhdMbEGSokkKi9Q78%3D
此时服务器已经可以响应http通信了。
注意要通过IP进行访问,如果使用域名的话在局域网内通过域名访问可能会出现题目,我在另一篇文章中解释了原因息争决方法。
只缘身在此山中?内网域名解析题目
https://p3-sign.toutiaoimg.com/pgc-image/a4038adaf6154a4e92bbacdf74c2428a~tplv-tt-large.image?x-expires=1970206041&x-signature=05SX7NaEOkw6RS1%2Bvkd0%2F1ypg38%3D
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{}代码块。
[*]因为wordpress是基于php的,以是在默认起始页面中添加index.php。
[*]将server_name指定为自己的域名
[*]把php部分的代码注释取消掉,启用php
[*]忽略.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 restartMySQL
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。
页:
[1]