Node.js 使用

固件、系统、程序、功能的安装方法

BISO刷机

https://www.bilibili.com/video/BV1rQ4y1M7r5?p=1

 

序号

 

工具

 

应用

 

备注

 

 

 

1

 

BIOS工具

 

G(接触主板BIOS刷写保护)

A(备份原BIOS固件)

D(刷入BIOS固件)

 

需要找软件

 

 

 

2

 

 

 

 

 

 

 

 

 

https://www.bilibili.com/video/BV1jf4y1S7XJ?p=1

 

序号

 

工具

 

应用

 

备注

 

 

 

1

 

HP优盘格式化工具

 

制作DOS启动盘

 

已有

 

 

 

2

 

PLASHEFI

 

 

 

 

 

 

 

fptw.exe -d image.bin

安装轻 App

非托管网络应用程序

免受Web 2.0垄断平台

示例应用程序

Node.js 本地开发环境

如何安装Node.js并创建本地开发环境

Node.js是一个通用编程的JavaScript平台,允许用户快速构建网络应用程序。通过在前端和后端利用JavaScript,Node.js使开发更加一致和集成。

要配置您的开发环境,以便您可以开始构建Node.js应用程序。选择平台的教程。

如何在macOS上安装Node.js并创建本地开发环境

Node.js是一个开源的JavaScript运行时环境,可以轻松构建服务器端应用程序。这也是为现代JavaScript框架的许多客户端开发工具提供动力的运行时。在本教程中,您将设置Node.js...

如何在CentOS 8上安装Node.js

在本指南中,我们将向您展示在CentOS 8服务器上安装Node.js的三种不同方式:使用dnf从CentOS的默认AppStream存储库安装nodejs包;安装node版本管理器nvm,并使用它来安装和管理多个版本的node;从源头编译和安装node。 

如何在Ubuntu 18.04上安装Node.js
Node.js是一个通用编程的JavaScript平台,允许用户快速构建网络应用程序。在本指南中,我们将向您展示如何在Ubuntu 18.04服务器上开始使用Node.js。
如何在Debian 10上安装Node.js
Node.js是一个通用编程的JavaScript平台,允许用户快速构建异步网络应用程序。通过在前端和后端利用JavaScript,Node.js可以使Web应用程序开发更加一致...
如何在Ubuntu 16.04上安装Node.js
Node.js是一个流行的Javascript平台,可用于快速轻松地构建Web应用程序。在本指南中,我们将帮助您在Ubuntu 16.04服务器上使用Node.js启动和运行。
如何在Debian 9上安装Node.js
Node.js是一个通用编程的JavaScript平台,允许用户快速构建网络应用程序。

在本指南中,我们将向您展示如何在Debian 9服务器上开始使用Node.js。

如何在Debian 8上安装Node.js

Node.js是一个通用编程的JavaScript平台,允许用户快速构建网络应用程序。通过在前端和后端利用JavaScript,开发可以更加一致,并在同一系统中设计。在这个...

如何在CentOS 7服务器上安装Node.js
Node.js是一个流行的Javascript平台,用于服务器端编程。在本指南中,我们将讨论在CentOS 7服务器上安装Node.js的几种不同方法。
如何在Ubuntu 20.04上安装Node.js

在本指南中,我们将向您展示在Ubuntu 20.04服务器上安装Node.js的三种不同方式:使用apt从Ubuntu的默认软件存储库安装nodejs软件包,使用apt与备用PPA软件存储库安装特定版本的nodejs软件包,以及安装Node版本管理器并使用它安装和管理多个版本的Node.js

 

LAMP 服务器搭建

本文是在独立服务器或VPS中使用CentOS操作系统搭建LAMP详细完整教程,适合初学者,本文会保持更新。

第一部分

LAMP 是Linux、Apache、MySQL/MariaDB、PHP的首字母缩写,也就是在一台Linux服务器上安装带有PHP和MySQL/MariaDB支持的Apache网站服务器。

1. 说明

本文以VPS主机为例,操作系统是CentOS 7,独立服务器操作方法与VPS相同。域名请做好DNS指向。

2. 安装 Apache

Apache 已经包含在 CentOS 软件包中了,一般来说,系统已经默认安装完毕。如果没有,你可以使用下面的命令轻松安装它:

yum -y install httpd

系统会提示已需要安装的版本并自动安装,如有更新,系统会显示需要更新的版本。

安装 Apache 后,你可以:
启动Apache:

systemctl start httpd.service

停止Apache:

systemctl stop httpd.service

重启Apache:

systemctl restart httpd.service

设置开机启动Apache:

systemctl enable httpd.service

设置开机不启动Apache:

systemctl disable httpd.service

检查Apache运行状态:

systemctl status httpd.service

现在可以在浏览器中打开 http://domain.com(你的域名) 或 http://ip地址(VPS的IP地址),就可以看到 Apache Test Page 页面。
如果是本地服务器,现在可以在浏览器中打开 http://localhost 或 http://127.0.0.1 ,看到 Apache Test Page 页面。

修改配置文件:

vi /etc/httpd/conf/httpd.conf

可以修改侦听端口 80 -> 8080 :

#Listen 12.34.56.78:80
Listen 8080

你可以重启动Apache服务:

systemctl restart httpd.service

接着继续再了解一下 apache 这个版本的结构,这有助于我们配置应用:

/etc/httpd/conf/httpd.conf :最主要的配置文件;
/etc/httpd/conf.d/*.conf :这个是 CentOS 的特色,如果你不想修改原始配置文件 httpd.conf 的话,其他配置的在此独立配置,启动 apache 时,这个文件就会被读入到主要配置文件;
/usr/lib/httpd/modules :apache 支持很多的模块,您想要使用的模块默认都放置在此目录;
/var/www/html :这里是 CentOS 默认的“首页”目录;
/var/www/error :默认的系统错误信息,主机设置错误或浏览器端要求的数据错误,在浏览器上出现的错误提示就以这里的信息为主;
/var/www/icons :提供 apache 的一些小图标;
/var/www/cgi-bin :默认一些可执行的 CGI 程序放置的目录;
/var/log/httpd :日志文件目录,这里的文件很容易变的很大,需要提供足够的空间;
/usr/sbin/apachectl :这是 Apache 的主要执行文件,这个执行文件其实是 shell script ,它可以主动检测系统上的一些设置值,好让您启动 Apache 时更简单;
/usr/sbin/httpd :这是主要的 apache 的二进制文件;
/usr/bin/htpasswd :当您想登陆某些网页时,需要输入账号与密码。那么Apache本身就提供一个最基本的密码保护方式,该密码的产生就是通过这个命令实现的。

3. 安装 MySQL/MariaDB

执行下面的命令来安装 MySQL/MariaDB:

yum -y install mariadb mariadb-server

然后启动 MySQL/MariaDB 服务器:
启动MySQL/MariaDB:

systemctl start mariadb

停止MySQL/MariaDB:

systemctl stop mariadb

重启MySQL/MariaDB:

systemctl restart mariadb

设置开机启动MySQL/MariaDB:

systemctl enable mariadb

运行下面的命令来为 root 用户设置一个密码(否则的话任何人都可以访问你的MySQL数据库!):

mysqladmin -u root -p password 12345678

Enter password: 输入root密码以确认修改,一般root初始密码为空(上面的12345678为你想要的密码)

重启MySQL/MariaDB:

systemctl restart mariadb

MySQL 有几个重要目录与文件:
/etc/my.cnf :这是Mysql的配置文件,包括 mysql 数据库的优化;

/usr/lib/mysql :这个目录是 MySQL 数据库放置的位置,务必在备份时将此目录完整的备份下来。

4. 安装 PHP

使用下列命令来安装 PHP 和 Apache 的 PHP 模块:

yum -y install php

然后重新启动 Apache :

systemctl restart httpd.service

这个安装比较简单,完成后可以测试一下。Apache 网站的默认文档的路径是 /var/www/html ,在这个目录里上传一个PHP探针,并且在浏览器中调用 http://localhost/env.php 将会显示很多 PHP5 的安装信息。

PHP 正在工作,你会看到很多模块都可以在 PHP 中使用了,而 MySQL 并没有在这里被列出来,这意味着 PHP 并不支持MySQL,你还需要安装 php-mysql 这个包。

5. 安装PHP组件,使 PHP5 支持 MySQL

yum search php

选择你所需的安装包,然后通过下列命令安装他们:

yum -y install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash

检查系统更新,然后安装更新。

yum -y check-update
yum -y update

如果需要,可以编辑php.ini,一般不用改动

vi /etc/php.ini

然后重新启动 Apache :

systemctl restart httpd.service

在浏览器中重新加载 http://localhost/env.php 这个页面,你就能看到刚刚安装的 PHP和MySQL 模块。

6. 设置 Apache 和 MySQL 开机启动

systemctl enable httpd.service
systemctl enable mariadb

注意:“设置 Apache 和 MySQL 开机启动”这一步一定要做,否则是访问不了你的网站的。

OK,一个 LAMP 服务器搭建完成。

 

第二部分

1.安装phpMyAdmin

yum -y install phpMyAdmin

2.使用putty登陆SSH

这是给网站根目录赋予写权限

chown root:root /var/www/html/ -R

或者

chmod -R 777 /var/www/html/

安装zip文件解压工具

yum -y install unzip

第三部分

实例:安装WordPress设置固定链接教程
1.安装Wget

yum -y install wget

2.进入虚拟机所在目录

cd /var/www/html

3.下载WordPress到服务器并解压

wget http://wordpress.org/latest.tar.gz
tar zxvf latest.tar.gz

4.修改WordPress目录属性

chmod -R 777 /var/www/html/wordpress
chgrp -R ftp /var/www/html/wordpress
chown -R www /var/www/html/wordpress

5.修改apache2的虚拟机配置文件(位于/etc/httpd/conf/httpd.conf),在<VirtualHost *:80>和</VirtualHost>中间加入下面代码

 

<Directory “/var/www/html”>
Options FollowSymLinks IncludesNOEXEC Indexes
DirectoryIndex index.html index.htm index.php
AllowOverride all
Order Deny,Allow
Allow from all
</Directory>

6.Apache重新加载配置:

systemctl restart httpd.service

提醒一下,本教程未提及FTP服务的安装,如果需要可以安装vsftpd或pureftpd,过程不再赘述。因为我自己觉得使用WinSCP的SFTP就够用了,没有必要安装过多的服务消耗系统资源。

LAMP堆栈:Linux、Apache、MySQL、PHP

如何在CentOS 7上安装Linux、Apache、MySQL、PHP(LAMP)

导言

“LAMP”堆栈是一组开源软件,通常一起安装,以使服务器能够托管动态网站和Web应用程序。这个术语实际上是代表Linux操作系统的首字母缩略词,带有Apache Web服务器。站点数据存储在MySQL数据库中(使用MariaDB),动态内容由PHP处理。

在本指南中,我们将在CentOS 7 VPS上安装LAMP堆栈。CentOS将满足我们的首要要求:Linux操作系统。

先决条件

在开始使用本指南之前,您应该在服务器上设置一个单独的非根用户帐户。您可以通过在CentOS 7的初始服务器设置中完成步骤1-4学习如何做到这一点。

第一步——安装Apache

Apache Web服务器是目前世界上最受欢迎的Web服务器,这使得它成为托管网站的绝佳默认选择。

我们可以使用CentOS的软件包管理器yum轻松安装Apache。软件包管理器允许我们从CentOS维护的存储库轻松安装大多数软件。您可以在这里了解有关如何使用yum的更多信息。

出于我们的目的,我们可以从键入以下命令开始:

sudo yum install httpd

由于我们使用sudo命令,这些操作使用根权限执行。它会要求您提供普通用户的密码来验证您的意图。

之后,将安装您的网络服务器。

安装后,您可以在VPS上启动Apache:

sudo systemctl start httpd.service

您可以立即进行抽查,通过在网页浏览器中访问服务器的公共IP地址来验证一切是否按计划进行(如果您还没有这些信息,请参阅下一个标题下的注释,以了解您的公共IP地址):

http://your_server_IP_address/

您将看到默认的CentOS 7 Apache网页,该网页用于信息和测试目的。它应该看起来像这样:

CentOS 7 Apache默认值

如果您看到此页面,则您的Web服务器现在已正确安装。

您最不想做的事情是启用Apache从启动开始。使用以下命令进行操作:

sudo systemctl enable httpd.service

如何查找服务器的公共IP地址

如果您不知道服务器的公共IP地址是什么,您可以通过多种方式找到它。通常,这是您用于通过SSH连接到服务器的地址。

从命令行中,您可以通过几种方式找到这个。首先,您可以使用iproute2工具通过键入以下内容来获取您的地址:

ip addr show eth0 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//'

这将给你一两行回。它们都是正确的地址,但您的计算机可能只能使用其中一个,所以请随时尝试每个地址。

另一种方法是使用外部方来告诉你如何看待你的服务器。您可以通过询问特定服务器您的IP地址来做到这一点:

curl http://icanhazip.com

无论您使用哪种方法来获取IP地址,都可以将其输入网页浏览器的地址栏以访问服务器。

第二步——安装MySQL(MariaDB)

既然我们已经安装并运行了Web服务器,是时候安装MySQL下拉式替代品MariaDB了。MariaDB是MySQL关系数据库管理系统的社区开发的分叉。基本上,它将组织和提供对数据库的访问,我们的网站可以存储信息。

同样,我们可以使用yum来获取和安装我们的软件。这次,我们还将安装一些其他“助手”软件包,以帮助我们让组件相互通信:

sudo yum install mariadb-server mariadb

安装完成后,我们需要使用以下命令启动MariaDB:

sudo systemctl start mariadb

现在我们的MySQL数据库正在运行,我们希望运行一个简单的安全脚本,该脚本将删除一些危险的默认值,并稍微锁定对我们数据库系统的访问。通过运行以下方式启动交互式脚本:

sudo mysql_secure_installation

提示将要求您提供当前的根密码。由于您刚刚安装了MySQL,您很可能没有MySQL,所以按回车键将其留空。然后提示将询问您是否要设置根密码。继续输入Y,并按照说明操作:

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 authorization.

New password: password
Re-enter new password: password
Password updated successfully!
Reloading privilege tables..
 ... Success!

对于其余问题,您只需通过每个提示点击“ENTER”键即可接受默认值。这将删除一些示例用户和数据库,禁用远程根登录,并加载这些新规则,以便MySQL立即尊重我们所做的更改。

您最不想做的事情是启用MariaDB启动。使用以下命令进行操作:

sudo systemctl enable mariadb.service

此时,您的数据库系统现已建立,我们可以继续。

第三步——安装PHP

PHP是我们设置的组成部分,它将处理代码以显示动态内容。它可以运行脚本,连接到我们的MySQL数据库以获取信息,并将处理后的内容交给我们的Web服务器进行显示。

我们可以再次利用yum系统来安装我们的组件。我们还将包含php-mysql软件包:

sudo yum install php php-mysql

这应该可以毫无问题地安装PHP。我们需要重新启动Apache Web服务器,才能与PHP配合使用。您可以通过键入以下内容来做到这一点:

sudo systemctl restart httpd.service

安装PHP模块

为了增强PHP的功能,我们可以选择安装一些额外的模块。

要查看PHP模块和库的可用选项,您可以在系统中键入以下内容:

yum search php-

结果都是您可以安装的可选组件。它将为您提供每个的简短描述:

php-bcmath.x86_64 : A module for PHP applications for using the bcmath library
php-cli.x86_64 : Command-line interface for PHP
php-common.x86_64 : Common files for PHP
php-dba.x86_64 : A database abstraction layer module for PHP applications
php-devel.x86_64 : Files needed for building PHP extensions
php-embedded.x86_64 : PHP library for embedding in applications
php-enchant.x86_64 : Enchant spelling extension for PHP applications
php-fpm.x86_64 : PHP FastCGI Process Manager
php-gd.x86_64 : A module for PHP applications for using the gd graphics library
. . .

要了解有关每个模块功能的更多信息,您可以搜索互联网,也可以通过键入以下内容查看软件包中的长描述:

yum info package_name

将有很多输出,有一个名为Description的字段,该字段将对模块提供的功能进行更长的解释。

例如,要了解php-fpm模块的作用,我们可以键入以下内容:

yum info php-fpm

除了大量其他信息外,您还会发现如下所示:

. . .
Summary     : PHP FastCGI Process Manager
URL         : http://www.php.net/
License     : PHP and Zend and BSD
Description : PHP-FPM (FastCGI Process Manager) is an alternative PHP FastCGI
            : implementation with some additional features useful for sites of
            : any size, especially busier sites.

如果经过研究,您决定要安装软件包,您可以像我们一样使用yum install命令来安装软件。

如果我们决定php-fpm是我们需要的东西,我们可以键入:

sudo yum install php-fpm

如果您想安装多个模块,您可以按照yum install命令列出每个模块,用空格分隔,如下所示:

sudo yum install package1 package2 ...

此时,您的LAMP堆栈已安装和配置。不过,我们仍然应该测试我们的PHP。

第四步——在Web服务器上测试PHP处理

为了测试我们的系统是否为PHP正确配置,我们可以创建一个非常基本的PHP脚本。

我们将称此脚本为info.php。为了让Apache找到文件并正确提供服务,它必须保存到一个非常特定的目录中,该目录被称为“网络根”。

在CentOS 7中,此目录位于/var/www/html/。我们可以通过键入以下内容在该位置创建文件:

sudo vi /var/www/html/info.php

这将打开一个空白文件。我们希望在文件中放置以下文本,即有效的PHP代码:

<?php phpinfo(); ?>

完成后,保存并关闭文件。

如果您正在运行防火墙,请运行以下命令以允许HTTP和HTTPS流量:

sudo firewall-cmd --permanent --zone=public --add-service=http 
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

现在,我们可以测试我们的Web服务器是否可以正确显示PHP脚本生成的内容。要尝试一下,我们只需要在网页浏览器中访问此页面。您将再次需要服务器的公共IP地址。

您要访问的地址是:

http://your_server_IP_address/info.php

您来的页面应该如下所示:

CentOS 7默认PHP信息

本页面基本上从PHP的角度为您提供有关服务器的信息。它有助于调试并确保正确应用您的设置。

如果成功,那么您的PHP正在正常工作。

您可能想在测试后删除该文件,因为它实际上可能会向未经授权的用户提供有关服务器的信息。要完成此操作,您可以键入以下内容:

sudo rm /var/www/html/info.php

如果您以后需要再次访问此信息,您可以随时重新创建此页面。

结论

现在您安装了LAMP堆栈,您有很多下一步该怎么做的选择。基本上,您安装了一个平台,允许您在服务器上安装大多数类型的网站和网络软件。

LEMP堆栈:Linux、Nginx、MySQL、PHP

如何在CentOS 7上安装Linux、Nginx、MySQL、PHP(LEMP)堆栈

导言

LEMP软件堆栈是一组开源软件,通常一起安装,以使服务器能够托管动态网站和Web应用程序。这个术语实际上是代表Linux操作系统的首字母缩略词,带有ENginx Web服务器(取代了LAMP堆栈的Apache组件)。站点数据存储在基于MySQL的数据库中,动态内容由PHP处理。

在本指南中,我们将使用MariaDB作为数据库管理系统,在CentOS 7服务器上安装带有PHP 7.4的LEMP堆栈。MariaDB可以作为原始MySQL服务器的下拉式替代品,这在实践中意味着您可以切换到MariaDB,而无需在应用程序中进行任何配置或代码更改。

先决条件

在开始使用本指南之前,您应该在服务器上设置一个单独的非根用户帐户。您可以通过在CentOS 7初始服务器设置中完成步骤1-4学习如何做到这一点。

第1步——安装Nginx

为了向我们的网站访问者显示网页,我们将使用高性能网络服务器Nginx。要获得最新的Nginx版本,我们将首先安装EPEL存储库,其中包含CentOS 7操作系统的其他软件。

要添加CentOS 7 EPEL存储库,请运行以下命令:

  1. sudo yum install epel-release

Since we are using a sudo command, these operations get executed with root privileges. It will ask you for your regular user’s password to verify that you have permission to run commands with root privileges. You’ll also be prompted to confirm installation, so press Y to proceed.

现在您的服务器上安装了EPEL存储库,请使用以下yum命令安装Nginx:

  1. sudo yum install nginx

安装完成后,从以下位置开始Nginx服务:

  1. sudo systemctl start nginx

您可以立即进行抽查,通过在网页浏览器中访问服务器的公共IP地址来验证一切是否按计划进行(如果您还没有这些信息,请参阅下一个标题下的注释,以了解您的公共IP地址):

Open in a web browser:
http://server_domain_name_or_IP/

您将看到默认的CentOS 7 Nginx网页,该网页用于信息和测试目的。它应该看起来像这样:

CentOS 7 Nginx默认值

如果您看到此页面,则您的Web服务器现在已正确安装。

要使Nginx在启动时启动,请运行以下命令:

  1. sudo systemctl enable nginx

如何查找服务器的公共 IP 地址

如果您不知道服务器的公共IP地址是什么,您可以通过多种方式找到它。通常,这是您用于通过SSH连接到服务器的地址。

从命令行中,您可以通过几种方式找到这个。首先,您可以使用iproute2工具通过键入以下内容来获取您的地址:

  1. ip addr show eth0 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//'

这将给你一两行回。它们都是正确的地址,但您的计算机可能只能使用其中一个,所以请随时尝试每个地址。

另一种方法是使用外部方来告诉你如何看待你的服务器。您可以通过询问特定服务器您的IP地址来做到这一点:

  1. curl http://icanhazip.com

无论您使用哪种方法来获取IP地址,都可以将其输入网页浏览器的地址栏以访问服务器。

第2步——安装MariaDB

既然我们已经安装并运行了Web服务器,是时候安装MySQL下拉式替代品MariaDB了。MariaDB是MySQL关系数据库管理系统的社区开发的分叉。

同样,我们可以使用yum来获取和安装我们的软件。这一次,我们还将安装一些其他帮助软件包,这些软件包将帮助我们使组件相互通信:

  1. sudo yum install mariadb-server mariadb

安装完成后,我们需要使用以下命令启动MariaDB:

  1. sudo systemctl start mariadb

既然我们的MariaDB数据库正在运行,我们希望运行一个安全脚本,该脚本将删除一些危险的默认值并锁定对我们数据库的访问。通过运行以下方式启动交互式脚本:

  1. sudo mysql_secure_installation

提示将要求您提供当前的rootMariaDB密码。由于您刚刚安装了MariaDB,您很可能不会安装MariaDB,所以按回车键将其留空。然后提示将询问您是否要设置root密码。继续输入Y,并按照说明操作:

mysql_secure_installation prompts:
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.

Set root password? [Y/n] y
New password: 
Re-enter new password: 
Password updated successfully!
Reloading privilege tables..
 ... Success!

对于其余问题,您应该通过每个提示点击“ENTER”键来接受默认值。这将删除一些示例用户和数据库,禁用远程根登录,并加载这些新规则,以便MySQL立即尊重我们所做的更改。

您最不想做的事情是启用MariaDB启动。使用以下命令进行操作:

  1. sudo systemctl enable mariadb

此时,您的数据库系统现已建立,我们可以继续。

第3步——安装PHP

PHP是我们设置的组成部分,它将处理代码以显示动态内容。它可以运行脚本,连接到我们的MySQL数据库以获取信息,并将处理后的内容交给我们的Web服务器进行显示。

CentOS 7服务器中默认可用的PHP版本已过时,因此,我们需要安装第三方软件包存储库才能获得PHP 7+并将其安装在您的CentOS 7服务器上。Remi是一个受欢迎的软件包存储库,为CentOS服务器提供最新的PHP版本。

要安装CentOS 7的Remi存储库,请运行:

  1. sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

安装完成后,您需要运行一个命令来启用包含您首选PHP版本的存储库。要检查Remi存储库中有哪些PHP 7+版本可用,请运行:

  1. yum --disablerepo="*" --enablerepo="remi-safe" list php[7-9][0-9].x86_64

您将看到这样的输出:

Output
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * remi-safe: mirrors.ukfast.co.uk
Available Packages
php70.x86_64                                              2.0-1.el7.remi                                       remi-safe
php71.x86_64                                              2.0-1.el7.remi                                       remi-safe
php72.x86_64                                              2.0-1.el7.remi                                       remi-safe
php73.x86_64                                              2.0-1.el7.remi                                       remi-safe
php74.x86_64                                              1.0-3.el7.remi                                       remi-safe
php80.x86_64                                              1.0-3.el7.remi                                       remi-safe

在本指南中,我们将安装PHP 7.4,这是目前最更新的PHP稳定版本。要启用正确的Remi软件包来安装PHP 7.4,请运行:

  1. sudo yum-config-manager --enable remi-php74

现在我们可以像往常一样使用yum安装PHP了。以下命令将安装在Nginx中设置PHP 7.4所需的所有软件包,并允许它连接到基于MySQL的数据库:

  1. sudo yum install php php-mysqlnd php-fpm

要确认PHP作为您选择的版本可用,请运行:

  1. php --version

您将看到这样的输出:

Output
PHP 7.4.5 (cli) (built: Apr 14 2020 12:54:33) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies

PHP 现在已成功安装到您的系统上。接下来,我们需要对默认配置进行一些调整。为了方便在CentOS上编辑文件,我们将首先安装nano,这是一个比vi更方便用户的文本编辑器:

  1. sudo yum install nano

使用nano或您选择的编辑器打开/etc/php-fpm.d/www.conf配置文件:

  1. sudo nano /etc/php-fpm.d/www.conf

现在查找usergroup指令。如果您使用的是nano,您可以点击CTRL+W在打开的文件中搜索这些术语。

/etc/php-fpm.d/www.conf
…
; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
;       will be used.
; RPM: apache user chosen to provide access to the same directories as httpd
user = apache
; RPM: Keep a group allowed to write in log dir.
group = apache
…

您会注意到user变量和group变量都设置为apache。我们需要改变这些tonginx:

/etc/php-fpm.d/www.conf
…
; RPM: apache user chosen to provide access to the same directories as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx
…

接下来,找到listen指令。默认情况下,php-fpm将通过TCP在特定的主机和端口上监听。我们希望更改此设置,以便监听本地套接字文件,因为这提高了服务器的整体性能。将包含listen指令的行更改为以下内容:

/etc/php-fpm.d/www.conf
listen = /var/run/php-fpm/php-fpm.sock;

Finally, we’ll need to change the owner and group settings for the socket file we just defined within the listen directive. Locate the listen.owner, listen.group and listen.mode directives. These lines are commented out by default. Uncomment them by removing the preceding ; sign at the beginning of the line. Then, change the owner and group to nginx:

/etc/php-fpm.d/www.conf
listen.owner = nginx
listen.group = nginx
listen.mode = 0660

完成编辑后保存并关闭文件。如果您使用的是nano,请按CTRL + X,然后按YENTER

要启用和启动php-fpm服务,请运行:

  1. sudo systemctl start php-fpm

您的PHP环境现已准备就绪。接下来,我们将配置Nginx,以便它发送php-fpm处理PHP脚本的所有请求。

第4步——配置Nginx以处理PHP页面

现在,我们已经安装了所有必要的组件。我们仍然需要做的配置更改是告诉Nginx使用我们的PHP处理器进行动态内容。

Nginx有一个专用目录,我们可以使用服务器块将每个托管网站定义为单独的配置文件。这与Apache的虚拟主机相似。

然而,在默认安装时,此目录为空。我们将创建一个新文件作为此服务器上的默认PHP网站,该文件将覆盖/etc/nginx/nginx.conf文件中定义的默认服务器块。

首先,在/etc/nginx/conf.d目录中打开一个新文件:

  1. sudo nano /etc/nginx/conf.d/default.conf

将以下PHP服务器定义块复制到您的配置文件中,别忘了替换server_name指令,使其指向服务器的域名或IP地址:

/etc/nginx/conf.d/default.conf
server {
    listen       80;
    server_name  server_domain_or_IP;

    root   /usr/share/nginx/html;
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ =404;
    }
    error_page 404 /404.html;
    error_page 500 502 503 504 /50x.html;
    
    location = /50x.html {
        root /usr/share/nginx/html;
    }

    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

完成后保存并关闭文件。

接下来,重新启动Nginx以应用更改:

  1. sudo systemctl restart nginx

您的网络服务器现已完全设置。下一步,我们将测试PHP与Nginx的集成。

第5步——在Web服务器上测试PHP处理

现在您的Web服务器已经设置好了,我们可以在php-fpm的帮助下创建一个测试PHP脚本,以确保Nginx正确处理.php脚本。

在创建脚本之前,我们将更改Nginx文档根目录上的默认所有权设置,以便我们的常规sudo用户能够在该位置创建文件。

以下命令将默认Nginx文档根目录的所有权更改为名为sammy的用户和组,因此请务必替换此命令中突出显示的用户名和组,以反映系统的用户名和组。

  1. sudo chown -R sammy.sammy /usr/share/nginx/html/

我们现在将创建一个测试PHP页面,以确保Web服务器正常工作。

/usr/share/nginx/html目录上创建一个名为info.php的新PHP文件:

  1. nano /usr/share/nginx/html/info.php

以下PHP代码将显示有关服务器上运行的当前PHP环境的信息:

/usr/share/nginx/html/info.php
<?php

phpinfo();

完成后,保存并关闭文件。

现在,我们可以测试我们的Web服务器是否可以正确显示PHP脚本生成的内容。转到您的浏览器并访问您的服务器主机名或IP地址,然后是/info.php

http://server_host_or_IP/info.php

您将看到一个类似的页面:

CentOS 7 PHP 7.4信息

通过该页面检查有关PHP服务器的相关信息后,最好删除您创建的文件,因为它包含有关PHP环境和CentOS服务器的敏感信息。您可以使用rm删除该文件:

  1. rm /usr/share/nginx/html/info.php

如果您以后需要,您始终可以重新生成此文件。

结论

在本指南中,您为向访问者提供PHP网站和应用程序奠定了灵活的基础,使用Nginx作为Web服务器和最新的PHP版本。您已设置Nginx通过php-fpm处理PHP请求,还设置了一个MariaDB数据库来存储网站的数据。

Node.js在 macOS上安装创建本地开发环境

macOS上安装Node.js并创建本地开发环境

先决条件

您需要一台运行High Sierra或更高版本的macOS计算机,该计算机具有管理访问权限和互联网连接。

第1步——使用macOS终端

您将使用命令行安装Node.js,并运行与开发Node.js应用程序相关的各种命令。命令行是一种与计算机交互的非图形方式。您将键入命令作为文本并接收基于文本的反馈,而不是用鼠标单击按钮。命令行也称为shell,允许您每天在计算机上执行许多任务的自动化,是软件开发人员必不可少的工具。

To access the command line interface, you’ll use the Terminal application provided by macOS. Like any other application, you can find it by going into Finder, navigating to the Applications folder, and then into the Utilities folder. From here, double-click the Terminal application to open it up. Alternatively, you can use Spotlight by holding down the COMMANDkey and pressing SPACE to find Terminal by typing it out in the box that appears.

macOS 终端

如果您想熟悉使用命令行,请查看[Linux终端简介](https://www.digitalocean.com/community/tutorials/an-introduction-to-the-linux-terminal)。macOS 上的命令行界面非常相似,该教程中的概念直接适用。

现在您已经运行了终端,让我们安装Node.js所需的一些先决条件。

第2步——安装Xcode的命令行工具

Xcode 是一个集成式开发环境 (IDE),由 macOS 的软件开发工具组成。您不需要Xcode来编写Node.js程序,但Node.js及其一些组件将依赖于Xcode的命令行工具包。

在“终端”中执行以下命令,以下载并安装以下组件:

  1. xcode-select --install

系统将提示您开始安装,然后再次提示您接受软件许可证。然后,工具将自动下载并安装。

我们现在准备安装软件包管理器Homebrew,这将允许我们安装最新版本的Node.js。

第 3 步 — 安装和设置自制啤酒

虽然macOS上的命令行界面具有您在Linux和其他Unix系统中找到的许多功能,但它没有附带一个好的软件包管理器。软件包管理器是一系列软件工具,用于自动化软件安装、配置和升级。他们将安装的软件保存在中心位置,并可以以常用的格式维护系统上的所有软件包。Homebrew是一个免费的开源软件包管理系统,可以简化macOS上的软件安装。我们将使用Homebrew安装最新版本的Node.js。

要安装Homebrew,请在“终端”窗口中键入以下命令:

  1. /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

该命令使用curl从GitHub上的Homebrew的Git存储库下载Homebrew安装脚本。

让我们浏览一下与curl命令关联的标志:

curl下载脚本后,由macOS随附的Ruby解释器执行,开始自制安装过程。

安装脚本将解释它将做什么,并将提示您确认要这样做。这可以让您确切地知道Homebrew将在您继续之前对系统做什么。它还确保您在继续之前具备先决条件。

You’ll be prompted to enter your password during the process. However, when you type your password, your keystrokes will not display in the Terminal window. This is a security measure and is something you’ll see often when prompted for passwords on the command line. Even though you don’t see them, your keystrokes are being recorded by the system, so press the RETURN key once you’ve entered your password.

每当系统提示您确认安装时,请按字母y表示“是”。

现在,让我们验证Homebrew是否设置正确。执行以下命令:

  1. brew doctor

如果目前不需要更新,您将在终端中看到以下内容:

Output
Your system is ready to brew.

否则,您可能会收到运行其他命令(如brew update)的警告,以确保您的Homebrew安装是最新的。

现在安装了Homebrew,您可以安装Node.js。

第4步——安装Node.js

安装Homebrew后,您可以安装各种软件和开发工具。我们将使用它来安装Node.js及其依赖项。

您可以使用Homebrew搜索您可以使用brew search命令安装的所有内容,但要向我们提供更简短的列表,让我们搜索与Node.js相关的软件包:

  1. brew search nodejs

您将看到您可以安装的软件包列表,如下所示:

Output
==> Formulae
node.js
nodejs

这两个软件包都在您的系统上安装Node.js。它们都存在,以防你不记得是否需要使用nodejsnode.js

执行以下命令以安装nodejs软件包:

  1. brew install nodejs

您将在您的终端中看到类似于以下内容的输出。Homebrew将安装许多依赖项,但最终将下载并安装Node.js本身:

Output
==> Installing dependencies for node: icu4c
==> Installing node dependency: icu4c

==> Installing node
==> Downloading https://homebrew.bintray.com/bottles/node-11.0.0.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring node-11.0.0.sierra.bottle.tar.gz
...

==> Summary
🍺  /usr/local/Cellar/node/11.0.0: 3,936 files, 50.1MB

除了Node.js本身,Homebrew还安装了一些相关工具,包括npm,这使得安装和更新您可能在自己的项目中使用的Node.js库和软件包变得很容易。

要检查您安装的Node.js版本,请键入

  1. node -v

这将输出当前安装的特定版本的Node.js,默认情况下,这将是可用Node.js的最新稳定版本。

Output
v11.0.0

使用

  1. npm -v

您将看到显示的版本:

Output
6.4.1

您将使用npm安装其他组件、库和框架。

要更新Node.js版本,您可以首先更新Homebrew以获取最新的软件包列表,然后升级Node.js本身:

  1. brew update
  2. brew upgrade nodejs

现在Node.js已经安装,让我们写一个程序来确保一切正常。

第5步——创建一个简单的程序

让我们创建一个简单的“你好,世界”计划。这将确保我们的环境正常运行,并让您轻松创建和运行Node.js程序。

为此,请使用nano创建一个名为hello.js的新文件:

  1. nano hello.js

在文件中键入以下代码:

你好。js
let message = "Hello, World!";
console.log(message);

CTRL+X退出编辑器。然后在提示保存文件时按y。系统将返回到提示。

现在使用以下命令运行程序:

  1. node hello.js

程序执行并向屏幕上显示其输出:

Output
Hello, World!

这个简单的程序证明你有一个工作开发环境。您可以使用此环境继续探索Node.js,并构建更大、更有趣的项目。

结论

您已成功安装Node.js、npm,并通过创建和运行一个简单的程序测试了您的设置。您现在可以使用此功能开发客户端应用程序或服务器端应用程序。查看以下教程以了解更多信息:

Node.js 在CentOS 8 开发环境

导言

Node.js是用于服务器端编程的JavaScript运行时。它允许开发人员使用JavaScript创建可扩展的后端功能,JavaScript是许多人从基于浏览器的Web开发中已经熟悉的语言。

在本指南中,我们将向您展示在CentOS 8服务器上安装Node.js的三种不同方式:

大多数用户应该使用dnf安装内置的预打包版本的Node。如果您是开发人员或以其他方式需要管理多个已安装版本的Node,请使用nvm方法。对大多数用户来说,从源头构建很少必要。

先决条件

要完成本教程,您需要一台运行CentOS 8的服务器。我们将假设您以非root、启用sudo的用户身份登录此服务器。要设置此设置,请参阅我们的CentOS 8初始服务器设置指南。

选项1——从CentOS AppStream存储库安装节点

Node.js可从CentOS 8的默认AppStream软件存储库获得。有多个版本可用,您可以通过启用适当的模块流在它们之间进行选择。首先使用dnf命令列出nodejs模块的可用流:

  1. sudo dnf module list nodejs
Output
Name                     Stream                   Profiles                                                Summary
nodejs                   10 [d]                   common [d], development, minimal, s2i                   Javascript runtime
nodejs                   12                       common, development, minimal, s2i                       Javascript runtime

有两条流可供选择,10和12条。[d]表示版本10是默认流。如果您希望安装Node.js 12,请立即切换模块流:

  1. sudo dnf module enable nodejs:12

系统将提示您确认您的决定。之后,版本12流将被启用,我们可以继续安装。有关使用模块流的更多信息,请参阅CentOS AppStream官方文档

使用dnf安装nodejs软件包:

  1. sudo dnf install nodejs

同样,dnf将要求您确认它将采取的行动。按y然后ENTER,软件将安装。

通过查询其版本号的node检查安装是否成功:

  1. node --version
Output
v12.13.1

如果您安装Node.js 10,您的--version输出将有所不同。

注:Node.js的两个可用版本都是长期支持版本,这意味着它们有一个更长的维护保障窗口。有关生命周期的更多信息,请参阅Node.js的官方发布页面

Installing the nodejs package should also install the npm Node Package Manager utility as a dependency. Verify that it was installed properly as well:

  1. npm --version
Output
6.12.1

此时,您已使用CentOS软件存储库成功安装Node.js和npm。下一节将展示如何使用节点版本管理器进行操作。

选项2——使用节点版本管理器安装节点

另一种安装Node.js的方法特别灵活,即使用nvm,即Node版本管理器。此软件允许您同时安装和维护许多不同版本的Node.js及其关联的Node软件包。

要在CentOS 8机器上安装NVM,请访问项目的GitHub页面。从主页上显示的README文件中复制curl命令。这将为您提供最新版本的安装脚本。

在将命令引导到bash之前,最好先审计脚本,以确保它没有做任何您不同意的事情。您可以通过删除curl命令末尾的| bash段来做到这一点:

  1. curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh

看看,确保你对它正在做出的改变感到满意。当您满意时,请再次运行命令,并在末尾附加| bash”。您使用的URL将根据最新版本的NVM而更改,但从现在开始,可以通过键入来下载和执行脚本:

  1. curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash

这将把nvm脚本安装到您的用户帐户中。要使用它,您必须首先源您的.bash_profile文件:

  1. source ~/.bash_profile

现在,您可以询问NVM哪些版本的节点可用:

nvm list-remote
. . .
       v12.13.0   (LTS: Erbium)
       v12.13.1   (LTS: Erbium)
       v12.14.0   (LTS: Erbium)
       v12.14.1   (LTS: Erbium)
       v12.15.0   (LTS: Erbium)
       v12.16.0   (LTS: Erbium)
       v12.16.1   (Latest LTS: Erbium)
        v13.0.0
        v13.0.1
        v13.1.0
        v13.2.0
        v13.3.0
        v13.4.0
        v13.5.0
        v13.6.0
        v13.7.0
        v13.8.0
        v13.9.0
       v13.10.0
       v13.10.1
       v13.11.0
       v13.12.0

这是一个很长的列表!您可以通过键入您看到的任何发布版本来安装节点版本。例如,要获取版本v13.6.0,您可以键入:

  1. nvm install v13.6.0

您可以通过键入来查看您安装的不同版本:

nvm list
Output
->      v13.6.0
default -> v13.6.0
node -> stable (-> v13.6.0) (default)
stable -> 13.6 (-> v13.6.0) (default)

这显示了第一行(-> v13.6.0)上当前活跃的版本,然后是一些命名别名和这些别名指向的版本。

注意:如果您还通过CentOS软件存储库安装了节点版本,您可能会在这里看到system -> v12.13.1(或其他版本号)行。您始终可以使用nvm use system激活节点的系统版本。

此外,您将看到节点各种长期支持(或LTS)版本的别名:

Output
lts/* -> lts/erbium (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.19.0 (-> N/A)
lts/erbium -> v12.16.1 (-> N/A)

我们也可以基于这些别名安装版本。例如,要安装最新的长期支持版本erbium,请运行以下内容:

  1. nvm install lts/erbium
Output
Downloading and installing node v12.16.1...
. . .
Now using node v12.16.1 (npm v6.13.4)

您可以在nvm use的已安装版本之间切换:

nvm use v13.6.0
Now using node v13.6.0 (npm v6.13.4)

您可以使用其他部分中的相同技术来验证安装是否成功,方法是键入:

node --version
Output
v13.6.0

正如我们预期的那样,我们的机器上安装了正确的节点版本。还提供兼容的npm版本。

选项3——从源头安装节点

安装Node.js的另一种方法是下载源代码并自行编译。

为此,请使用您的网页浏览器导航到Node.js官方下载页面,右键单击源代码链接,然后单击复制链接地址或浏览器为您提供的任何类似选项。

回到您的SSH会话,首先确保您位于可以写入的目录中。我们将使用当前用户的个人目录:

  1. cd ~

然后键入curl,粘贴您从网站上复制的链接,然后使用| tar xz关注它:

  1. curl https://nodejs.org/dist/v12.16.1/node-v12.16.1.tar.gz| tar xz

这将使用curl实用程序下载源,然后将其直接管道连接到tar实用程序,tar实用程序将将其提取到当前目录中。

进入新创建的源目录:

  1. cd node-v*

为了编译代码,我们需要从CentOS存储库下载一些软件包。立即使用dnf安装这些:

  1. sudo dnf install gcc-c++ make python2

系统将提示您确认安装。键入y,然后ENTER。现在,我们可以配置和编译软件:

  1. ./configure
  2. make -j4

编译需要很长时间(在四核服务器上大约30分钟)。我们使用-j4选项运行了四个并行编译过程。您可以省略此选项或根据可用处理器内核的数量更新数量。

编译完成后,您可以通过键入以下内容将软件安装到系统上:

  1. sudo make install

要检查安装是否成功,请让Node显示其版本号:

  1. node --version
v12.16.1

如果您看到正确的版本号,则安装成功完成。默认情况下,Node还安装了兼容的npm版本,因此它也应该可用。

结论

在本教程中,我们展示了如何使用CentOS AppStream软件存储库、使用Node Version Manager和从源编译来安装Node.js。

如果您想了解有关JavaScript编程的更多信息,请阅读我们的相关教程系列: