Arch Linux安装配置LAMP服务器

安装前

更新下系统

  1. sudo pacman -Syu

Apache

安装配置

1.安装Apache 2.4

  1. sudo pacman -Syu apache

2.编辑/etc/httpd/conf/extra/下的httpd-mpm.conf,调整资源使用配置,下面的配置是针对2GB服务器优化的:
/etc/httpd/conf/extra/httpd-mpm.conf:

  1. <IfModule mpm_prefork_module>
  2.         StartServers            4
  3.         MinSpareServers         20
  4.         MaxSpareServers         40
  5.         MaxRequestWorkers       200
  6.         MaxConnectionsPerChild  4500
  7. </IfModule>

3.编辑httpd-default.conf来关闭KeepAlive
/etc/httpd/conf/extra/httpd-default.conf

  1. KeepAlive Off

4.设置Apache开机启动

  1. sudo systemctl enable httpd.service

配置虚拟主机

虚拟主机可以配置多个域名。这些网站可以使用不同的用户来管理,或者一个用户,看你选择了。有许多种方法来配置虚拟主机,不过推荐使用下面的方法。
1.打开httpd.conf,编辑行DocumentRoot /srv/http来设置根目录:
/etc/httpd/conf/httpd.conf:

  1. DocumentRoot "/srv/http/default"

2.找到在/etc/httpd/conf/httpd.conf文件底部的Include conf/extra/httpd-vhosts.conf,取消其注释:
/etc/httpd/conf/httpd.conf

  1. Include conf/extra/httpd-vhosts.conf

3.打开在extra目录下的httpd-vhosts.conf,编辑虚拟主机示例配置,把example.com域名替换为你的。
/etc/httpd/conf/extra/httpd-vhosts.conf

  1. <VirtualHost *:80>
  2.      ServerAdmin webmaster@example.com
  3.      ServerName example.com
  4.      ServerAlias www.example.com
  5.      DocumentRoot /srv/http/example.com/public_html/
  6.      ErrorLog /srv/http/example.com/logs/error.log
  7.      CustomLog /srv/http/example.com/logs/access.log combined
  8.             <Directory />
  9.                Order deny,allow
  10.                Allow from all
  11.             </Directory>
  12. </VirtualHost>

注意:
ErrorLog和CustomLog建议在每个虚拟主机指定,但不是必须的。如果像以上配置了,日志目录必须在Apache重启前创建好。

4.创建相关的目录

  1. sudo mkdir -p /srv/http/default
  2. sudo mkdir -p /srv/http/example.com/public_html
  3. sudo mkdir -p /srv/http/example.com/logs

5.创建好虚拟主机后,运行以下命令为启动Apache

  1. sudo systemctl start httpd.service

到目前为止,你应该能进入你的网站了。

注意:
当你更改配置时,需要重启Apache
sudo systemctl restart httpd.service

MySQL

安装配置

默认地,Arch Linux使用MariaDB替换了MySQL。MariaDB是用来替代MySQL的开源软件。与mysql相关的系统命令都兼容。
1.安装mariadb, mariadb-clients和libmariadbclient

  1. sudo pacman -Syu mariadb mariadb-clients libmariadbclient

2.安装MariaDB数据目录

  1. sudo mysql_install_db –user=mysql –basedir=/usr –datadir=/var/lib/mysql

3.启动MySQL并设置开机启动

  1. sudo systemctl start mysqld.service
  2. sudo systemctl enable mysqld.service

4.执行mysql_secure_installation,程序会引导你加固MySQL。你可以更改MySQL root密码,删除匿名用户,禁用root远程登录,以及删除test数据库:

  1. mysql_secure_installation

创建MySQL数据库

1.登录MySQL

  1. mysql -u root -p

输入root密码,将进入MySQL命令行终端。
2.创建一个数据库和一个授权此数据库权限的用户。在这个例子中数据库名为webdata,用户为webuser,密码为password:

  1. create database webdata;
  2. grant all on webdata.* to ‘webuser’ identified by ‘password’;

3.退出MySQL

  1. quit

安装好Apache和MySQL后,下面准备安装PHP。

PHP

1.安装PHP,PHP扩展和应用仓库:

  1. sudo pacman -Syu php php-apache

如果需要MySQL支持,需要安装php5-mysql

  1. sudo apt-get install php5-mysql

2.一旦PHP5安装完成,可以编辑/etc/php5/apache2/php.ini来调整配置,如设置错误等级显示,日志,性能等。下面是部分调整:
/etc/php5/apache2/php.ini

  1. error_reporting = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR
  2. error_log = /var/log/php/error.log 
  3. max_input_time = 30
  4. extension=mysql.so

注意:
确保以上行已取消注释。注释的行前面带;号。
3.为PHP创建日志目录,并设置所有者为Apache运行用户:

  1. sudo mkdir /var/log/php
  2. sudo chown www-data /var/log/php

4.编辑/etc/httpd/conf/httpd.conf文件来激活PHP模块
/etc/httpd/conf/httpd.conf

  1. # Dynamic Shared Object (DSO) Support
  2. LoadModule php5_module modules/libphp5.so
  3.         
  4. # Supplemental configuration
  5. # PHP 5
  6. Include conf/extra/php5_module.conf
  7.  
  8. # Located in the <IfModule mime_module>
  9. AddType application/x-httpd-php .php
  10. AddType application/x-httpd-php-source .phps

5.同样的文件,注释行LoadModule mpm_event_module modules/mod_mpm_event.so,在前面加#号,并增加行LoadModule mpm_prefork_module modules/mod_mpm_prefork.so:
/etc/httpd/conf/httpd.conf

  1. #LoadModule mpm_event_module modules/mod_mpm_event.so
  2. LoadModule mpm_prefork_module modules/mod_mpm_prefork.so

6.重启Apache:

  1. sudo systemctl restart httpd.service

到目前为止已把LAMP安装完毕。