LAMP平台部署,lamp部署

來源:互聯網
上載者:User

LAMP平台部署,lamp部署
LAMP平台的概述

LAMP環境指令碼部署:https://github.com/spdir/ShellScripts/tree/master/lamp

LAMP的介紹:百度百科

LAMP平台的構成組件:

  • Linux作業系統
  • Apache
  • MySQL/mogodb
  • PHP/Perl/Python

LAMP平台的優勢:

  • 成本低廉
  • 可定製性
  • 易於開發
  • 方便易用

本文構成組件:Linux(CentOS6.5)、Apache、MySQL、PHP

編譯安裝Apache(httpd)服務

Apache介紹:百度百科

Apache的特點:開放原始碼、跨平台應用、支援各種Web程式設計語言、模組化設計、運行非常穩定、良好的安全性

Apache源碼包:http://httpd.apache.org/download.cgi

安裝步驟:

1.檢測伺服器是否存在RPM方式安裝的httpd服務(防止連接埠衝突)

rpm -e httpd --nodeps

 2.編譯安裝httpd源碼包

tar zxvf httpd-2.2.17.tar.gz -C /usr/src/    #解包cd /usr/src/httpd-2.2.17/./configure --prefix=/usr/local/httpd/ --enable-so --enable-rewrite --enable-charset-lite --enable-cig    #配置make && make install    #編譯及安裝

配置參數含義:

  • --prefix:指定將httpd服務程式安裝到那個目錄下,如/usr/local/httpd;
  • --enable-so:啟用動態載入模組支援,使httpd具備進一步擴充功能的能力;
  • --enable-rewrite:啟用網頁地址修正功能,用於網站最佳化及目錄遷移維護;
  • --enable-charset-lite:啟動字元集支援,以便支援使用各種字元編碼的網頁;
  • --enable-cgi:啟用CGI指令碼程式支援,便於擴充網站的應用訪問能力;

httpd服務的主要目錄結構:

  • 服務類別目錄:/usr/local/httpd/
  • 主設定檔:/usr/local/httpd/conf/httpd.conf
  • 網頁目錄:/usr/local/httpd/htdocs/
  • 服務指令碼:/usr/local/httpd/bin/apachectl
  • 執行程式:/usr/local/httpd/bin/httpd
  • 訪問日誌: /usr/local/httpd/log/access_log
  • 錯誤記錄檔: /usr/local/httpd/log/error_log

3.最佳化執行路徑

ln -s /usr/local/httpd/bin/* /usr/local/bin

4.添加httpd到系統服務

cp /usr/local/httpd/bin/apachectl /etc/init.d/httpdcd /etc/init.d/chmod +x httpdvim /etc/init.d/httpd  #在設定檔中添加
1 #!/bin/sh2 #chkconfig:2345 81 25 //服務識別參數,在運行層級2345中啟動,啟動和關閉的順序為81,253 #description:This is Apache Server //服務描述資訊4 #省略內容......修改httpd檔案chkconfig --add httpd  #將httpd添加為系統服務
chkconfig httpd on  #查看httpd服務的自啟動狀態

常用的全域配置參數(httpd.conf)

 1 ServerRoot:服務類別目錄 2 ServerAdmin:管理員郵箱 3 User:運行服務的使用者身份 4 Group:運行服務的組身份 5 ServerName:網站伺服器的網域名稱 6 DocumentRoot:網頁文檔的根目錄 7 Listen:監聽的IP地址、連接埠號碼 8 PidFile:儲存httpd進程PID號的檔案 9 DirectoryIndex:預設的索引頁檔案10 ErrorLog:錯誤記錄檔檔案的位置11 CustomLog:訪問記錄檔的位置12 LogLevel:記錄日誌的層級,預設為warn13 Timeout:網路連接逾時,預設為300秒14 KeepAlive:是否保持串連,可選On或Off15 MaxKeepAliveRequests:每次串連最多請求檔案數16 KeepAliveTimeout:保持串連狀態時的逾時時間17 Include:需要包含進來的其他設定檔 

地區設定項目

<Directory />            //定義"/"目錄地區的開始    Options FollowSymLinks    //控制選項,允許使用符號連結    AllowOverride None        //不允許隱含控制檔案中的覆蓋配置    Order deny,allow        //存取控制策略的應用順序    Deny from all        //禁止任何人訪問此地區</Directory>            //定義"/"目錄地區的結束

部署AWStats網站訪問統計分析系統:http://www.cnblogs.com/zhichaoma/p/7487766.html

虛擬機器主機配置:http://www.cnblogs.com/zhichaoma/p/7489043.html

網站訪問限制:http://www.cnblogs.com/zhichaoma/p/7488898.html

編譯安裝MySQL服務

MySQL介紹:百度百科

MySQL源碼包: https://dev.mysql.com/downloads/

安裝步驟:

1.準備工作

卸載RPM方式安裝的mysql-server、mysql軟體包(避免連接埠衝突、程式衝突)

rpm -e mysql-server mysql

使用rpm或者yum的方式安裝ncurses-devel依賴包

rpm -ivh ncurses-devel-5.7-3.20090208.el6.x86_64.rpm或者yum -y install ncurses-devel

 編譯安裝cmake包

tar zxvf cmake-2.8.6.tar.gz -C /usr/src/cd /usr/src/cmake-2.8.6/./configure && gmake && gmake install

 建立運行使用者

#刪除系統原有的mysql帳號userdel mysql建立新的mysql帳號useradd -M -s /sbin/nologin mysql

編譯安裝mysql包

tar zxvf mysql-5.5.22.tar.gz -C /usr/src/    #解包cd /usr/src/mysql-5.5.22/cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc/ -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWHIT_CHARSETS=all     #配置make && make install     #編譯並安裝

配置參數含義:

  • -DCMAKE_INSTALL_PREFIX:指定將mysql資料庫程式安裝到某目錄下,如/usr/local/mysql;
  • -DSYSCONFDIR:指定初始化參數檔案目錄;
  • -DDEFAULT_CHARSET:指定預設使用的字元集編碼,如,utf8;
  • -DDEFAULT_COLLATION:指定預設使用的字元集校對規則,utf8_general_ci 是適用於UTF-8字元集的通用規則;
  • -DWHIT_CHARSETS=all:指定額外支援的其它字串編碼;

 2.安裝後的調整

對資料庫目錄進行調整

chown -R mysql:mysql /usr/local/mysql/

 建立設定檔

rm -rf /etc/my.cnf    //如果原來etc檔案下下有my.cnf檔案可以刪除cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf

 初始化資料庫

/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

 最佳化執行路徑

ln -s /usr/local/mysql/bin/* /usr/local/bin/

 添加系統服務

cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld    chmod +x /etc/rc.d/init.d/mysqld chkconfig --add mysqldchkconfig mysqld onservice mysqld start

初始化資料庫管理員帳號root的密碼

mysqladmin -u root password "123.com"

 資料庫的基本操作:

構建PHP運行環境

PHP源碼包:http://php.net/downloads.php

安裝步驟:

 1.準備工作

卸載RPM方式安裝的php、php-cli、php-ldap、php-common、php-mysql等軟體包(避免程式衝突)

rpm -e php php-cli php-ldap php-common php-mysql --nodeps

使用rpm或者yum的方式安裝 zlib-devel 和 libxml2-devel 依賴包

rpm -ivh zlib-devel-1.2.3-29.el6.x86_64.rpmrpm -ivh libxml2-devel-2.7.6-14.el6.x86_64.rpm或者yum -y install zlib-develrpm -y install libxml2-devel

 2.安裝php加密擴充外掛程式(libmcrypt、mhash、mcrypt)**順序安裝

安裝libmcrypt程式

:http://mcrypt.hellug.gr/lib/

tar zxvf libmcrypt-2.5.8.tar.gz -C /usr/src/cd /usr/src/libmcrypt-2.5.8/./configure && make && make installln -s /usr/local/lib/libmcrypt.* /usr/bin/

 安裝mhash程式

:https://sourceforge.net/projects/mhash/files/mhash/

tar zxf mhash-0.9.9.9.tar.gz -C /usr/src/cd /usr/src/mhash-0.9.9.9/./configuremake && make installln -s /usr/local/lib/libmhash.* /usr/lib/

 安裝mcrypt程式  

:https://sourceforge.net/projects/mcrypt/files/MCrypt/2.6.8/

tar zxf mcrypt-2.6.8.tar.gz -C /usr/src/cd /usr/src/mcrypt-2.6.8/./configureexport LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH./configuremake && make install

3.編譯安裝PHP

tar zxf php-5.3.28.tar.gz -C /usr/src/cd /usr/src/php-5.3.28/./configure --prefix=/usr/local/php5 --with-mcrypt --with-apxs2=/usr/local/httpd/bin/apxs     --with-mysql=/usr/local/mysql --with-config-file-path=/usr/local/php5 --enable-mbstring     --enable-socketsmake && make install

配置參數含義:

  • --prefix:指定將PHP程式安裝到那個目錄下,如/usr/local/php5;
  • --with-mcrypt:載入資料加密等擴充工具支援;
  • --with-apxs2:設定Apache HTTP Server 提供的apxs模組支援程式的檔案位置;
  • --with-mysql:設定MySQL資料庫服務程式的安裝位置;
  • --with-config-file-path:設定PHP的設定檔php.ini將要存放的位置;
  • --enable-mbstring:啟用多字串功能,以便支援中文等代碼;
  • --enable-sockets:支援通訊端;

4.php.ini檔案的調整

cp /usr/src/php-5.3.28/php.ini-development  /usr/local/php5/php.inivim /usr/local/php5/php.ini  #在設定檔中修改
default_charset = "utf-8" //設定預設字元集utf-8;file_uploads = On //允許通過PHP網頁上傳檔案;upload_max_filesize = 2M //允許上傳的檔案大小限制;max_file_uploads = 20 //每個HTTP最多允許請求上傳的檔案數;post_max_size = 8M //每次通過表單post提交的資料量限制;short_open_tag = on //允許識別PHP短文法標記,<?...?>;修改php.ini設定檔

5.添加ZendGuardLoader最佳化模組

ZendGuardLoader包下載:http://www.zend.com/en/products/guard/downloads#Linux

進一步提高PHP程式的執行效率,最佳化頁面的載入速度

tar zxf ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz -C /usr/src/cd /usr/src/ZendGuardLoader-php-5.3-linux-glibc23-i386/php-5.3.x/cp ZendGuardLoader.so /usr/local/php5/lib/php    vim /usr/local/php5/php.ini  #添加設定檔
1 #在末尾添加2 zend_extendsion=/usr/local/php/lib/php/ZendGuardLoader.so3 zned_loader=1修改php.ini設定檔

6.httpd.conf配置調整

vim /usr/local/httpd/conf/httpd.conf  #修改配置httpd的設定檔
LoadModule php5_module modules/libphp5.so #如果php安裝成功,則會自動產生此檔案AddType application/x-httpd-php .php #添加DirectoryIndex index.php index.html #修改修改httpd的設定檔

 service httpd restart  #重新啟動httpd

7.測試

測試一:測試是否可以正常解析php檔案(php測試代碼)

1 <?php2 phpinfo();3 ?>

測試二:測試php網頁是否可以正常串連資料庫服務(php測試代碼)

1 <?php2 $link=mysql_connect('localhost','root','123.com');3 if ($link) echo "資料庫連接成功";4 mysql_close();5 ?>

8.部署phpMyAdmin(採用php開發)

tar zxf phpMyAdmin-2.11.11.3-all-languages.tar.gzmv phpMyAdmin-2.11.11.3-all-languages /usr/local/httpd/htdocs/phpMyAdmin  #將源碼放置網站的根目錄下cd /usr/local/httpd/htdocs/phpMyAdmin/cp config.sample.inc.php config.inc.php  #建立設定檔

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.