Fedora 20 用户怎样安装apache/mysql/php (LAMP主机)

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,如果看到下面的页面,说明安装成功!

 

在Fedora系统中Apache默认根目录为 /var/www/html ,配置文件地址: /etc/httpd/conf/httpd.conf。其他配置文件目录 /etc/httpd/conf.d/

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/:

投稿作者 作者网站

评论

 
 

为您推荐


请支持IMCN发展!

谁在捐赠

微信捐赠 支付宝捐赠
微信捐赠 支付宝捐赠
ta的个人站点

发表文章4159篇

关注我的头条 不要放弃,百折不挠,坚强、自信。


微信公众号二维码

归档