LAMP環境(linux+apache+mysql+php)配置

餘二五發表於2017-11-23

1、理論部分

LAMP 是Linux Apache MySQL PHP的簡寫,其實就是把Apache, MySQL以及PHP安裝在Linux系統上,組成一個環境來執行php的指令碼語言。

本文是測試Apache與PHP結合和創,搭建方法採用非常標準手法(開啟SELinux),初學者可以直接使用。

2、實驗部分

2.1、實驗環境

lampSer:

hostname=lamp

ipaddress=10.168.0.170


client:

hostnmae=client

ipaddress=10.168.0.8

2.2、yum源的安裝

In lampSer

1
2
yum -y install httpd php mysql mysql-server php-mysql
yum -y install policycoreutils-python

2.3、配置部分

In lampSer

2.3.1、step1

注:如果你不想了解php的載入方式本步驟請直接跳過

檢查是否引入php模組(預設開啟),主配置檔案:

1
grep ^Include /etc/httpd/conf/httpd.conf

包含如下內容:

1
Include conf.d/*.conf

檢視PHP支援模組配置檔案:

1
less /etc/httpd/conf.d/php.conf

包含如下內容:

1
2
3
4
5
6
7
8
9
10
11
<IfModule prefork.c>
  LoadModule php5_module modules/libphp5.so
</IfModule>
<IfModule worker.c>
  LoadModule php5_module modules/libphp5-zts.so
</IfModule>
 
AddHandler php5-script .php
AddType text/html .php
 
DirectoryIndex index.php

2.3.2、step2

啟動httpd&mysqld服務:

1
2
3
4
/etc/init.d/httpd start
chkconfig httpd on
/etc/init.d/mysqld start
chkconfig mysqld on

注:關於MySQL的安全配置請執行,這裡不再詳述!

1
mysql_secure_installation

2.3.3、step3

配置httpd服務

1)vim編輯/etc/httpd/conf/httpd.conf

啟用並更改ServerName(去掉ServerName前面的#)

啟用NameVirtaulHost(去掉ServerName前面的#)

1
2
ServerName www.cmdschool.org:80
NameVirtualHost *:80

2)新建虛擬目錄:

1
mkdir /var/www/www.cmdschool.org

3)新增測試頁面:

1
echo `<?php phpinfo(); ?>` /var/www/www.cmdschool.org/index.php

4)確保selinux是Enforcing狀態:

1
getenforce

5)恢復預設的selinux type:

1
restorecon -RFvv /var/www/www.cmdschool.org/

顯示如下:

1
restorecon reset /var/www/www.cmdschool.org/index.php context unconfined_u:object_r:httpd_sys_content_t:s0->system_u:object_r:httpd_sys_content_t:s0

6)檢查當前的selinux type:

1
ll -dZ /var/www/www.cmdschool.org/

7)設定虛擬目錄:

vim編輯/etc/httpd/conf.d/www.cmdschool.org.conf

1
2
3
4
5
6
7
8
9
<VirtualHost *:80>
    DocumentRoot /var/www/www.cmdschool.org
    ServerName www.cmdschool.org
</VirtualHost>
 
<Directory /var/www/www.cmdschool.org>
    Options All
    AllowOverride all
</Directory>

8)重啟httpd服務:

1
/etc/init.d/httpd restart

2.3.4、step4

設定防火牆:

vim編輯/etc/sysconfig/iptables

1
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

重啟防火牆:

1
/etc/init.d/iptables restart

2.4.5、step5

In client

測試伺服器

1)vim編輯/etc/hosts

確保包含www.cmdschool.org的指向10.168.0.170的唯一值:

1
10.168.0.170 www.cmdschool.org

2)curl測試

1
curl www.cmdschool.org
本文轉自 tanzhenchao 51CTO部落格,原文連結:http://blog.51cto.com/cmdschool/1708325,如需轉載請自行聯絡原作者


相關文章