linux php環境搭建的方法:首先獲取相關安裝包;然後安裝Apache以及mysql;接著修改組態檔「httpd.conf」;最後設定環境變數和開機自啟,並編譯安裝PHP即可。
一、獲取安裝包
二、安裝Apache
1. 依賴包安裝
1) 安裝編譯器gcc、gcc-c++
yum install -y gcc gcc-c++2) 安裝依賴包expat-devel、zlib-devel、openssl-devel
yum install -y expat-devel zlib-devel openssl-devel2) 安裝依賴包apr
注意:如果依賴包不存在,則去網站找最新的包,改成相應版本號下載即可
wget http://mirror.bit.edu.cn/apache//apr/apr-1.6.3.tar.gz tar zxvf apr-1.6.2.tar.gzcd apr-1.6.2 ./configure --prefix=/usr/local/apr make && make install3) 安裝依賴包apr-util
wget http://mirror.bit.edu.cn/apache//apr/apr-util-1.6.1.tar.gz tar zxvf apr-util-1.6.0.tar.gzcd apr-util-1.6.0 ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr make && make install4) 安裝依賴包pcre
wget https://ftp.pcre.org/pub/pcre/pcre-8.42.tar.gz tar zxvf pcre-8.41.tar.gzcd pcre-8.41 ./configure --prefix=/usr/local/pcre make && make install注意:將apr、apr-util安裝包拷貝到Apache安裝包的srclib目錄中
名稱分別命名為apr、apr-util,不要後面的版本號
2. 安裝過程
1) 解壓Apache安裝包
tar zxvf httpd-2.4.33.tar.gz注意: 將apr、apr-util安裝包拷貝到Apache安裝包的srclib目錄中
名稱分別命名為apr、apr-util,不要後面的版本號
2) 編譯、安裝
cd httpd-2.4.28 ./configure --prefix=/usr/local/server/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre --with-mysql=shared,mysqlnd --enable-so --enable-ssl --enable-deflate --enable-rewrite --enable-headers --enable-expires --disable-cgid --disable-cgi
3. 修改組態檔httpd.conf
vim /usr/local/server/apache/conf/httpd.conf去掉ServerName前面的 #
並將ServerName後面的網址改為localhost:80
4. 將httpd加入系統服務並設定開機自啟
1) 將httpd加入系統服務
cp /usr/local/server/apache/bin/apachectl /etc/init.d/httpd2) 修改/etc/init.d/httpd,在第3行加入以下內容
# chkconfig: 345 85 15# description: Activates/Deactivates Apache Web Server注意: 程式碼中的 # 不可以去掉
3) 設定系統服務開機自啟
systemctl enable httpd4) 啟動Apache
service httpd start
三、安裝MySQL
1. 安裝前準備
1) 解壓安裝包
tar zxvf mysql-8.0.11-linux-glibc2.12-x86_64.tar.gz mv mysql-8.0.11-linux-glibc2.12-x86_64 /usr/local/server/mysql2) 建立使用者和使用者組並分配相應的許可權
groupadd mysql useradd -r -g mysql mysql chown -R mysql:mysql . #注意後面有個點
2. mysql的初始化並做基本設定
1) 初始化mysql
cd /usr/local/server/mysql bin/mysqld --initialize --user=mysql --basedir=/usr/local/server/mysql --datadir=/usr/local/server/mysql/data注意 : 如果報錯 , 則缺哪個庫yum安裝即可 bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
yum install libaio
2) 設定mysql
vim my.cnf # 建立組態檔本範例僅保證mysql可以正常執行,更多設定請參考官方文件說明
[mysqld]skip-grant-tablesbasedir = /usr/local/server/mysqldatadir = /usr/local/server/mysql/dataport = 3306將組態檔軟連結到 /etc/ 目錄
rm -rf /etc/my.cnfln -s /usr/local/server/mysql/my.cnf /etc/my.cnf
3. 啟動mysql並設定root使用者密碼
1) 啟動mysql
support-files/mysql.server start # 啟動MySQLbin/mysql -uroot -p # 這裡直接回車,無須輸入密碼2) 重置root使用者密碼
use mysql; update user set authentication_string='' where user='root'; exit;3 ) 刪除/etc/my.cnf檔案的 skip-grant-tables , 重新啟動mysql服務
support-files/mysql.server restart #重新啟動mysql4 ) 用root使用者進行登入
mysql -u root -p passwrod:直接回車5 ) 使用ALTER修改root使用者密碼,初始化完畢 。退出,使用新密碼登入
ALTER user 'root'@'localhost' IDENTIFIED BY 'new_password';
4. 設定環境變數和開機自啟
1) 設定環境變數
編輯profile檔案
vim /etc/profile新增下列資訊到profile尾部
export PATH=$PATH:/usr/local/server/mysql/bin使環境變數立即生效
source /etc/profile2) 設定開機自啟
cp support-files/mysql.server /etc/init.d/mysqld systemctl enable mysqld
5. 防火牆設定
CentOS預設開啟了 firewall 防火牆,下面我們使用firewall開啟3306l埠
1) 開啟之前我們先查詢下3306埠是否開啟
firewall-cmd --query-port=3306/tcp2) 我們可以選擇臨時開啟或者永久開啟3306埠
firewall-cmd --add-port=3306/tcp # 臨時開啟3306埠 firewall-cmd --permanent --zone=public --add-port=3306/tcp # 永久開啟3306埠3) 重新啟動firewall
firewall-cmd --reload
6. 遠端存取
1) 給予任何主機存取mysql的許可權
create user [email protected]'%' identified by 'your_password'; grant all privileges on *.* to [email protected]'%';2) 使許可權修改生效
FLUSH PRIVILEGES;
四、安裝PHP
1. 安裝步驟
1) 安裝依賴包
yum -y install wget vim pcre pcre-devel openssl openssl-devel libicu-devel gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel ncurses ncurses-devel curl curl-devel krb5-devel libidn libidn-devel openldap openldap-devel nss_ldap jemalloc-devel cmake boost-devel bison automake libevent libevent-devel gd gd-devel libtool* libmcrypt libmcrypt-devel mcrypt mhash libxslt libxslt-devel readline readline-devel gmp gmp-devel libcurl libcurl-devel openjpeg-devel libcurl.x86_64 libcurl-devel.x86_64 libjpeg-turbo libjpeg-turbo-devel libpng freetype libpng-devel freetype-devel icu libicu libicu-devel openldap openldap-clients openldap-devel openldap-serverscp -frp /usr/lib64/libldap* /usr/lib/2) 解壓PHP安裝包
tar zxvf php-7.2.6.tar.gz3) 編譯安裝
cd php-7.2.6 ./configure --prefix=/usr/local/server/php --with-apxs2=/usr/local/server/apache/bin/apxs --with-config-file-path=/usr/local/server/php --enable-fpm --with-fpm-user=www --with-fpm-group=www --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --enable-mysqlnd-compression-support --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --enable-intl --with-libmbfl --enable-ftp --with-gd --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --with-gettext --disable-fileinfo --enable-opcache --with-pear --enable-maintainer-zts --with-ldap=shared --without-gdbm make && make install
2. 設定php.ini
1) 將組態檔拷貝到PHP安裝目錄
cp php.ini-* /usr/local/server/php/2) 生成php.ini
cp php.ini-development /usr/local/server/php/php.inicp /usr/local/server/php/etc/php-fpm.conf.default /usr/local/server/php/etc/php-fpm.conf
3 ) 修改php.ini組態檔
expose_php = Off short_open_tag = ON max_execution_time = 300 max_input_time = 300 memory_limit = 128M post_max_size = 32M date.timezone = Asia/Shanghai mbstring.func_overload=2 extension_dir = "/usr/local/server/php/lib/php/extensions/no-debug-zts-20170718/"
3. 修改httpd.conf
載入PHP模組,如httpd.conf中有下列程式碼則直接去掉前面#即可,沒有則加入
LoadModule php7_module modules/libphp7.so在底部加入以下程式碼使得Apache可以解析php檔案
<IfModule mod_php7.c> AddType application/x-httpd-php .php</IfModule>找到如下程式碼,在index.html後面加入index.php
<IfModule dir_module> DirectoryIndex index.html</IfModule>重新啟動Apache
service httpd restart
4. 測試PHP是否成功安裝
建立/usr/local/server/apache/htdocs/index.php
vim /usr/local/server/apache/htdocs/index.php在index.php中編寫以下程式碼
<?php phpinfo();?>如果出現以下頁面則安裝成功
MYSQL8.0的密碼驗證方式從mysql_native_password改為了caching_sha2_password
vim my.cnf
default_authentication_plugin=mysql_native_password
進入mysql修改一下密碼和加密外掛
use mysql; ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_password'; FLUSH PRIVILEGES;
以上就是linux php環境搭建教學的詳細內容,更多請關注TW511.COM其它相關文章!