Ubuntu 下安装LEMP环境 实战
---恢复内容开始---
1.nginx的服务端的安装
打开命令行终端,在终端输入,sudo apt-get install nginx 回车即开始安装
kxlc-t@ubuntu:~$ sudo apt-get install nginx
[sudo] kxlc-t 的密码:
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
将会同时安装下列软件:
nginx-common nginx-core
建议安装:
fcgiwrap nginx-doc
下列【新】软件包将被安装:
nginx nginx-common nginx-core
升级了 个软件包,新安装了 个软件包,要卸载 个软件包,有 个软件包未被升级。
需要下载 kB 的归档。
解压缩后会消耗 , kB 的额外空间。
您希望继续执行吗? [Y/n] y
获取: http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 nginx-common all 1.10.3-0ubuntu0.16.04.2 [26.6 kB]
获取: http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 nginx-core amd64 1.10.3-0ubuntu0.16.04.2 [428 kB]
获取: http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 nginx all 1.10.3-0ubuntu0.16.04.2 [3,490 B]
已下载 kB,耗时 3秒 ( kB/s)
正在预设定软件包 ...
正在选中未选择的软件包 nginx-common。
(正在读取数据库 ... 系统当前共安装有 个文件和目录。)
正准备解包 .../nginx-common_1.10.3-0ubuntu0.16.04.2_all.deb ...
正在解包 nginx-common (1.10.-0ubuntu0.16.04.) ...
正在选中未选择的软件包 nginx-core。
正准备解包 .../nginx-core_1.10.3-0ubuntu0.16.04.2_amd64.deb ...
正在解包 nginx-core (1.10.-0ubuntu0.16.04.) ...
正在选中未选择的软件包 nginx。
正准备解包 .../nginx_1.10.3-0ubuntu0.16.04.2_all.deb ...
正在解包 nginx (1.10.-0ubuntu0.16.04.) ...
正在处理用于 ureadahead (0.100.-) 的触发器 ...
正在处理用于 ufw (0.35-0ubuntu2) 的触发器 ...
正在处理用于 systemd (-4ubuntu21.) 的触发器 ...
正在设置 nginx-common (1.10.-0ubuntu0.16.04.) ...
正在设置 nginx-core (1.10.-0ubuntu0.16.04.) ...
正在设置 nginx (1.10.-0ubuntu0.16.04.) ...
正在处理用于 systemd (-4ubuntu21.) 的触发器 ...
正在处理用于 ureadahead (0.100.-) 的触发器 ...
正在处理用于 ufw (0.35-0ubuntu2) 的触发器 ...
2. nginx服务设置,开启及状态的查看
kxlc-t@ubuntu:~$ sudo systemctl start nginx ------设置nginx服务开机自启动
kxlc-t@ubuntu:~$ sudo systemctl start nginx ------开启nginx服务
kxlc-t@ubuntu:~$ sudo systemctl status nginx.service --------查看nginx状态
● nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: en
Active: active (running) since 四 -- :: CST; 17min ago
Main PID: (nginx)
CGroup: /system.slice/nginx.service
├─ nginx: master process /usr/sbin/nginx -g daemon on; master_pro
└─ nginx: worker process 4月 :: ubuntu systemd[]: Starting A high performance web server and a
4月 :: ubuntu systemd[]: nginx.service: Failed to read PID from file /
4月 :: ubuntu systemd[]: Started A high performance web server and a r
4月 :: ubuntu systemd[]: Started A high performance web server and a r
lines -/ (END)
3. nginx版本的输出
kxlc-t@ubuntu:~$ nginx -v
nginx version: nginx/1.10. (Ubuntu)
4. 将www-data作为网站的根目录使用者,默认情况是root使用
kxlc-t@ubuntu:~$ sudo chown www-data:www-data /usr/share/nginx/html/ -R
kxlc-t@ubuntu:~$
注意:在安装nginx时候,默认创建用户www-data用户
kxlc-t@ubuntu:~$ cat /etc/passwd | grep www-data
www-data:x:::www-data:/var/www:/usr/sbin/nologin
5. 安装mariadb数据库
sudo apt-get install mariadb-server mariadb-client
6. 配置mariadb数据库
kxlc-t@ubuntu:~$ sudo mysql_secure_installation NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY! In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here. Enter current password for root (enter for none):
OK, successfully used password, moving on... Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation. You already have a root password set, so you can safely answer 'n'. Change the root password? [Y/n] Y -------设置root用户的密码
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success! By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment. Remove anonymous users? [Y/n] Y ------禁止匿名用户访问
... Success! Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network. Disallow root login remotely? [Y/n] Y -------不允许root用户远程登录
... Success! By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment. Remove test database and access to it? [Y/n] Y ------移除test数据库,并且禁止访问它
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success! Reloading the privilege tables will ensure that all changes made so far
will take effect immediately. Reload privilege tables now? [Y/n] Y -------重载私有权限表
... Success! Cleaning up... All done! If you've completed all of the above steps, your MariaDB
installation should now be secure. Thanks for using MariaDB!
7. 安装PHP 插件
sudo apt install php7. php7.-fpm php7.-mysql php-common php7.-cli php7.-common php7.-json
输出:
kxlc-t@ubuntu:~$ sudo apt install php7. php7.-fpm php7.-mysql php-common php7.-cli php7.-common php7.-json
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
下列软件包是自动安装的并且现在不需要了:
libevent-core-2.0-
使用'sudo apt autoremove'来卸载它(它们)。
将会同时安装下列软件:
php7.-opcache php7.-readline
建议安装:
php-pear
下列【新】软件包将被安装:
php-common php7. php7.-cli php7.-common php7.-fpm php7.-json
php7.-mysql php7.-opcache php7.-readline
升级了 个软件包,新安装了 个软件包,要卸载 个软件包,有 个软件包未被升级。
需要下载 , kB 的归档。
解压缩后会消耗 14.5 MB 的额外空间。
您希望继续执行吗? [Y/n] Y
获取: http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 php-common all 1:35ubuntu6.1 [10.8 kB]
获取: http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 php7.0-common amd64 7.0.28-0ubuntu0.16.04.1 [840 kB]
获取: http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 php7.0-json amd64 7.0.28-0ubuntu0.16.04.1 [16.9 kB]
获取: http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 php7.0-opcache amd64 7.0.28-0ubuntu0.16.04.1 [77.1 kB]
获取: http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 php7.0-readline amd64 7.0.28-0ubuntu0.16.04.1 [12.8 kB]
获取: http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 php7.0-cli amd64 7.0.28-0ubuntu0.16.04.1 [1,282 kB]
获取: http://us.archive.ubuntu.com/ubuntu xenial-updates/universe amd64 php7.0-fpm amd64 7.0.28-0ubuntu0.16.04.1 [1,288 kB]
获取: http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 php7.0 all 7.0.28-0ubuntu0.16.04.1 [1,290 B]
获取: http://us.archive.ubuntu.com/ubuntu xenial-updates/main amd64 php7.0-mysql amd64 7.0.28-0ubuntu0.16.04.1 [124 kB]
已下载 , kB,耗时 5秒 ( kB/s)
正在选中未选择的软件包 php-common。
(正在读取数据库 ... 系统当前共安装有 个文件和目录。)
正准备解包 .../php-common_1%3a35ubuntu6.1_all.deb ...
正在解包 php-common (:35ubuntu6.) ...
正在选中未选择的软件包 php7.-common。
正准备解包 .../php7.-common_7.0.28-0ubuntu0.16.04.1_amd64.deb ...
正在解包 php7.-common (7.0.-0ubuntu0.16.04.) ...
正在选中未选择的软件包 php7.-json。
正准备解包 .../php7.-json_7.0.28-0ubuntu0.16.04.1_amd64.deb ...
正在解包 php7.-json (7.0.-0ubuntu0.16.04.) ...
正在选中未选择的软件包 php7.-opcache。
正准备解包 .../php7.-opcache_7.0.28-0ubuntu0.16.04.1_amd64.deb ...
正在解包 php7.-opcache (7.0.-0ubuntu0.16.04.) ...
正在选中未选择的软件包 php7.-readline。
正准备解包 .../php7.-readline_7.0.28-0ubuntu0.16.04.1_amd64.deb ...
正在解包 php7.-readline (7.0.-0ubuntu0.16.04.) ...
正在选中未选择的软件包 php7.-cli。
正准备解包 .../php7.-cli_7.0.28-0ubuntu0.16.04.1_amd64.deb ...
正在解包 php7.-cli (7.0.-0ubuntu0.16.04.) ...
正在选中未选择的软件包 php7.-fpm。
正准备解包 .../php7.-fpm_7.0.28-0ubuntu0.16.04.1_amd64.deb ...
正在解包 php7.-fpm (7.0.-0ubuntu0.16.04.) ...
正在选中未选择的软件包 php7.。
正准备解包 .../php7.0_7.0.28-0ubuntu0.16.04.1_all.deb ...
正在解包 php7. (7.0.-0ubuntu0.16.04.) ...
正在选中未选择的软件包 php7.-mysql。
正准备解包 .../php7.-mysql_7.0.28-0ubuntu0.16.04.1_amd64.deb ...
正在解包 php7.-mysql (7.0.-0ubuntu0.16.04.) ...
正在处理用于 man-db (2.7.-) 的触发器 ...
正在处理用于 systemd (-4ubuntu21.) 的触发器 ...
正在处理用于 ureadahead (0.100.-) 的触发器 ...
正在设置 php-common (:35ubuntu6.) ...
正在设置 php7.-common (7.0.-0ubuntu0.16.04.) ... Creating config file /etc/php/7.0/mods-available/calendar.ini with new version Creating config file /etc/php/7.0/mods-available/ctype.ini with new version Creating config file /etc/php/7.0/mods-available/exif.ini with new version Creating config file /etc/php/7.0/mods-available/fileinfo.ini with new version Creating config file /etc/php/7.0/mods-available/ftp.ini with new version Creating config file /etc/php/7.0/mods-available/gettext.ini with new version Creating config file /etc/php/7.0/mods-available/iconv.ini with new version Creating config file /etc/php/7.0/mods-available/pdo.ini with new version Creating config file /etc/php/7.0/mods-available/phar.ini with new version Creating config file /etc/php/7.0/mods-available/posix.ini with new version
8. PHP插件服务的启动及状态的查看
kxlc-t@ubuntu:~$ sudo systemctl enable php7.0-fpm
kxlc-t@ubuntu:~$ sudo systemctl start php7.-fpm
kxlc-t@ubuntu:~$ sudo systemctl status php7.-fpm
● php7.-fpm.service - The PHP 7.0 FastCGI Process Manager
Loaded: loaded (/lib/systemd/system/php7.-fpm.service; enabled; vendor prese
Active: active (running) since 四 -- :: CST; 4min 33s ago
Process: ExecStartPre=/usr/lib/php/php7.-fpm-checkconf (code=exited, st
Main PID: (php-fpm7.)
Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/se
CGroup: /system.slice/php7.-fpm.service
├─ php-fpm: master process (/etc/php/7.0/fpm/php-fpm.conf)
├─ php-fpm: pool www
└─ php-fpm: pool www 4月 :: ubuntu systemd[]: Stopped The PHP 7.0 FastCGI Process Manager.
4月 :: ubuntu systemd[]: Starting The PHP 7.0 FastCGI Process Manager.
4月 :: ubuntu systemd[]: Started The PHP 7.0 FastCGI Process Manager.
4月 :: ubuntu systemd[]: Started The PHP 7.0 FastCGI Process Manager.
lines -/ (END)
第5步:创建一个Nginx虚拟主机
Nginx服务器就像Apache中的一个虚拟主机。 我们不会使用默认的服务器块,因为它不足以运行PHP代码,如果我们修改它,它变得一团糟。 因此,通过运行以下命令来删除启用了站点的目录中的默认符号链接。 (它仍然是可用的/etc/nginx/sites-available/default
)
sudo rm /etc/nginx/sites-enabled/default 然后在/etc/nginx/conf.d/目录下创建一个全新的服务器文件。
sudo vim /etc/nginx/conf.d/default.conf -------将以下文本粘贴到文件中。 将192.168.1.108替换为您的实际服务器IP地址。 server {
listen ;
listen [::]:;
server_name 192.168.1.108; ----ip地址替换为自己的ip地址
root /usr/share/nginx/html/;
index index.php index.html index.htm index.nginx-debian.html; location / {
try_files $uri $uri/ /index.php;
} error_page /.html;
error_page /50x.html; location = /50x.html {
root /usr/share/nginx/html;
} location ~ \.php$ {
fastcgi_pass unix:/run/php/php7.-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
include snippets/fastcgi-php.conf;
} location ~ /\.ht {
deny all;
}
}
PHP功能的测试
打开/usr/share/nginx/html/info.php , 输入下列代码:
<?php phpinfo()?>
在浏览器输入,ip-adress/info.php,即可出现下面页面;
如何安装PHP7.2
PHP7.2是PHP的最新稳定版本,于2017年11月30日发布,与PHP7.1相比,性能有所提升。 我们可以从Ondrej Sury添加PPA来在Ubuntu 17.10上安装PHP7.2。 那个人也是Certbot PPA的维护者。
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update
然后我们可以使用下面的命令安装PHP7.2和通用扩展。
sudo apt install php7.2 php7.2-fpm php7.2-mysql php-common php7.2-cli php7.2-common php7.2-json php7.2-opcache php7.2-readline php7.2-mbstring php7.2-xml php7.2-gd php7.2-curl
现在启动PHP7.2-FPM。
sudo systemctl start php7.2-fpm
在系统启动时启用自动启动。
sudo systemctl enable php7.2-fpm
检查其状态:
systemctl status php7.2-fpm
然后在/etc/nginx/conf.d/目录下创建一个全新的服务器文件。
sudo nano /etc/nginx/conf.d/default.conf
将以下文本粘贴到文件中。 将192.168.1.108替换为您的实际服务器IP地址。
server {
listen 80;
listen [::]:80;
server_name 192.168.1.108;
root /usr/share/nginx/html/;
index index.php index.html index.htm index.nginx-debian.html; location / {
try_files $uri $uri/ /index.php;
} error_page 404 /404.html;
error_page 500 502 503 504 /50x.html; location = /50x.html {
root /usr/share/nginx/html;
} location ~ \.php$ {
fastcgi_pass unix:/run/php/php7.1-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
include snippets/fastcgi-php.conf;
} location ~ /\.ht {
deny all;
}
}
Ubuntu 下安装LEMP环境 实战的更多相关文章
- 在Windows/Ubuntu下安装OpenGL环境(GLUT/freeglut)与跨平台编译(mingw/g++)
GLUT/freeglut 是什么? OpenGL 和它们有什么关系? OpenGL只是一个标准,它的实现一般自带在操作系统里,只要确保显卡驱动足够新就可以使用.如果需要在程序里直接使用OpenGL, ...
- Ubuntu下安装GTK环境
要生成C图形界面的程序,得安装GTK环境 安装GTK环境只要安装一个gnome-core-devel就可以了,里面集成了很多其他的包.除此之外还要转一些其他的 东西,如libglib2.0 ...
- ubuntu下安装lamp环境
使用普通用户来安装lamp环境: 1.安装apache: sudo apt-get install apache2
- ubuntu下安装boost环境
改自 http://blog.chinaunix.net/uid-12226757-id-3427282.html =============第一种: 也是最简单的:进入linux系统后,输入 # ...
- ubuntu下安装 java环境
步骤1:下载jdk 我选择的jdk版本文件: jdk-8u201-linux-x64.tar 官网下载链接 步骤2:创建单独的目录 sudo mkdir /usr/local/java 步骤3:将下载 ...
- ubuntu下安装LAMP环境遇到的一些小问题
0x00 今天在服务器上重新弄了一下lamp环境 安装的过程中遇到了不少小问题 记录一下解决的方案吧 服务器安装的是ubuntu 16.04.1 0x01 首先在用 apt-get install 安 ...
- Ubuntu下安装Java环境
1 Java 8 下载地址 http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk8-downloads-2133151-zhs. ...
- 【python-mysql】在ubuntu下安装python-mysql环境
1.先安装mysql sudo apt-get install mysql-server apt-get isntall mysql-client sudo apt-get install libmy ...
- ubuntu下安装phpstudy环境记录
下载一键安装包 下载地址:http://www.phpstudy.net/a.php/208.html 安装过程 开启终端 更改文件权限 chmod +x phpstudy 进行安装 ./phpstu ...
随机推荐
- 5、JDBC-元信息
DatabaseMetaData:描述数据库的元数据对象 获取所有数据库 import org.junit.jupiter.api.AfterEach; import org.junit.jupite ...
- 附录A Spring Boot应用启动器
spring Boot应用启动器基本的一共有44种,具体如下: 1)spring-boot-starter 这是Spring Boot的核心启动器,包含了自动配置.日志和YAML. 2)spring- ...
- 深入理解 BFC
W3C 规范中 BFC的定义: 浮动元素和绝对定位元素,非块级盒子的块级容器(例如 inline-blocks, table-cells, 和 table-captions),以及overflow值不 ...
- filebeat多个key
filebeat.prospectors:- type: log paths: - D:\logs\iis\W3SVC2\*.log exclude_lines: ['^#'] multiline: ...
- git使用详细过程
1. Git概念 1.1. Git库中由三部分组成 Git 仓库就是那个.git 目录,其中存放的是我们所提交的文档索引内容,Git 可基于文档索引内容对其所管理的文档进行内容追踪,从而 ...
- Study 2 —— 图片热点区域
标记<map>和<area><img src="图片" usemap="#名称"><map id="#名称& ...
- Redis与Mysql数据同步
后台定时任务,定时刷新Redis中信息到数据库.(即Job:定时任务)
- 2 Player and N Coin
class Solution { public void printChoices(int[] A, int[][] C) { System.out.println("硬币列表如下:&quo ...
- Java——关于num++和++num
public class num_add_add { public static void numAdd(){ int num = 10; int a = num++; System.out.prin ...
- Flask最强攻略 - 跟DragonFire学Flask - 第六篇 Flask 中内置的 Session
Flask中的Session非常的奇怪,他会将你的SessionID存放在客户端的Cookie中,使用起来也非常的奇怪 1. Flask 中 session 是需要 secret_key 的 from ...