1、下載MySQLphp
1.查看本身Linux系統是多少位的,而後決定下載多少位的MySQLhtml
uname -i
反饋:x86_64 64位 或者 i386 32位
2.使用yum安裝下載工具‘wget’mysql
yum install wget -y
3.切換到指定的目錄下,軟件包下載到該目錄下linux
cd /usr/local/src/
4.去MySQL官網下載MySQL,需註冊,找到合適的版本web
http://dev.mysql.com/downloads/mysql/
或者去搜狐的下載算法
http://mirrors.sohu.com/
64位下載軟件包sql
wget http://mirrors.sohu.com/mysql/MySQL-5.1/mysql-5.1.73-linux-x86_64-glibc23.tar.gz
32位下載軟件包數據庫
wget http://mirrors.sohu.com/mysql/MySQL-5.1/mysql-5.1.73-linux-i686-glibc23.tar.gz
下載apache
wget http://mirrors.sohu.com/mysql/MySQL-5.5/mysql-5.5.47-linux2.6-x86_64.tar.gz
5.解壓vim
tar zxvf mysql-5.5.47-linux2.6-x86_64.tar.gz
6.把解壓好的MySQL放在MySQL目錄下
mv mysql-5.5.47-linux2.6-x86_64.tar.gz /usr/local/mysql
7.建立MySQL用戶,並不容許登陸
useradd -s /sbin/nologin mysql
8.建立數據庫文件存放的目錄,並更改全部者和所屬組。
mkdir -p /data/mysql
chown -R mysql:mysql !$
2、安裝MySQL
1.切換到MySQL安裝目錄下,開始安裝
cd /usr/local/mysql
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
--user定義數據庫的所屬主
--datadir定義數據庫的安裝位置
2.檢查安裝是否出錯
echo $?
反饋0說明沒有錯誤,反饋1說明報錯。
3、配置MySQL
1.拷貝配置文件,並重命名。由於my.cnf文件已存在,直接覆蓋就能夠。
cp support-files/my-large.cnf /etc/my.cnf
2.拷貝啓動腳本文件,修改啓動腳本權限
cp support-files/mysql.server /etc/init.d/mysqld
chmod 755 !$
3.修改啓動腳本,(沒有vim使用" yum install vim -y "來安裝)
vim /etc/init.d/mysqld
須要把
basedir=
datadir=
修改成
basedir=/usr/local/mysql
datadir=/data/mysql
basedir定義MySQL的安裝目錄
datadir定義MySQL數據庫的文件存放目錄
4.加入系統服務,設置開機啓動MySQL
chkconfig --add mysqld
chkconfig mysqld on
5.啓動MySQL
service mysqld start
6.檢查MySQL是否啓動
ps aux |grep mysqld
MySQL安裝,配置,啓動完成。
1、下載Apache
1.切換到下載目錄
cd /usr/local/src
2.下載Apache,Apache的官網是:http://www.apache.org/
Download - HTTP - 找到中國的鏡像站.cn
wget http://mirrors.hust.edu.cn/apache/httpd/httpd-2.4.18.tar.bz2
3.解壓縮
tar -jvxf httpd-2.4.18.tar.bz2
2、配置編譯參數
1.切換到httpd目錄下
cd httpd-2.4.18
2.編譯參數,很是全的參數介紹 http://blog.chinaunix.net/uid-20784749-id-1844507.html
編譯介紹: http://www.linuxidc.com/Linux/2015-04/116060.htm
經常使用參數: http://www.cnblogs.com/xianglf/archive/2010/12/16/1908174.html
./configure \ --prefix=/usr/local/apache2 \ --with-included-apr \ --enable-so \ --enable-deflate=shared \ --enable-expires=shared \ --enable-rewrite=shared \ --with-pcre
./configure 編譯安裝
--prefix 編譯安裝完成後生成一個目錄,該軟件全部的文件都會被複制到這個目錄裏面,爲何要指定這個目錄呢?爲了之後維護方便,若是不指定,文件會被複制到系統下各個目錄,用prefix的另外一個好處就是方便卸載和移植軟件。把刪除該目錄,整個軟件卸載的乾乾淨淨,移植只須要把這個目錄拷貝到另外一臺機器便可。
--with-included-apr 若是是開發者則使用此選項,利於鏈接apache的代碼或者是調試apache,其消除了因爲版本或者編譯中跟APR或者APR-util代碼產生的不匹配;
--enable-so 讓apache核心裝載DSO
--enable-deflate=shared 表示共享的方式編譯壓縮, apache開啓gizp的壓縮功能。網頁壓縮。擴展:http://blog.csdn.net/yybjroam05/article/details/7726516
--enable-expires=shared 網站須要用到緩存功能,支持 HTTP 控制
--enable-rewrite=shared 支持 URL 重寫
--with-pcre
錯誤1
configure: error: Bundled APR requested but not found at ./srclib/. Download and unpack the corresponding apr and apr-util packages to ./srclib/.
apache-2.2與新出的apache-2.4安裝不一樣的地方在於,2.4版的已經不自帶apr庫,因此在安裝apache-2.4以前,須要下載apr。
cd /usr/local/src/
wget http://mirrors.hust.edu.cn/apache/apr/apr-1.5.2.tar.bz2
wget http://mirrors.hust.edu.cn/apache/apr/apr-util-1.5.4.tar.bz2
解壓
tar -jxvf apr-1.5.2.tar.bz2
tar -jxvf apr-util-1.5.4.tar.bz2
拷貝到指定目錄下
cp -rf apr-1.5.2 ./httpd-2.4.18/srclib/apr
cp -rf apr-util-1.5.4 ./httpd-2.4.18/srclib/apr-util
猜想多是之前安裝用過./configure 來直接安裝致使安裝文件已經不太「乾淨」 解決方法: 1、執行make clean後,從新編譯安裝。 2、刪除目錄,從新解壓安裝包,進行編譯安裝,可解決上面的問題。
從新執行 configure 命令。
錯誤2
checking for gcc... no
checking for cc... no
checking for cl.exe... no
沒有gcc編譯器
yum install gcc -y
從新執行 configure 命令。
錯誤3
configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org
配置:錯誤:pcre-config libpcre不見了。PCRE是必需的,能夠從http://pcre.org
yum -y install pcre-devel
錯誤4
checking whether to enable mod_deflate... configure: error: mod_deflate has been requested but can not be built due to prerequisite failures
檢查是否啓用mod_deflate……配置:錯誤:mod_deflate一直要求可是不能創建因爲先決條件失敗
yum install zlib-devel -y
檢查編譯參數是否正確
echo $?
3.make && make install
make
echo $?
make install
echo $?
Apeche編譯安裝、啓動成功
1、下載php
1.切換到下載目錄
cd /usr/local/src/
2.下載php,php的官網是:http://www.php.net/
Downloads - Current Stable PHP - php-*.*.*.tar.* - China - cn2.php.net
wget http://cn2.php.net/distributions/php-7.0.2.tar.gz
3.解壓縮
tar zxf php-7.0.2.tar.gz
2、配置編譯
1.切換到php目錄下
cd php-7.0.2
2.編譯參數
編譯來至(全)http://blog.csdn.net/godmatrix/article/details/5969558
./configure \ --with-apr=/usr/local/apr \ --prefix=/usr/local/php \ --with-apxs2=/usr/local/apache2/bin/apxs \ --with-config-file-path=/usr/local/php/etc \ --with-mysql=/usr/local/mysql \ --with-libxml-dir \ --with-gd \ --with-jpeg-dir \ --with-png-dir \ --with-freetype-dir \ --with-iconv-dir \ --with-zlib-dir \ --with-bz2 \
--with-mcrypt \
--with-openssl \
--enable-soap \
--enable-gd-native-ttf \
--enable-mbstring \
--enable-sockets \
--enable-exif \
--disable-ipv6
去掉了
--with-mcrypt \
不知道會有什麼影響
./configure \
配置,安裝
--with-apr=/usr/local/apr \
指定apr代碼的目錄
--prefix=/usr/local/php \
指定php安裝目錄.
--with-apxs2=/usr/local/apache2/bin/apxs \
讓Apache服務器可以支持PHP。整合 apache,apxs功能是使用mod_so中的LoadModule指令,加載指定模塊到 apache,要求 apache 要打開SO模塊
--with-config-file-path=/usr/local/php/etc \
指定php.ini配置文件的位置
--with-mysql=/usr/local/mysql \
MySQL安裝的目錄,對mysql的支持
--with-libxml-dir \
打開對libxml2庫的支持
--with-gd \
打開對gd庫的支持
--with-jpeg-dir \
--with-png-dir \
打開對jpeg圖片和png圖片的支持
--with-freetype-dir \
打開對freetype字體庫的支持
--with-iconv-dir \
打開對iconv函數庫,種字符集間的轉換
--with-zlib-dir \
打開對zlib庫的支持
--with-bz2 \
打開對bz2文件的支持
--with-openssl \
打開openssl的支持,加密傳輸時用到的
--with-mcrypt \
算法,mhash和mcrypt都是算法的擴展
--enable-soap \
打開soap的支持
--enable-gd-native-ttf \
支持True Type 字符串 函數庫
--enable-mbstring \
多字節,字符串的支持
--enable-sockets \
打開sockets支持
--enable-exif \
圖片的元數據支持
--disable-ipv6
不支持ipv6
錯誤1
配置:錯誤:xml2-config不見了。請檢查你的libxml2安裝。
檢查有沒有安裝libxml2
rpm -qa |grep libxml2
yum install libxml2 libxml2-devel -y
錯誤2
configure: error: Cannot find OpenSSL’s <evp.h>
配置:錯誤:找不到OpenSSL的< evp.h >
yum install openssl openssl-devel -y
錯誤3
Configure: error: Please reinstall the BZip2 distribution
配置:錯誤:請從新安裝BZip2分佈
yum install bzip2 bzip2-devel -y
錯誤4
Configure: error: libjpeg.(a|so) not found
配置:錯誤:libjpeg。(還)沒有找到
yum install libjpeg libpng freetype libjpeg-devel libpng-devel freetype-devel -y
錯誤5
Configure: error: mcrypt.h not found. Please reinstall libmcrypt.
配置:錯誤:mcrypt。沒有找到。請從新安裝libmcrypt。
解決:
搜索:libmcrypt-第一個-Download Source-libmcrypt-*.*.*.tar.gz
安裝epel-release源
yum install epel-release
yum install libmcrypt-devel
繼續./configure
echo $?
反饋0
3.編譯安裝
make
echo $?
make install
echo $?
4.拷貝PHP主配置文件
cp php.ini-production /usr/local/etc/php.ini
5.修改apache的配置文件
vim /usr/local/apache2/conf/httpd.conf
1.找到 #ServerName www.example.com:80
改成
ServerName localhost:80
2.找到<IfModule dir_module> DirectoryIndex index.html </IfModule> 改成 <IfModule dir_module> DirectoryIndex index.html index.php </IfModule> 3.找到AddType application/x-compress .Z AddType application/x-gzip .gz .tgz 改成 AddType application/x-compress .Z AddType application/x-gzip .gz .tgz AddType application/x-httpd-php .php 4.找到 <Directory />
AllowOverride none
Require all denied
</Directory>
改成
<Directory />
Options FollowSymLinks
AllowOverride none
Order deny,allow
Allow from all
</Directory>
1.ServerName www.example.com:80 打開服務器佔用80端口
2.DirectoryIndex index.html index.php 目錄索引支持php
3. AddType application/x-httpd-php .php 應用類型支持php
4.Allow from all 容許訪問web內容目錄
6.檢查配置文件是否錯誤
/usr/local/apache2/bin/apachectl -t
7.啓動apache服務
/usr/local/apache2/bin/apachectl start
8.查看進程
ps aux |grep httpd
9.瀏覽器訪問IP
是否顯示 it works!顯示說明成功。若是沒有顯示
10.關閉防火牆。
永久關閉SElinux,重啓生效。
vim /etc/selinux/config
找到
SELINUX=enforcing 改成 SELINUX=disabled
臨時關閉
setenforce 0
getenforce 查看當前SElinux防火牆狀態
setenforce 0 是臨時關閉
setenforce 1 是臨時打開
# enforcing - SELinux security policy is enforced.打開
# permissive - SELinux prints warnings instead of enforcing.打開不攔截
# disabled - No SELinux policy is loaded.關閉,默認
也能夠
清空iptables規則
iptables -F
保存
service iptables save
11.重啓mysql apache
service mysqld restart ; /usr/local/apache2/bin/apachectl restart
12.測試解析php
cd /usr/local/apache2/htdocs
php主配置文件vim /usr/local/apache2/conf/httpd.conf指定的文檔根目錄的路徑DocumentRoot"/usr/local/apache2/htdocs"
vim 1.txt 隨便寫點東西
http://192.168.1.116/1.txt
vim 2.php
<?php
phpinfo();
?>
http://192.168.1.116/2.php
中間解析php失敗,
./configure
make clean
./configure
成功
擴展:
1.修改真機DNS
windows記事本打開,添加
C:\Windows\System32\drivers\etc\HOSTS
1927168.1.116 www.wangshaojun.com www.denny.com www.qqq.com
2.修改apache虛擬主機配置文件,先建立存放文檔的根目錄
mkdir /data/www
vim /usr/local/apache2/conf/extra/httpd-vhosts.conf
把最下面兩段修改成
<VirtualHost *:80> DocumentRoot "/data/www" ServerName www.wangshaojun.com ServerAlias www.denny.com # ErrorLog "logs/dummy-host.example.com-error_log" # CustomLog "logs/dummy-host.example.com-access_log" common </VirtualHost>
<VirtualHost *:80> 虛擬主機配置 80端口 DocumentRoot "/data/www" 指定文檔根目錄,把論壇安裝在此目錄下, servername訪問則是訪問論壇。 ServerName www.wangshaojun.com 服務器名稱 ServerAlias www.denny.com 服務器別名 # ErrorLog "logs/dummy-host.example.com-error_log" 錯誤日誌 # CustomLog "logs/dummy-host.example.com-access_log" common 訪問日誌 </VirtualHost>