LANP塔建之Discuz論壇

LAMP="Linux Apache Mysql PHP/Python"php

Linux常指代系統,沒有明確規定版本,如CentOS/Ubuntu/Debian等均可以做爲服務器系統html

Apache是Web解析的引擎,用於將網頁源代碼文件處理成瀏覽器可轉換的頁面文件node

MySQL數據庫,MySQL是關係型數據庫,以表的形式來保存數據,其中數據存儲是以行和列的方式存儲mysql

PHP是網頁腳本語言,用於生成頁面框架,不可單獨使用,通常做爲Apache的語言擴展(使Apache能夠支持更多頁面語言)linux

-自定義僅主機模式,掛載光盤nginx

源碼包上傳到虛擬機c++

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33 #靜態IP
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.18.6
NETMASK=255.255.255.0
GATEWAY=192.168.18.0
:wq #退出
[root@localhost ~]# mkdir /media/dvd #光盤
[root@localhost ~]# mount /dev/cdrom /media/dvd/
mount: /dev/sr0 is write-protected, mounting read-only
[root@localhost ~]# mkdir /yum.repo.bak
[root@localhost ~]# mv /etc/yum.repos.d/* /yum.repo.bak/
[root@localhost ~]# vim /etc/yum.repos.d/yum.repo
[localyum]
name=yum
baseurl=file:///media/dvd
enabled=1
gpgcheck=0
:wq #退出

HTTP安裝:
在服務端配置本地yumsql

[root@localhost ~]# mkdir /media/dvd
    [root@localhost ~]# mount /dev/cdrom /media/dvd/
    mount: /dev/sr0 is write-protected, mounting read-only
    [root@localhost ~]# cd /etc/yum.repos.d/
    [root@localhost yum.repos.d]# mkdir /yum.repo.bak
    [root@localhost yum.repos.d]# mv * /yum.repo.bak/
    [root@localhost yum.repos.d]# ls
    [root@localhost yum.repos.d]# vim yum.repo
     [localyum]
    name=yum           #名稱
    baseurl=file:///media/dvd      #指定路徑
    enabled=1
    gpgcheck=0

    [root@localhost ~]# yum -y install gcc gcc-c++         #安裝編譯工具

LANP塔建之Discuz論壇

將httpd的源碼包上傳到虛擬機中數據庫

[root@localhost ~]# tar zxf httpd-2.2.17.tar.gz -C /usr/src    #解壓到/usr/src
[root@localhost ~]# cd /usr/src/httpd-2.2.17
[root@localhost httpd-2.2.17]# ./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi       #配置

LANP塔建之Discuz論壇

[root@localhost httpd-2.2.17]# make && make install   #編譯

LANP塔建之Discuz論壇

[root@localhost ~]# ln -s /usr/local/httpd/bin/* /usr/local/bin  #優化路徑
[root@localhost httpd-2.2.17]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd #添加系統服務

[root@localhost ~]# vim /etc/init.d/httpd # 添加內容到 第3第4行
#!/bin/sh
#
#chkconfig:35 25 25  #第3行35爲開機順序  25 爲運行等級
#description:haha     #4行  註釋爲何都行
:wq   #退出
[root@localhost ~]# chkconfig --add httpd

mysql安裝:apache

rpm -q mysql-server mysql   #檢查有無自帶的mysql包
package mysql-server is not installed
package mysql is not installed
#這裏沒有
mkdir /media/dvd   #掛載光盤
mount /dev/cdrom /media/dvd/
mount: /dev/sr0 is write-protected, mounting read-only
cd /media/dvd/Packages/     #安裝所需的軟件
rpm -ivh ncurses-devel-5.9-13.20130511.el7.x86_64.rpm 
warning: ncurses-devel-5.9-13.20130511.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
     1:ncurses-devel-5.9-13.20130511.el7################################# [100%]
cd
ls       #找到cmake包和mysql包安裝的目錄
anaconda-ks.cfg  cmake-2.8.6.tar.gz  initial-setup-ks.cfg  mysql-5.5.22.tar.gz
 tar zxf cmake-2.8.6.tar.gz -C /usr/    #指定解壓到/usr目錄下
 cd /etc/yum.repos.d/   #須要下載編譯工具因此先配置yum
 mkdir /yum.repo.bak    #建立存放yum本來包的目錄
 mv * /yum.repo.bak/    #移動全部包到新建的目錄
 ls     #查看沒有1了
 vim yum.repo       #配置yum
[localyum]
name=yum    #名稱
baseurl=file:///media/dvd   #路徑
enabled=1
gpgcheck=0
:wq
 yum -y install gcc gcc-c++ #安裝
Complete!
 cd /usr/cmake-2.8.6/
 ./configure

LANP塔建之Discuz論壇

gmake && gmake install

LANP塔建之Discuz論壇

groupadd mysql
 useradd -M -s /sbin/nologin mysql -g mysql     
 cd 
 tar zxf mysql-5.5.22.tar.gz -C /usr/src/
 cd /usr/src/mysql-5.5.22/
 cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFIGDIR=/etc/ -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSET=all

1指定安裝目錄
2指定初始化參數文件目錄、
3指定默認使用的字符集編碼
4指定字符集校正規格
utf8_general_ci 額外的字符集編碼
LANP塔建之Discuz論壇

make -j 2 && make install -j 2

LANP塔建之Discuz論壇

chown -R mysql:mysql /usr/local/mysql/
 rm -rf /etc/my.cnf
 cp 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

LANP塔建之Discuz論壇
#表明成功了

echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
 . /etc/profile    #.點後有空格
 cp support-files/mysql.server /etc/rc.d/init.d/mysqld
 chmod a+x /etc/rc.d/init.d/mysqld 
 chkconfig --add mysqld

PHP安裝:

[root@localhost ~]# rpm -e php php-cli php-ldap php-commom php-mysql --nodeps
    error: package php is not installed
    error: package php-cli is not installed
    error: package php-ldap is not installed
    error: package php-commom is not installed
    error: package php-mysql is not installed
    [root@localhost ~]# cd /media/dvd/Packages/
    [root@localhost Packages]# rpm -ivh libxml2-2.9.1-6.el7_2.3.x86_64.rpm
    warning: libxml2-2.9.1-6.el7_2.3.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
    Preparing... ################################# [100%]
    package libxml2-2.9.1-6.el7_2.3.x86_64 is already installed
    [root@localhost Packages]# rpm -ivh zlib-devel-1.2.7-17.el7.x86_64.rpm
    warning: zlib-devel-1.2.7-17.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
    Preparing... ################################# [100%]
    Updating / installing...
    1:zlib-devel-1.2.7-17.el7 ################################# [100%]
    [root@localhost Packages]# rpm -ivh xz-devel-5.2.2-1.el7.x86_64.rpm
    warning: xz-devel-5.2.2-1.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
    Preparing... ################################# [100%]
    Updating / installing...
    1:xz-devel-5.2.2-1.el7 ################################# [100%]
    [root@localhost Packages]# rpm -ivh libxml2-devel-2.9.1-6.el7_2.3.x86_64.rpm
    warning: libxml2-devel-2.9.1-6.el7_2.3.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
    Preparing... ################################# [100%]
    Updating / installing...
    1:libxml2-devel-2.9.1-6.el7_2.3 ################################# [100%]
    [root@localhost Packages]# cd
    [root@localhost ~]# tar zxf libmcrypt-2.5.8.tar.gz -C /usr/src/
    [root@localhost ~]# cd /usr/src/libmcrypt-2.5.8/
    [root@localhost libmcrypt-2.5.8]# ./configure && make && make install
    [root@localhost libmcrypt-2.5.8]# ln -s /usr/local/lib/libmcrypt.* /usr/src/
    [root@localhost libmcrypt-2.5.8]# cd
    [root@localhost ~]# tar zxf mhash-0.9.9.9.tar.gz -C /usr/src/
    [root@localhost ~]# cd /usr/src/mhash-0.9.9.9/
    [root@localhost mhash-0.9.9.9]# ./configure && make && make install
    [root@localhost ~]# tar zxf mcrypt-2.6.8.tar.gz -C /usr/src/
    [root@localhost ~]# cd /usr/src/mcrypt-2.6.8/

直接配置會報錯 因此先修改一下環境變量

[root@localhost mcrypt-2.6.8]# export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
[root@localhost mcrypt-2.6.8]# ./configure
[root@localhost mcrypt-2.6.8]# make -j 2 && make install -j 2
[root@localhost mcrypt-2.6.8]# cd
[root@localhost ~]# tar zxf php-5.3.28.tar.gz -C /usr/src/
[root@localhost ~]# cd /usr/src/php-5.3.28/
[root@localhost php-5.3.28]# ln -s /usr/local/libmhash.* /usr/lib
[root@localhost 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
--prefix=/usr/local/php5 #路徑
--with-mcrypt --with-apxs2=/usr/local/httpd/bin/apxs
--with-mysql=/usr/local/mysql #mysql路徑
--with-config-file-path=/usr/local/php5 #配置文件路徑
--enable-mbstring #開啓字符串

creating main/internal_functions.c
creating main/internal_functions_cli.c

+--------------------------------------------------------------------+
| License: |
| This software is subject to the PHP License, available in this |
| distribution in the file LICENSE. By continuing this installation |
| process, you are bound by the terms of this license agreement. |
| If you do not agree with the terms of this license, you must abort |
| the installation process at this point. |
+--------------------------------------------------------------------+

Thank you for using PHP.

[root@localhost php-5.3.28]# make && make install

LANP塔建之Discuz論壇

[root@localhost php-5.3.28]# cp /usr/src/php-5.3.28/php.ini-development /usr/local/php5/php.ini
[root@localhost php-5.3.28]# vim /usr/local/php5/php.ini
vim 修改
226 short_open_tag = on #打開
782 ; PHP's default character set is set to empty.
783 ; http://php.net/default-charset
784 default_charset = "utf-8" #去掉註釋 改成 「utf-8」
:wq 退出
[root@localhost ~]# tar zxf ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz -C /usr/src/
[root@localhost ~]# cd /usr/src/ZendGuardLoader-php-5.3-linux-glibc23-x86_64/php-5.3.x/
[root@localhost php-5.3.x]# cp ZendGuardLoader.so /usr/local/php5/lib/php/
[root@localhost php-5.3.x]# vim /usr/local/php5/php.ini

增長如下倆行

zend_extension=/usr/local/php5/lib/php/ZendGuardLoader.so
zend_loader.enable=1
:wq #退出
[root@localhost php-5.3.x]# vim /usr/local/httpd/conf/httpd.conf
54 和168行進行增長和修改
51 # Example:
52 # LoadModule foo_module modules/mod_foo.so
53 LoadModule php5_module modules/libphp5.so
54 AddType application/x-httpd-php .php #空行新增一行
55 #
163 #
164 # DirectoryIndex: sets the file that Apache will serve if a directory
165 # is requested.
166 #
167 <IfModule dir_module>
168 DirectoryIndex index.html index.php #在此行增長
169 </IfModule>

:wq #退出
[root@localhost php-5.3.x]# systemctl restart httpd
[root@localhost php-5.3.x]# systemctl restart mysqld
[root@localhost php-5.3.x]# cd
[root@localhost ~]# vim /usr/local/httpd/htdocs/index.php
<?php
phpinfo();
?>
:wq #退出
[root@localhost ~]# firefox 192.168.18.6/index.php

訪問成功
LANP塔建之Discuz論壇

[root@localhost ~]# cd
    [root@localhost ~]# tar zxf phpMyAdmin-4.2.5-all-languages.tar.gz -C /usr/src/
    [root@localhost ~]# cd /usr/src/
    [root@localhost src]# mv phpMyAdmin-4.2.5-all-languages/ /usr/local/httpd/htdocs/phpMyAdmin
    [root@localhost src]# cd /usr/local/httpd/htdocs/phpMyAdmin/
    [root@localhost phpMyAdmin]# cp config.sample.inc.php config.inc.php
    [root@localhost phpMyAdmin]# mysqladmin -u root -p password '123'
    Enter password:
    [root@localhost phpMyAdmin]# mysql -u root -p
    Enter password:
    Welcome to the MySQL monitor. Commands end with ; or \g.
    Your MySQL connection id is 2
    Server version: 5.5.22-log Source distribution

    Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.

    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.

    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

    mysql> exit
    Bye

LANP塔建之Discuz論壇

登陸好了點執行
LANP塔建之Discuz論壇

[root@localhost ~]# vim /usr/local/httpd/htdocs/test.php
<?php
$link=mysql_connect('localhost','root','123');
if($link) echo "恭喜你,數據庫鏈接成功!!";
mysql_close();
?>
:wq #退出
[root@localhost ~]# firefox 192.168.18.6/test.php

LANP塔建之Discuz論壇

[root@localhost ~]# unzip Discuz_7.2_FULL_SC_UTF8.zip
[root@localhost ~]# mv upload/ /usr/local/httpd/htdocs/bbs
[root@localhost ~]# chown -R daemon:daemon /usr/local/httpd/htdocs/bbs/
[root@localhost ~]# systemctl restart httpd
[root@localhost ~]# systemctl start httpd

[root@localhost ~]# firefox 192.168.18.6/bbs/install

LANP塔建之Discuz論壇

LANP塔建之Discuz論壇

LANP塔建之Discuz論壇

LANP塔建之Discuz論壇

LANP塔建之Discuz論壇

LANP塔建之Discuz論壇

LANP塔建之Discuz論壇

[root@localhost ~]# netstat -anput | grep httpd
tcp6       0      0 :::80                   :::*                    LISTEN      81067/httpd

LANP塔建之Discuz論壇

#如退出進來出現上面現象執行下面步驟

[root@localhost ~]# firefox 192.168.18.6/bbs

nginx和apache的區別

nginx:

優勢:輕量級,對靜態文件處理較好,併發量高

缺點:對動態文件處理時,可能出現問題

nginx沒法處理php文件,但能夠找幫手幫他處理

apache:

優勢:對動態文件處理較好,穩定,安全

缺點:服務臃腫,運行效率低

謝謝閱讀

相關文章
相關標籤/搜索