在Arch Linux中安装LEMP(Nginx,PHP,MySQL with MariaDB引擎和PhpMyAdmin)

由于其拥抱采伐年龄的软件Arch Linux的不是设计和开发作为服务器运行提供可靠的网络服务,因为它需要额外的时间来维护,升级常数和明智的文件配置其滚动发布模式。

在Arch-Linux中安装LEMP

但是,尽管如此,因为Arch Linux的附带光盘核心安装有预安装最少的软件,它可以代表一个坚实的基础起动点安装大多数流行的网络服务这天,这其中包括LEMPLAMP,Apache Web服务器, Nginx的,PHP,SQL数据库,Samba,FTP服务器,BIND和其他人,其中许多来自Arch Linux 官方源等人从AUR所提供。

本教程将通过安装和配置LEMP从远程使用SSH,它可以提供一个强大的基础来构建Web服务器应用程序栈(Nginx的,PHP和MySQL与MariaDB的发动机和phpMyAdmin的)引导。

要求

上一页Arch Linux的安装指南,与DHCP网络除外最后一部分。

第1步:在网络接口上分配静态IP

1.最小Arch Linux的核心安装后重新启动服务器,用root帐户或同等的行政sudo的帐号登录,并确定您的系统使用的网卡IP链路命令的设备名称。

# ip link

请检查网络接口名称

2.要指定静态网络配置,我们将使用NETCTL包来管理网络连接。 您已成功鉴定后您的网络接口名称以太网的静态文件模板复制到系统NETCTL路径和其名称更改为一个描述性的命名方案(试行采用“ 静态 ”字符串网卡的名称相结合),通过发出以下命令。

# cp /etc/netctl/examples/ethenet-static  /etc/netctl/static.ens33

3.下一步是通过改变文件的指示,像下面摘录提供您的实际网络设置(接口,IP /子网掩码,网关,广播,DNS)编辑这个新的模板文件。

# nano  /etc/netctl/static.ens33

添加网络详细信息

Description='A basic static ethernet connection for ens33'
Interface=ens33
Connection=ethernet
IP=static
Address=('192.168.1.33/24')
Gateway='192.168.1.1'
Brodcast='192.168.1.255'
DNS=('192.168.1.1' '8.8.8.8')

4.下一步是开始通过NETCTL系统工具,网络连接,并发出以下命令验证系统的连接。

# netctl start static.ens33
# netctl status static.ens33

启动网络服务

5.如果你得到一个积极的绿色退出状态您已经成功地配置您的网络接口 ,它的时间自动启用系统范围内的服务。 还通过对域名运行ping命令测试网络,并安装网络工具包(这个包的最知名的特征是ifconfig命令它拱开发商认为是一种过时和iproute2的替换它)。

启用系统范围的NIC配置
# netctl enable static.ens33
安装net-tools包
# pacman -S net-tools

6.现在您可以运行ifconfig命令来验证您的网络接口的设置和检查,如果一切都正确显示,然后重新启动您的系统,以确保一切就绪并正确配置。

# ping youcl.com

验证网络连接

第2步:安装LEMP软件

正如本文引言中所指出LEMP是Linux + Nginx的+ PHP / phpMyAdmin的+ MySQL的/ MariaDB的这是今天的流传最广的网络应用平台一盏灯后(同一个与Apache公式)。

7.在实际安装LEMP,我们需要更新系统,然后获得远程控制Arch Linux的服务器。 正如你可能知道OpenSSH是适合这个工作的主要候选人,以便继续前进,安装,启动SSH守护进程,并使其系统范围。

$ sudo pacman -Syu
$ sudo pacman –S openssh

安装打开SSH服务

$ sudo systemctl start sshd
$ sudo systemctl status sshd
$ sudo systemctl enable sshd

开始打开SSH服务

现在是时候继续进行LEMP安装。 由于本教程的目的是作为一个全面的指导,我会要分开LEMP安装成小块,分步实施。

8.首先安装的Nginx Web服务器 ,然后启动它,并发出以下命令验证其状态。

$ sudo pacman -S nginx
$ sudo systemctl start nginx
$ sudo systemctl status nginx

安装Nginx Web服务器

启动Nginx Web服务器

9.要安装的下一个服务是MySQL数据库。 发出以下命令来安装MySQL数据库服务器,并选择MariaDB的引擎,然后开始和验证进程的状态。

$ sudo pacman -S mysql
$ sudo systemctl start mysqld
$ sudo systemctl status mysqld

安装MySQL数据库

启动MySQL数据库

10.下一步是通过为MySQL的root帐户提供密码,为MySQL数据库一个高度安全的环境,删除匿名用户帐户,删除是从外部访问本地主机测试数据库和根帐户。 运行以下命令来提高MySQL的安全性,按[Enter]当前root帐户密码,然后回答对所有问题(还设置你的root帐户密码)。

$ sudo mysql_secure_installation

安全MySQL安装

配置MySQL设置

注意 :以任何方式不使用Linux系统的root帐号混淆MySQL的root帐户-它们是两个不同的东西-不是如此不同,但他们在不同的层面上运行。

为了用mysql -u -p根命令语法检查MySQL的安全登录数据库,然后提供你的root密码留下退出数据库;命令。

# mysql -u root -p

连接到MySQL数据库

11.现在是时候来安装PHP的服务器端脚本语言能够开发和运行复杂的动态Web应用程序,而不是仅仅提供HTML / CSS代码。

因为我们使用Nginx的作为Web服务器,我们需要安装PHP-FPM支持模块,通过快速通用网关进行通信,并通过更改PHP脚本生成动态内容。

发出以下命令行安装PHP-FPM服务,然后再启动守护进程,并验证状态。

$ sudo pacman –S php php-fpm
$ sudo systemctl start php-fpm
$ sudo systemctl status php-fpm

安装PHP和PHP-FPM

启动PHP-FPM服务

要列出所有可用的PHP模块发出以下命令。

$ sudo pacman –S php[TAB]
$ sudo pacman –Ss | grep php

列出所有PHP模块

验证所有PHP模块

12.一个的最后一个步骤就是安装phpMyAdmin的Web界面的MySQL数据库。 发出以下命令安装PhpMyAdmin及其PHP所需的模块,然后为PhpMyaAdmin系统路径创建一个符号链接到Nginx默认根路径。

$ pacman -S phpmyadmin php-mcrypt
$ sudo ln -s /usr/share/webapps/phpMyAdmin   /usr/share/nginx/html

安装PhpMyAdmin

13.然后配置php.ini文件以包括phpMyAdmin的应用程序所需的必要的扩展。

$ sudo nano /etc/php/php.ini

[CTRL + W]键并取消定位(删除;在开头的行)以下行。

extension=mysqli.so
extension=mysql.so
extension=mcrypt.so
mysqli.allow_local_infile = On

在同一个文件中查找和编辑open_basedir的指令,用下面的目录包含类似。

open_basedir= /srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps/:/etc/webapps/

配置php.ini扩展

启用MySQL PHP扩展

14.下一步是在本地主机上的Nginx指令启用PHP-FPM的FastCGI。 发出下一个命令备份nginx.conf Web服务器的配置文件,然后用下面的内容替换它。

$ sudo mv /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
$ sudo nano /etc/nginx/nginx.conf

在nginx.conf中添加以下内容。

#user html;
worker_processes  2;
#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;
#pid        logs/nginx.pid;
events {
worker_connections  1024;
}
http {
include       mime.types;
default_type  application/octet-stream;
sendfile        on;
#tcp_nopush     on;
#keepalive_timeout  0;
keepalive_timeout  65;
gzip  on;
server {
listen       80;
server_name  localhost;
root   /usr/share/nginx/html;
charset koi8-r;
location / {
index  index.php index.html index.htm;
autoindex on;
autoindex_exact_size off;
autoindex_localtime on;
}
location /phpmyadmin {
rewrite ^/* /phpMyAdmin last;
}
error_page  404              /404.html;
# redirect server error pages to the static page /50x.html
error_page   500 502 503 504  /50x.html;
location = /50x.html {
root   /usr/share/nginx/html;
}
location ~ \.php$ {
#fastcgi_pass 127.0.0.1:9000; (depending on your php-fpm socket configuration)
fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
include fastcgi.conf;
}
location ~ /\.ht {
deny  all;
}
}         
}

启用PHP-FPM FastCGI

15.所有的文件配置已经作出后,所有你需要做的就是重新启动的NginxPHP-FPM服务和浏览器指向到http:// arch_IP / phpMyAdmin的另一种形式从本地节点或http //本地主机/ phpMyAdmin的网址电脑。

$ sudo systemctl restart php-fpm
$ sudo systemctl restart nginx

访问Nginx Web服务器

PhpMyAdmin登录

PhpMyAdmin仪表板

16.如果一切运行预期的最后一个步骤是让广LEMP系统使用以下命令。

$ sudo systemctl enable php-fpm
$ sudo systemctl enable nginx
$ sudo systemctl enable mysqld

启用LEMP系统范围

恭喜!您已安装并在Arch Linux的配置和LEMP ,现在,你有一个完整的动态界面,开始和开发Web应用程序。

虽然Arch Linux的不是最甚最适合系统对生产服务器上运行,由于其面向社会滚动发布模式它可以为小非关键生产环境中一个非常快速和可靠的来源。

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏