由于其拥抱采伐年龄的软件Arch Linux的不是设计和开发作为服务器运行提供可靠的网络服务,因为它需要额外的时间来维护,升级常数和明智的文件配置其滚动发布模式。
在Arch-Linux中安装LEMP
但是,尽管如此,因为Arch Linux的附带光盘核心安装有预安装最少的软件,它可以代表一个坚实的基础起动点安装大多数流行的网络服务这天,这其中包括LEMP或LAMP,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.所有的文件配置已经作出后,所有你需要做的就是重新启动的Nginx和PHP-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的不是最甚最适合系统对生产服务器上运行,由于其面向社会滚动发布模式它可以为小非关键生产环境中一个非常快速和可靠的来源。