Amazon Linux AMI 2015.09 (HVM)平台搭建lamp


更新yum

yum update

安裝Apache:

yum install -y httpd

安裝完之后,重新啟動

service httpd restart

將Apache設置為開機啟動

chkconfig httpd on

要查看httpd服務的啟動狀態

chkconfig --list httpd

安裝MySQL:

yum install mysql mysql-server 

啟動MySQL

service mysqld start

將MySQL設置為開機啟動

chkconfig mysqld on

給root賬戶設置密碼

mysql_secure_installation 

根據提示輸入2次密碼,就設置成功了。注意,在設置過程中,會提示刪除是否anonymous用戶,是否拒絕root的遠程訪問,是否刪除測試用的數據庫等,這些都需要根據自己的實際情況進行選擇。最后出現:Thanks for using MySQL!,設置密碼成功了。

重新啟動

service mysqld restart

安裝PHP:

yum install php

安裝完之后重新啟動Apache

service httpd restart

使用命令 yum search php來查看PHP的組件,選擇需要的模塊進行安裝:

yum install php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml
php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt

安裝完之后,重啟Apache

service httpd restart

重啟MySQL

service mysqld restart

配置Apache

  • 修改Apache配置文件:vi
  • /etc/httpd/conf/httpd.conf,並在文件中查找下面所在行,進行修改
  • (查找可以在vi的一般模式下輸入“/要查找的字符”進行查找):
  • ServerTokens OS 修改為:ServerTokens Prod
  • (在出現錯誤頁的時候不顯示服務器操作系統的名稱)
  • ServerSignature On 修改為:ServerSignature Off
  • (在錯誤頁中不顯示Apache的版本)
  • Options Indexes FollowSymLinks 修改為:Options Includes ExecCGI FollowSymLinks
  • (允許服務器執行CGI及SSI,禁止列出目錄)
  • #AddHandler cgi-script .cgi 修改為:AddHandler cgi-script .cgi .pl
  • (允許擴展名為.pl的CGI腳本運行)
  • AllowOverride None 修改為:AllowOverride All
  • (允許.htaccess)
  • AddDefaultCharset UTF-8 修改為:AddDefaultCharset GB2312
  • (添加GB2312為默認編碼)
  • Options Indexes MultiViews FollowSymLinks 修改為:Options MultiViews FollowSymLinks
  • (不在瀏覽器上顯示樹狀目錄結構)
  • DirectoryIndex index.html index.html.var 修改為:DirectoryIndex index.html index.htm
  • Default.html Default.htm index.php Default.php index.html.var
  • (設置默認首頁文件增加index.php)
  • KeepAlive Off 修改為:KeepAlive On
  • (允許程序性聯機)
  • MaxKeepAliveRequests 100 修改為:MaxKeepAliveRequests 1000
  • (增加同時連接數)

修改好之后保存配置,重新啟動

service httpd restart

建議刪除默認的測試頁面:

rm -f /etc/httpd/conf.d/welcome.conf /var/www/error/noindex.html

第二步:配置PHP

修改PHP配置文件:

vi /etc/php.ini

以下需要修改的行的位置可以通過vi的查找命令來查找:

date.timezone = PRC #把前面的分號去掉,改為date.timezone = PRC
disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,
proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,
popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,
checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,
posix_get_last_error,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid,
posix_getgrgid,posix_getgrnam,
posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid,posix_getppid,
posix_getpwnam,posix_getpwuid,posix_getrlimit,posix_getsid,posix_getuid,posix_isatty,
posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,
posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname
#列出PHP可以禁用的函數,如果某些程序需要用到這個函數,可以刪除,取消禁用。
expose_php = Off #禁止顯示php版本的信息
display_errors = OFF #關閉錯誤提示
register_globals = OFF #關閉注冊全局變量
magic_quotes_gpc = On #打開magic_quotes_gpc來防止SQL注入
log_errors = On #記錄錯誤日志
error_log = /var/log/php/error_log.log
#設置錯誤日志存放目錄,文件必須允許apache用戶的和組具有寫的權限(注意,在修改之前,要先創建文 
件/var/log/php/error_log.log,然后在修改其屬性,使其屬於apache用戶和用戶組。
chown apache /var/log/php/error_log.log和chgrp apache /var/log/php/error_log.log
open_basedir = .:/tmp/
#設置表示允許訪問當前目錄(即PHP腳本文件所在之目錄)和/tmp/目錄,可以防止php木馬跨站

經過安裝和配置之后,web服務器基本上已經搭建起來了,可以對其進行訪問。

測試篇
在目錄/var/www/html下:

cd /var/www/html

創建php文件:

vi index.php

<?php
phpinfo();
?>

那么,在瀏覽器中輸入本機地址的時候,就可以訪問到剛才創建的index.php網頁文件了。

注意:apache的默認程序目錄是:/var/www/html,網頁文件放在這里就可以被訪問到。需要保證這個目
錄是屬於用戶apache和用戶組apache的。

chown -R apache:apache /var/www/html

MySQL的數據庫目錄是:/var/lib/mysql

寫到這里,LAMP就安裝配置完畢了,瀏覽器只要輸入服務器的IP地址或者是域名的話,就能夠訪問到服務器上的網頁文件了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM