linux下搭建php開發環境的方法:先安裝apache並啟動;然後安裝php的依賴軟體;接著透過指令「make && make install」安裝php;最後重啟apache即可。
推薦:《PHP影片教學》
Linux 下建立php 開發環境完整教學
在開始進入正題前,先普及一點基礎知識。在 Linux 環境下,我們透過命令列安裝軟體的時候,可能會發生錯誤。當錯誤出現的時候,我們要怎麼撤銷先前的步驟,重新安裝軟體呢?解決方案如下
(1) 已經執行configure 操作
解決:根據正確的參數重新configure 即可
(2)已經執行configure、make 操作
(2)已經執行configure、make 操作
# 解決:刪除解壓縮後的檔案目錄,重新解壓縮、configure、make
(3)已執行configure、make、make install 操作
解決:先刪除已安裝後的檔案(有指定安裝目錄的情況/usr/local/http2),然後刪除解壓縮後的目錄,最後重新解壓縮、configure、make、make install 就行了。好了,下面開始進入正題了。
一、 安裝apache
1. 設定(apache 安裝設定) 在安裝前記得切換到root ,否則會因權限問題安裝失敗
./configure --prefix=/usr/local/http2 \ --enable-modules=all \ --enable-mods-shared=all \ --enable-so
// -- enable-mods-shared=all 模組共享類型,一次編譯所有模組到apache 內
執行 ./configure --help 可查看預設配置及配置幫助信息,如安裝目錄--prefix 等
2. 安裝
執行make && make install 就完成安裝了
3. 啟動apache
進入到安裝目錄/usr/local/http2/bin
執行指令./apachectl start 可啟動apache
啟動apache 的時候,可能會提示Could not reliably determine the server's fully ...
其實這不是什麼錯誤,可忽略,也可透過修改設定檔解決這個問題,
進入安裝目錄,/usr/local/http2/conf/ 找到httpd.conf ,在該檔案中尋找ServerName,
把它前面的# 號去掉就行了。
4. 存取
安裝完成後,在瀏覽器中輸入本機ip 位址,即可存取apache 預設的頁面
如輸入本機ip :192.168 .0.141
二、 安裝php 的依賴軟體
現在要把php 依賴的一些軟體(xml、gd、jpeg、png、freetype)都安裝上去,然後才能安裝php 。
1. 安裝xml 依賴
下載libxml2,然後安裝
#安裝前設定:./configure --prefix=/usr/local/libxml2 --without-zlib
然後make&&make install
2. 安裝jpeg8
安裝前設定./configure --prefix=/usr/local/jpeg --enable-share --enable- static
然後make && make install
--enable-share 把jpeg 需要的函式庫程式都編譯到該軟體裡面,這樣函數呼叫速度快,但是軟體本身比較大
--enable-static 靜態引入方式,這樣當需要呼叫還沒引入的函數時,會立即include 進來,這樣軟體本身比較小,但是函數呼叫速度慢
3. 安裝libpng
./configure && make && make install
4. 安裝freetype 函式庫(字型庫)
./configure --prefix=/usr/local/freetype make && make install
5. 安裝GD 函式庫
gd 函式庫下載位址: https://bitbucket.org/libgd/gd -libgd/downloads
./configure --prefix=/usr/local/gd --with-jpeg=/usr/local/jpeg/ --with-png --with-zlib --with-freetype=/usr/local/freetype make && make install
6. 安裝libXpm-3.5.10
// 有的系统可能没安装这个,要自己安装
直接用預設的設定就行
./configure make && make instsall
三、安裝設定php
# 1. 安裝php
參數解析:
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/http2/bin/apxs
apache 的支持,作用: 給apache 產生php 模組;修改/usr/local/http2/conf/httpd.conf 的設定文件,使其引入php 模組
mysqlnd 表示啟動php 本身的mysql 驅動並使用,因還我們還沒自己安裝mysql,所以這樣可用預設的mysql 。
--enable-mbstring=all 寬位元組函數庫對php 的支援
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/http2/bin/apxs --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-freetype-dir=/usr/local/freetype --with-gd=/usr/local/gd --with-zlib --with-libxml-dir=/usr/local/libxml2 --with-jpeg-dir=/usr/local/jpeg --with-png-dir --with-xpm-dir=/usr/local/libxpm --enable-mbstring=all --enable-mbregex --enable-shared
設定完成後,安裝make && make install
#安裝成功後,會出現以下提示
License: This software is subject to the PHP License, ... at this point. +---------------------------------------------------------------+ Thank you for using PHP.
PHP 安裝完成後,/usr/local/http2/conf/httpd.conf 會把對應的php 模組引進進來,如
LoadModule php5_module php
## .... ...2. 安裝完成後,進行相關設定把php 解壓縮目錄裡面的php.ini 設定檔到指定目錄
cp php.ini-development /usr/local/php/lib/php.ini3. 設定Apache 使其支援php
vim /usr/local/http2/conf/httpd.conf(1)在httpd.conf(Apache 主設定文件,在/usr/local/http2/conf 目錄下)中新增
AddType application/x-httpd-php .php使apache 遇到php 檔案時懂得呼叫php 模組解析(2)設定時區在/usr/local/php/lib 中修改php.ini 設定文件,設置時區data.timezone = PRC(記得把前面的分別去掉)#設定完成後,重新啟動apache 伺服器###
/usr/local/http2/bin/apachectl restart
至此所有安装步骤完成,在 apache 的目录下(/usr/local/apache2/htdocs)写个测试文件如 test.php
内容:
<?php phpinfo(); ?>
然后在浏览器中访问:192.168.0.141/test.php
如果访问成功,说明安装配置成功
注意:在使用 ThinkPHP 的时候,可能会出现下面这个问题
thinkphp开发的项目访问的时候出现了 页面错误!请稍后再试~ 排查了很多原因,最终是这样的解决的:
开启debug模式。在入口文件处加上 define(‘APP_DEBUG‘, true); 就ok了
此外,在系统目录下创建的文件夹,没有写权限,要修改文件夹权限才能写入,才能正常访问,如
chmod -R 777 thinkphp(即让该文件夹及其所有子文件夹可读可写可执行)
四、安装配置 mysql
1. 安装 cmake(更先进的 configure)
解压后执行配置命令 ./bootstrap,配置完成后 make && make install,要以 root 权限安装 。
2. 安装 mysql
tar zxvf mysql**** cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
(安装目录, 数据存储目录, 默认的字符集, 校对字符集 )
然后 make && make install
在进行 mysql 的 configure 操作的时候,可能会提示软件依赖错误,依赖文件 libncurses5-dev
解决方法:安装 ncurses-devel
rpm -ivh ncurses-devel-5.7-3.200090208.el6.i686.rpm(现在可能不是这个文件名了,自己 google 吧)
依赖解决好后要删除 CMakeCache.txt 文件。
3. 配置 mysql
(1)给 mysql 复制一个配置文件
在 mysql 我解压目录下,有个 support-files 文件夹,进入这个文件夹,执行复制命令
cp my-medium.cnf /etc/my.cnf
(2)useradd mysql(添加用户)
(3)chmod +x /home/lion/storm/web-php/install/mysql5.5/install
(4)chown -R mysql.mysql /home/lion/storm/web-php/install/mysql5.5/install
(5)初始化 mysql 数据库
/home/lion/storm/web-php/install/mysql5.5/install/scripts/mysql_install_db --user=mysql --basedir=/home/lion/storm/web-php/install/mysql5.5/install --datadir=/home/lion/storm/web-php/install/mysql5.5/install/data &
(6)把 mysql 安装文件(除了 data 之外)的主人都改为 root,避免数据库恢复为出厂设置
chown -R root /home/lion/storm/web-php/install/mysql5.5/install chown -R mysql /home/lion/storm/web-php/install/mysql5.5/install/data
(7)后台运行 mysql 服务
/home/lion/storm/web-php/install/mysql5.5/install/bin/mysqld_safe --user=mysql &
查看 mysql 是否有启动
ps -A | grep mysql
如果启动成功,则显示以下信息
------ mysqld_safe ------ mysqld
(8)进入 mysql 操作终端的执行程序(在 /home/lion/storm/web-php/install/mysql5.5/install/bin 目录下)
执行命令 ./mysql 就可以运往 mysql 了。
(9)设置 mysql 用户和密码
为了数据库安全,把 localhost 之外的用户全部删除掉,并为 localhost 设置密码,设置密码时调用加密函数给密码加密;
mysql 的所有用户信息都放在 mysql 数据库中,而且这也是 mysql 的核心数据库 。所以要到这个数据库中进行用户管理操作,执行命令
use mysql
切换到这个数据库,执行下面的操作:
mysql> delete from user where Host != 'localhost'; mysql> select Host, User, Password form user; mysql> update user set Password=password(123456); mysql> select Host, User, Password from user; mysql> flush privileges;(刷新,使对权限的修改立即生效)
(10)设置完成后,执行 flush privileges; 命令,使设置立即生效 。设置完成后,以后不要随便操作 mysql 中的 mysql 数据库了 。
(11)执行 exit 命令退出当前 mysql,然后重新登录 mysql
./mysql -uroot -p123456
(12)通过 php 中访问 mysql,在 apache 的 htdocs 目录下,创建一个 data.php 文件,来访问 mysql 。
<?php $link = mysql_connect('localhost', 'root', '123456'); mysql_select_db('test', $link); mysql_query('set name utf8'); $sql = "select * from goods"; $qry = mysql_query($sql); while($rst = mysql_fetch_assoc($qry)) { print_r($rst); echo "<br />"; }
以上是linux下如何搭建php開發環境的詳細內容。更多資訊請關注PHP中文網其他相關文章!