搭建基於LAMP的web應用程序平臺

LAMP的介紹

Linux+Apache+Mysql/MariaDB+Perl/PHP/Python一組常用來搭建動態網站或者服務器的開源軟件,本身都是各自獨立的程序,但是因爲常被放在一起使用,擁有了越來越高的兼容度,共同組成了一個強大的Web應用程序平臺。

LAMP的搭建過程

 安裝次序:httpd-->mysql-->php

                因爲php的編譯安裝依賴於httpd的開發環境,以及MySQL的開發環境,所以php最後安裝

    一、準備環境

            首先安裝開發工具和服務器

                yum groupinstall "Development Tools" "Server Platform Development" 

                yum install -y pcre-devel

                yum install -y gcc

                yum install openssl

                yum install openssl-devel

            其次下載arp和api-util

                下載地址:arp.apache.org

                編譯安裝:

[root@localhost ~]# tar xf apr-1.5.2.tar.bz2 
[root@localhost ~]# cd apr-1.5.2
[root@localhost apr-1.5.2]# ./configure --prefix=/usr/local/apr
[root@localhost apr-1.5.2]# make && make install
[root@localhost ~]# tar xf apr-util-1.5.4.tar.bz2 
[root@localhost ~]# cd apr-util-1.5.4
[root@localhost apr-util-1.5.4]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
[root@localhost apr-util-1.5.4]# make && make install

    二安裝httpd

                安裝版本:httpd-2.2.31.tar.bz2

                下載地址:httpd.apache.org

                安裝過程:

                    1)安裝

tar xf httpd-2.2.31.tar.bz2
cd httpd-2.2.31.tar.bz2
[root@localhost httpd-2.2.31]# ./configure --prefix=/usr/local/apache22 --sysconfdir=/etc/httpd22 --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-modules=most  --enable-mpms-shared=all --with-mpm=prefork
[root@localhost httpd-2.2.31]# make && make install

--prefix=/usr/local/apache22:安裝路徑 

-sysconfdir=/etc/httpd22:配置文件路徑 

--enable-so:讓apache核心裝載DSO

--enable-ssl:支持ssl

--enable-cgi:支持cgi

--enable-rewrite:支持重寫功能

--with-zlib:支持數據壓縮

--with-pcre:支持pcre正則

--with-apr=/usr/local/apr:apr位置

--with-apr-util=/usr/local/apr-util:apr-util位置

--with-modules=most:支持更多的模塊

--enable-mpms-shared=all:支持mpms的所有模式

--with-mpm=prefork:設置mpm模式爲prefork

     2)配置PATH            

[root@localhost ~]# cat /etc/profile.d/httpd22.sh
export PATH=/usr/local/apache22/bin:$PATH

      3)配置服務腳本

  [root@localhost ~]# cp /etc/rc.d/init.d/httpd  /etc/rc.d/init.d/httpd22 #直接拷貝原先系統中的腳本修改
    [root@localhost ~]# cat /etc/rc.d/init.d/httpd22
prog=httpd
httpd=${HTTPD-/usr/local/apache22/bin/httpd}
pidfile=${PIDFILE-/usr/local/apache22/logs/${prog}.pid}
#pidfile=${PIDFILE-/var/run/${prog}.pid}
lockfile=${LOCKFILE-/var/lock/subsys/${prog}}
RETVAL=0

注意:httpd-2.2.31版本的httpd.pid位置有改動,因此需要修改pidfile文件位置

    啓動服務即可正常運行,此時可用瀏覽器查看是否正常,注意,用外網瀏覽,需要關閉SELinux,配置iptable。

安裝mysql(mariadb)

   

通用二進制格式安裝MySQL:(下載地址:https://mariadb.org)

        安裝過程:

    1)新建mysql組及用戶:          

 groupadd -r mysql
  useradd -r -g mysql mysql

              2).爲mysql解壓       

 tar xf mariadb-5.5.36-linux-i686.tar.gz -C /usr/local #必須解壓這裏
     cd /usr/local
     ln -sv mariadb-5.5.36-linux-i686 mysql  #必須建立連接

     3).創建需要的目錄及修改權限

  cd mysql/
 mkdir mydata   #創建數據的存放位置
  pvcreate /dev/sda3
  vgcreate myvb /dev/sda3
  lvcreate -L 10G -m mylv  #創建邏輯卷
   mkfs -t ext4 /dev/myvg/mylv  
  vim /etc/fstab
  /dev/myvg/mylv /mydata xfs defaults  #將mydata目錄掛載至新建的邏輯捲上
  mount -a
  mount
  mkdir /mydata/data
  chown -R mysql:mysql /mydata/data  #修改存放數據目錄的用戶及權限

   4)初始化mysql

scripts/mysql_install_db  --help
 scripts/mysql_install_db --user=mysql --datadir=/mydata/data  #將用戶設爲mysql,數據存在於/mydata/data目錄下


  5) 驗證:

          

 ls /mydata/data  #如果有文件,說明創建成功

    6).配置文件:

[root@localhost mysql]# mkdir /etc/mysql
 [root@localhost mysql]# cp support-files/my-large.cnf /etc/mysql/my.cnf
  [root@localhost mysql]# vim /etc/mysql/my.cnf 
 
[mysqld] 
port = 3306 
socket = /tmp/mysql.sock
 skip-external-locking key_buffer_size = 256M
 max_allowed_packet = 1M
 table_open_cache = 256
 sort_buffer_size = 1M
 read_buffer_size = 1M 
read_rnd_buffer_size = 4M 
myisam_sort_buffer_size = 64M
 thread_cache_size = 8 
query_cache_size= 16M
 # Try number of CPU's*2 for thread_concurrency 
thread_concurrency = 8
 datadir=/mydata/data
 innodb_file_per_table=on
#
innodb_file_per_table參數,可以修改InnoDB爲獨立表空間模式,每個數據庫的每個表都會生成一個數據空間


#注意:mysql解壓目錄下有support-files目錄,通過此目錄可設置大部分配置文件


服務腳本:

cp support-files/mysql.server /etc/rc.d/init.d/mysqld

      chkconfig --add mysqld

      service mysqld start

     ls /mydata/data 

     vim /etc/profile.d/mariadi.sh     加bin

    exprot PATH=/usr/local/mysql/bin:$PATH

      mysql 

SHOW DATABASES 顯示存在的數據庫

至此,mariaDB的安裝完成。

   

 四、模塊化方式安裝php:

  

yum install libxml2-devel libmcrypt-devel bzip2-devel
 ./configure --help |less
   ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql/
   --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql-config
   --enable-mbstring --with-freetype-dir --with-jpeg-dir
   --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --with-apxs2=/usr/local/apache22/bin/apxs
   --with-mcrypt --with-bz2  --with-config-file-path=/etc/php/php.ini
   --with-config-file-scan-dir=/etc/php/php.d/

   需要自動創建配置文件: 

mkdir -pv /etc/php/php.d
cp php.ini-production /etc/php/php.ini

       配置httpd程序

    

  cd /etc/httpd22/
      vim httpd22
      AddType application/x-httpd-php .php
       AddType application/x-httpd-php-source .phps
      LoadMoudle php5_module modules/libphp5.so
      DirectoryIndex index.php index.html

    配置index.html   

  <?php
      $conn=mysql_cnnect('127.0.0.1','root','');
      if ($conn)
      echo "success";
      else
      echo "failure";
      mysql_close()
      
      <?php>

 部署:phpMyAdmin

       爲MySQL用戶設定用戶:

       1.SET PASSWORD FOR‘username'@'host'=PASSWORD('your_password')

       2.update mysql.user set password=password('you_password') where user="your user"

    

  
      mysql
      use mysql
      upadate user set password=password('magedu') where user='root'
      select User,Host,Password FROM user;
      FLUSE PRIVILEGES

     mysql -uroot -p 鏈接mysql,重新登陸

 

unzip phpAyAdmin-4.0.5-all-languages.zip
 cd phpAyAdmin-4.0.5-all-languages
 mv * /usr/local/apache/htdocs/pma
 cd /usr/local/apache/htdocs/pma
 cp config.sample.inc.php config.inc.php

壓力測試工具xcache的安裝

   

 /usr/local/php/bin/phpize
 ./configure --help 
 ./conifgure --with-php-config=/usr/local/php/bin/php-config
 make && make install
//編譯完成最後有個擴展路徑/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/記錄下來
[root@localhost xcache-3.1.2]# cp xcache.ini /etc/php/php.d/
[root@localhost xcache-3.1.2]# cd /etc/php/php.d
[root@localhost php.d]# vim xcache.ini
[xcache-common]
;; non-Windows example:
extension =/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/xcache.so #改路徑
;; Windows example:
; extension = php_xcache.dll

重啓httpd服務,配置完成



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章