看了好多人的博客,有的不全 or 有问题,整理了一下,适合小白
新手先整理几个小问题
1.为啥使用 Linux 搭建服务器?
一个是因为主流的云服务器太贵,买个低配的容易崩,听说 Linux 比较稳定,之后
2.PHP 和 Apache 啥关系?
一说到 ph6 \ K H 2 Q r ap, 很多人会本能地想到 apache, 其 php 和 apache 没有半毛钱的关系
php 是语言, 而apache是web服务器
3.What is LAMP?
LAMP:Linux+Apache+Mysql/MariaDB+Perl/PHP/Python
4.啥是 Linux 包管理器,为啥我的用不了?
(1)Linux 的常用包管理器 apt rpm yum 安装系统时是没有的,需要自己安装,就类似 windows 里面的添加/删除程序
(2)Ubuntu 默认的包管理器为 apt,而 rpm,yum 是 Redhat 的软件包管理器
(3)Ubuntu 绝大多数用 apt 就够了,当然也可以用 rpm yum 包管理器
1.安装 rpm
apt install rpm
2.安装 yum
apt install yum
5.怎么查看 apt 管理的所有包,使用命令:
apt list
怎么查看 apt 所有已经安装的包,使用命令:
apt list --installed
1.打开 Ubuntu 终端,使用下面速度命令进入管理员权限
sudo su
输入系统的密码
2.Ubuntu 上安装 mysql 非常简单只需要几条命令就可以完成
apt-get install mysql-server
apt-get install mysql-client
apt-get install libmysqlclient-dev
执行命令时会提示输入 Y 表示同意
3.Ubuntu 安装 net-tools
apt install net-tools
4.检查是否安装成功
sudo nT L = $ ) E letstat -tap | grep mysql
如果看到有 mysql 的socket处于 listj x ^en 状态则表示安装成功
5.登陆mysql数据库可以通过如下命令:
mysql -u root -p
-ux { ] 表示选择登陆的用户名, -p 表示登陆的用户密码,上面命令输入之后会提示输入密码,此时输入密码就可以登录到 mysql
(默认会有一个 root 用户,密码为空)
6.然后就可以查看当前) U ] O的数据库
show databases;
7.然后就是 MySQL 的一些操作了
分享我整理的 MySQL 常用命令:MySQL 常用命令大全
1.Ubuntu 安装 Apache2
apt3 w O B u Q + - e-get install apache2
输入 Y 同意
2.检查是否安装成功,在浏览器输入地址:
http:localhost
截图:
3.apache 的默认的一些目录
默认文档根目录是在 ubuntu 上的 /var/6 ` l [ g 3 * 5 nwww 目录
配置文件是 / etc/apache2/apache2.conf
配置存储在的子目录在/etc/apache2 目录
4.我怎么手动开启/关闭 Apache 服务器呢?
(一般 Apache 服务器会自动启动)
(1)重启 Apache 服务器(常用)
sudo /etc/init.d/apache2 restart
(2)开启 Apache 服务器
sudo /etc/init.d/apache2 start
(3)关闭 Apache 服务器
sudo /etc/init.d/apache2 stop
1.这里安装比较多,也是为了以后少一些麻烦,使用命令
sudo apt-get install software-properties-common
sudo addi 3 R + ! O _ g X-apt-repository ppa:ondrej/php &&amZ 6 Up; sudo apt-get update
sudo apt-get -y install php7.2
# 如果之前有其他版本PHP,在这边禁用掉
sudo a2dismod php5
sudo a2enmod php7.2
# 安装常用扩展(建议安装)
sudo apt-get -y install php7.2-fpm php7.2-mysql php7.2-curl php7.2-json php7.2-mbstring php7.2-xml php7.2-intl php7.2-odbc php7.2-cgi
# 安装其他扩展(按需要安装)
sudo apt-get install php7.2-gd
sudo apt-get install php7.2-soap
sudo apt-get install php7.2-gmp
sudo apt-get install php7.2-pspell
sudo apt-get install php7.2-bcmath
sudo apt-get install php7.2-enchant
sudo apt-get install php7.2-imap
sudo apt-get install php7.2-ldap
sudo apt-get install php7.2-opcache
sudo apt-get install php7.2-readline
sudo apt-get install php7.2-sqlite3
sudo apt-get install php7.2-xmlrpc
sudo apt-get install php7.2-bz2
sudo apt-get install php7.2-interbase
sudo apt-get install php7.2-pgsql
sudo apt-get install php7.2-recode
sudo apt-get install php7.2-sybase
sudo apt-get install php7.2-xsl
sudo apt-get install php7.2-dba
sudo apt-get install php7.2-phpdbg
sudo apt-get install php7.2-snmp
sudo apt-get install php7.2-tidy
sudo apt-get install php7.2-zip
然后静静等待安装完成
1.什么是 Nginx ?
Nginx (engine x) 是一个高性能的 HTTP 和反向代理服务
2.不太懂,那 nginx 和 php 有什么关系?
php 是一门编程语言,但是只有 php 的话,你的 php 只能在你的服务器里的运行,比如你用 php 写了一个可以通过身高计算人的标准体重的程序,虽然这个程序可以在服务器运行,但是他还不能和客户交互,因为客户现在还不能访问你的 php 程序,他也不会去下载你的 php 程序到自己电脑里运行,他只想默默的通过浏览器告诉你他的身U 5 ! 3 1 =高,然后得到这个程- B j } t 8 - % P序返回的体重,那么谁来得到这个用户发送过来的请求呢,又怎么把请求数据转发给对应的 php 程序呢 ?
nginx 就是为了解决上述问题而出现的,nginx 是一个已经写好的程序,需要安装配置,作用是专门接收处理客户通过浏览器等发送来的请求,并和你写的 php 程序交互,就这么简单,但是 nginx 不仅可以和你写的 php 程序交互,也可以和你写的其他程序交互,比如 C,python,因为不是所有人O = ! d ? 9 2都用 php 来写 web 程序,简单点说 nginx 是一个可以监听处理 http 请求(浏览器请求)的程序,会装会配置,知道流程就可以用了,当然深入了解下就更好了。
这样的话,nginx 就可以比喻处理成处理 http 请求业务的部门,是服务器和外部千千万万浏览器等客户端进行沟通的关口。php 是服务器内部一个数据加工部门,可以加工生成各种页面。客户端发送的 http 请求历经层层路由到达你的服务器,然后被nginx 逮个正着,统一听候 nginx 大人的调度,如果客户请求的是其他静态资源,比如 txt 文本,图片等,nginx 直接找到该资源,并返回给客户端,如果客户请求的是 php 程序,就找到对应的 php 程序,然后把客户数据给这个程序,让这个 php 程序运行一遍,再把这个程序运行的结果返回给客户端。
当然 nginx 和 php 具体交互并没有那么简单,还需要保证规范和高效,在数据交换上,需遵守统一的规范,这个好理解,大家统一数据格式才不会乱套,效率才会更高。