LAMP网站服务器是Linux、 Apache、MySQL、PHP的简写。在Linux系统上安装apache服务器不是一件难事,因为基本上主流的Linux发行版本软件库都包括了要安装的软件,本文将向大家展示在Fedora 20系统上如何安装Apache2 web服务,PHP5 (mod_php)和 MySQL 数据库。
可能有不正确的地方,希望大家指正!
1 安全前提示:
本文使用的主机名为:server1.example.com ,IP地址为 192.168.0.100。这些需要根据你的主机情况作相应修改!
2 安装数据库,有两个数据库可选:MySQL/MariaDB 5
使用下面的命令安装MySQL:
yum install mysql mysql-server
为MySQL创建启动连接 (这样 MySQL 将随系统自动启动)并启动 MySQL服务:
systemctl enable mysqld.service
注意:如果您收到这样的错误
Failed to issue method call: No such file or directory
使用下面的命令
systemctl enable mariadb.service
进一步启动mysql的服务
systemctl start mysqld.service
运行
mysql_secure_installation
设置root用户密码(否则任何人都可以访问你MySQL数据库!):
[root@server1 ~]# mysql_secure_installation
/usr/bin/mysql_secure_installation: line 379: find_mysql_client: command not found
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we’ll need the current
password for the root user. If you’ve just installed MariaDB, and
you haven’t set the root password yet, the password will be blank,
so you should just press enter here.
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] <– (直接回车)
New password: <– (设置密码)
Re-enter new password: <– (确认密码,在输入一次)
Password updated successfully!
Reloading privilege tables..
… Success!
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] <– (直接回车)
… Success!
Normally, root should only be allowed to connect from ‘localhost’. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] <– (直接回车)
… Success!
By default, MariaDB comes with a database named ‘test’ that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] <– (直接回车)
- Dropping test database…
… Success!
- Removing privileges on test database…
… Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] <– (直接回车)
… Success!
Cleaning up…
All done! If you’ve completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
[root@server1 ~]#
3 安装Apache2服务器
运行下面的命令:
yum install httpd
现在配置您的系统在开机时启动Apache…
systemctl enable httpd.service
并且启动Apache:
systemctl start httpd.service
在浏览器输入地址访问 http://192.168.0.100,如果看到下面的页面,说明安装成功!
4.安装 PHP5
我们需要安装 PHP5 和 Apache PHP5 模块,运行命令:
yum install php
重启 Apache :
systemctl restart httpd.service
5.测试PHP5/获取关于PHP5安装详细信息
在默认根目录下创建一个探针文件:
vi /var/www/html/info.php
<?php
phpinfo();
?>
打开浏览器访问探针文件 (例如 http://192.168.0.100/info.php):
正如你看到的,PHP5正在运行,再向下滚动,你会看到PHP5中已经启用了所有模块。 MySQL是没有被列入其中,这意味着现在还不支持MySQL。
6.让PHP5支持MySQL
我们需要安装一个模块使得php5支持mysql,先查询一下安装包
yum search php
使用下面的命令进行安装:
yum install php-mysqlnd php-mssql php-opcache
在重启Apache2:
systemctl restart httpd.service
现在刷新 http://192.168.0.100/info.php模块是否安装成功,看PHP5是否已经支持Mysql。
7.安装phpMyAdmin来管理Mysql
phpmyadmin是一款基于php语言编写的管理 MySQL数据库的图形化软件。
使用下面的命令安装phpMyAdmin:
yum install phpmyadmin
现在配置 phpMyAdmin。我们需要改变 Apache 配置来让 phpMyAdmin 支持 localhost 连接(去掉/usr/share/phpMyAdmin/ 前面的注释,这样就准许访问)
vi /etc/httpd/conf.d/phpMyAdmin.conf
# phpMyAdmin - Web based MySQL browser written in php
#
# Allows only localhost by default
#
# But allowing phpMyAdmin to anyone other than localhost should be considered
# dangerous unless properly secured by SSL
Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin
<Directory /usr/share/phpMyAdmin/>
# <IfModule mod_authz_core.c>
# # Apache 2.4
# <RequireAny>
# Require ip 127.0.0.1
# Require ip ::1
# </RequireAny>
# </IfModule>
# <IfModule !mod_authz_core.c>
# # Apache 2.2
# Order Deny,Allow
# Deny from All
# Allow from 127.0.0.1
# Allow from ::1
# </IfModule>
Require all granted
</Directory>
<Directory /usr/share/phpMyAdmin/setup/>
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
Require ip 127.0.0.1
Require ip ::1
</RequireAny>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
</IfModule>
</Directory>
# These directories do not require access over HTTP - taken from the original
# phpMyAdmin upstream tarball
#
<Directory /usr/share/phpMyAdmin/libraries/>
Order Deny,Allow
Deny from All
Allow from None
</Directory>
<Directory /usr/share/phpMyAdmin/setup/lib/>
Order Deny,Allow
Deny from All
Allow from None
</Directory>
<Directory /usr/share/phpMyAdmin/setup/frames/>
Order Deny,Allow
Deny from All
Allow from None
</Directory>
# This configuration prevents mod_security at phpMyAdmin directories from
# filtering SQL etc. This may break your mod_security implementation.
#
#<IfModule mod_security.c>
# <Directory /usr/share/phpMyAdmin/>
# SecRuleInheritance Off
# </Directory>
#</IfModule>
重启Apache:
systemctl restart httpd.service
访问phpMyAdmin输入地址 http://192.168.0.100/phpmyadmin/:
注:以上图片上传到红联Linux系统教程频道中。