搜尋
首頁後端開發PHP問題linux下如何搭建php開發環境

linux下如何搭建php開發環境

Oct 16, 2020 am 09:58 AM
linuxphp

linux下搭建php開發環境的方法:先安裝apache並啟動;然後安裝php的依賴軟體;接著透過指令「make && make install」安裝php;最後重啟apache即可。

linux下如何搭建php開發環境

推薦:《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.ini

3. 設定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 != &#39;localhost&#39;;
    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(&#39;localhost&#39;, &#39;root&#39;, &#39;123456&#39;);
    mysql_select_db(&#39;test&#39;, $link);
    mysql_query(&#39;set name utf8&#39;);
    $sql = "select * from goods";
    $qry = mysql_query($sql);
    while($rst = mysql_fetch_assoc($qry)) {
        print_r($rst);
        echo "<br />";
    }

以上是linux下如何搭建php開發環境的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
酸與基本數據庫:差異和何時使用。酸與基本數據庫:差異和何時使用。Mar 26, 2025 pm 04:19 PM

本文比較了酸和基本數據庫模型,詳細介紹了它們的特徵和適當的用例。酸優先確定數據完整性和一致性,適合財務和電子商務應用程序,而基礎則側重於可用性和

PHP安全文件上傳:防止與文件相關的漏洞。PHP安全文件上傳:防止與文件相關的漏洞。Mar 26, 2025 pm 04:18 PM

本文討論了確保PHP文件上傳的確保,以防止諸如代碼注入之類的漏洞。它專注於文件類型驗證,安全存儲和錯誤處理以增強應用程序安全性。

PHP輸入驗證:最佳實踐。PHP輸入驗證:最佳實踐。Mar 26, 2025 pm 04:17 PM

文章討論了PHP輸入驗證以增強安全性的最佳實踐,重點是使用內置功能,白名單方法和服務器端驗證等技術。

PHP API率限制:實施策略。PHP API率限制:實施策略。Mar 26, 2025 pm 04:16 PM

本文討論了在PHP中實施API速率限制的策略,包括諸如令牌桶和漏水桶等算法,以及使用Symfony/Rate-limimiter之類的庫。它還涵蓋監視,動態調整速率限制和手

php密碼哈希:password_hash和password_verify。php密碼哈希:password_hash和password_verify。Mar 26, 2025 pm 04:15 PM

本文討論了使用password_hash和pyspasswify在PHP中使用密碼的好處。主要論點是,這些功能通過自動鹽,強大的哈希算法和SECH來增強密碼保護

OWASP前10 php:描述並減輕常見漏洞。OWASP前10 php:描述並減輕常見漏洞。Mar 26, 2025 pm 04:13 PM

本文討論了OWASP在PHP和緩解策略中的十大漏洞。關鍵問題包括注射,驗證損壞和XSS,並提供用於監視和保護PHP應用程序的推薦工具。

PHP XSS預防:如何預防XSS。PHP XSS預防:如何預防XSS。Mar 26, 2025 pm 04:12 PM

本文討論了防止PHP中XSS攻擊的策略,專注於輸入消毒,輸出編碼以及使用安全增強的庫和框架。

PHP接口與抽像類:何時使用。PHP接口與抽像類:何時使用。Mar 26, 2025 pm 04:11 PM

本文討論了PHP中接口和抽像類的使用,重點是何時使用。界面定義了無實施的合同,適用於無關類和多重繼承。摘要類提供常見功能

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器