A. 7款最常用的php本地測試環境如何做網站
Wordpress夠流行了吧,它是一個用PHP編寫的強大的博客平台,
7款最常用的PHP本地測試環境。使用它來架設一個博客平台相關容易,是新手建站比較方便的工具。但是要真正體會Wordpress(以下簡稱WP)強大,插件是不可少的東西。一般來說,我們不可能想試一個插件就把文件通過FTP來上傳,然後去自己的網站里試,那樣風險大了點。所以我們需要在本地計算機上搭建一個PHP平台。我就把常用的PHP本地測試平台都收集一下,給需要的人提供方便。
一般來說,本地的PHP平台分為兩種,一種是LAMP,即為linux+Apache+MySql+PHP;另一種是WAMP,它是Windows+Apache+MySql+PHP,而前者一般優秀於後者。如果讓我們自己來安裝Apache+MySql+PHP,難度不少,改一堆代碼不說,還容易出錯。再者考慮到現在大家大多使用的是Windows操作系統,自己又是個Linux盲,所以我提供的這些本地測試平台都是WAMP,都是集成以上功能的,安裝完成即可使用。先大概了解一下吧:
1. XAMPP
XAMPP是一款比較強大的本地測試平台,它集成了必須的三個功能,還帶有FileZilla,軟體帶有一個控制面板,在裡面可以把Apache、MySql和FileZilla三者注冊為系統服務或者卸載服務,有服務啟動的控制按鈕,而且在窗口下部還能看到服務的運行信息。雖說面板是英文的,但清楚易懂。注冊為系統服務有個好處就是開機能夠自動運行,但是會消耗一定的系統資源,怎麼取捨用戶自己來定。安裝成功,服務也啟動成功後,就可以把瀏覽器打開輸入http://localhost/,試試是否成功。在XAMPP的網頁選項里,有中文支持。
2. WampServer
它的官方網站沒有中文,但是程序支持中文。啟動安裝程序後,它會提示你請先卸載舊版,不支持覆蓋式的升級,然後一路NEXT就能安裝成功。它在任務托盤里有個圖標,如果服務啟動異常,它就是紅色的;如果部分異常,它就變成黃色;如果是一切正常,那麼它就變成了白色。這些不同的顏色警示,你很容易判斷當前你的localhost能不能打開。它還能切換在線和離線狀態,選項中的文語言項中也有簡體中文可選,很不錯。
3. Vertrigo Server
這是一個輕量級的WAMP環境,但是你下載它的時候,迅雷自帶的安全組件居然說它帶有病毒,
管理資料《7款最常用的PHP本地測試環境》(http://www.unjs.com)。經過我的掃描(ESS3.0)和使用來看,這完全是個誤報,所以大家可以放心使用。安裝一路NEXT就行,其中PhpMyAdmin中居然還有原始密碼,是vertrigo,感覺在本地測試的話,這種默認沒有必要。它帶有一個簡單的控制面板,運行狀態也一目瞭然。
在它的localhost頁面中帶有常用鏈接,很方便。
4. PHPNow
PHPNow真的很簡單,簡單到安裝程序就是用RAR做的一個自解壓程序。自釋放後快捷方式也沒有,你必須自己找到那個文件存放的文件夾,然後運行Init.cmd這個程序來初始化。初始化過程中提示設置密碼,因為是在CMD命令行中,只設計了一次密碼輸入,沒有密碼確認項,所以請設置的時候千萬小心,不要忘了。它也把式Apache和MySql注冊為服務,開機自啟動。
在程序文件夾中,它也帶有控制面板,只不過是CMD的,但很好用。
卸載就更容易了,在軟體自帶的控制面板中卸載服務,然後關把整個文件夾刪掉就行。這么方便,圖簡便的可以試試。
5. PHPStudy
PHPStudy不一樣,它含有IIS+PHP和Apache+PHP,軟體推薦設置是後者。在任務托盤里也有圖標,可以打開面板來看服務運行狀態,也很簡潔。
打開localhost,出現的是標準的PHP信息界面。
6. AppServ
程序安裝過程中它提示你可以改變默認的80埠為服務埠,這樣可以避免埠共享產生的沖突。可有密碼設置提示,但是做得比PHPNow好多了,軟體還可以設置字元集,默認為UTF-8。雖然軟體沒有控制面板,但一切操作都在開始菜單中加入了快捷方式,使用當然很方便。軟體還帶有MySql命令行終端。
7. EasyPHP
軟體如其名,真的很EASY!安裝一路NEXT,但是不會把Apache和MySql載入為服務,所以每次使用都要手工來啟動。軟體也帶簡單的控制面板,其他的沒什麼要說的了。
說了這么多,我想,這些工具應該夠你使用的了,找一個你最滿意的安裝就行了。
PS:如果某些這樣的PHP相關的服務無法啟動,請注意一下你的機器中的80埠是否被佔用。一般的程序,如迅雷,BT軟體什麼的,即使它們沒有在工作,開著也會佔用80埠。所以把它們關掉後,啟動PHP相關的服務後再把這些下載軟體什麼的打開,就不會有服務啟動不成功這樣的問題的。
B. linux yum安裝php7.3
先安裝前面的教程,再安裝後面的
參考教程1:
https://blog.csdn.net/weixin_43731793/article/details/91488289
參考教程2:
http://www.bubuko.com/infodetail-2931909.html
安裝PHP
1、安裝PHP73
1.1、卸載舊版本PHP
yum remove php*
1.2、安裝EPEL:
sudo yum install epel-release
1.3、安裝remi(選一個):
sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
1.4、查看目前有php的什麼版本(可忽略)
sudo yum list php*
1.5、列出所有的php相關的rpm包(可忽略)
rpm -qa|grep php
1.6、刪除php相關的rpm包(一次只能刪除一個)(可忽略)
rpm -e php72w-mysqlnd-7.2.17-1.w7.x86_64
1.7、列出remi倉庫下所有PHP7.3可用模塊。(可忽略)
yum --enablerepo=remi-php73 search php | grep php73
1.8、安裝PHP 7.3
yum --enablerepo=remi-php73 install php
1、安裝 PHP7.3:
(解決yum安裝apache關聯不了PHP的問題,用以下命令安裝)
yum --enablerepo=remi-php73 install php
安裝模塊
yum --enablerepo=remi-php73 install php73-php-fpm php73-php-cli php73-php-bcmath php73-php-gd php73-php-json php73-php-mbstring php73-php-mcrypt php73-php-mysqlnd php73-php-opcache php73-php-pdo php73-php-pecl-crypto php73-php-pecl-mcrypt php73-php-pecl-geoip php73-php-recode php73-php-snmp php73-php-soap php73-php-xml
2、設置開機啟動、運行服務:
systemctl enable php73-php-fpm
systemctl start php73-php-fpm
3、查找php.ini位置:
find /etc/opt/remi/php73 -name php.ini
/etc/opt/remi/php73/php.ini
找到apache的配置文件:httpd.conf
sudo find / -name httpd.conf
位置如下:
/etc/httpd/conf/httpd.conf
5、PHP日常操作
systemctl restart php73-php-fpm #重啟
systemctl start php73-php-fpm #啟動
systemctl stop php73-php-fpm #關閉
systemctl status php73-php-fpm #檢查狀態
php -m #查看PHP已安裝拓展模塊
php -v #查看PHP版本
C. 在Linux環境下,APACHE和PHP配置文件怎麼設置(RPM包)
LAMP配置與應用 LAMP(Linux+Apache+Mysql+Php)配置:
Fedora 5已默認安裝了php,可以使用rmp -q php查看其版本號
安裝mysql客戶端mysql(與perl-DBI包有依賴關系,要先安裝)
安裝mysql服務端mysql-server(與perl-DBD包有依賴關系,要先安裝)
安裝php支持mysql的模塊php-mysql(與php-pdo包有依賴關系,要先安裝)
Mysql的web管理工具phpMyAdmin
安裝
下載並解壓phpMyAdmin的包到某個web目錄(或為phpMyadmin建立虛擬主機,將該包解壓到虛擬主機目錄)
#tar -xzvf phpMyAdmin-2.10.0.2-all-languages.tar.gz
執行下列命令:
#cd phpMyAdmin
#mkdir config #建立一個用來保存配置的目錄
#chmod o+rw config #更改該目錄的許可權為屬主可讀寫
#cp config.sample.inc.php config/ #將當前目錄下的config.sample.inc.php復制到config
#chmod o+w config/config.inc.php # 使該文件的屬主具有寫許可權
運行安裝向導頁面
在瀏覽器中打開scripts/setup.php,按照向導頁面添入相關信息,最後單擊「保存」,則所做的配置保存在config/config.inc.php中。(註:如果config子目錄沒有建立,或沒有對該文件的寫許可權的話,則會出現"Cannot load or save configuration."的提示,這種情況下應選擇「DownLoad」下載到本地,再上傳到phpMyAdmin的主目錄下 ),主要有以下樣目需要添寫:
User for config auth__________________
Password for config auth__________________
phpMyAdmin control user____________________
phpMyAdmin control user password______________________
phpMyAdmin database for advanced features__________________
配置成功保存的話,執行下面命令
#mv config/config.inc.php . #將配置文件移動到phpMyAdmin的主目錄
#chmod o-r config.inc.php #為安全起見,移去該文件的讀寫許可權
在瀏覽器中打開phpMyAdmin對應的站點
phpbb應用
註:以下頭3步有關mysql的操作也可以在webmin中完成.
mysql的賬號管理
1) 要設置root用戶的密碼為123456,則在系統提示符下執行下面的命令:
#mysqladmin -u root -p password "123456"
2) 要在mysql命令行客戶端,設置root用戶的密碼為123456,則需執行以下命令:
mysql> use mysql;
mysql> update user set Password=password('123456') where User='root';
mysql> flush privileges;
3) 如果要新增用戶u1,給他授予對資料庫bb中所有表(*)的所有許可權(all),密碼設為888888,則在mysql提示符下:
mysql> grant all on bb.* to 'u1'@'localhost' identified by '888888';
如果root用戶有密碼,則進入mysql客戶端需用下面的命令:#mysql -u root -p
新建phpbb論壇所要用到的資料庫:mysql>create database XXX;
為phpbb所在目錄新建虛擬主機
在瀏覽器中訪問該虛擬主機,以安裝phpbb
注意:在安裝結尾,選擇下載配置文件,自行上傳.然後刪除install,contrib兩個目錄
php配置實例
1.使用Apache配置基本的web站點,使客戶端瀏覽簡體中文網頁能正常顯示、新增支持的主頁文件index.htm index.php default.htm default.html。最後要能在其它計算機上通過域名訪問,比如www.yyy.net03.org。
2.在web站點下實現虛擬目錄,即web站點的子目錄,該子目錄與主目錄不一定是上下目錄關系.同時,允許該目錄有目錄列表功能(即在沒有找到主文件件的時候,顯示當前目錄下的列表).
3.實現Linux用戶個人站點.
4.配置多個基於名稱的虛擬主機,比如www1.yyy.net03.org,www2.yyy.net03.org。最後要能在其它計算機上通過域名訪問。
5.配置多個基於IP的虛擬主機,比如lit.yyy.net03.org,mil.yyy.net03.org。最後要能在其它計算機上通過域名訪問。
6.配置LAMP環境
7.配置phpbb論壇,並使該論壇可以通過形如bbs.yyy.net03.org的形式訪問。
(*)8. 刪除系統原有Apache、php、Mysql項目,使用源文件安裝最新版本的Apache、php、Mysql
利用源代碼安裝LAMP
首先要在相關網站獲取Apache、Mysql、Php的源碼包,一般擴展名為xxx.tar.gz.
刪除系統原有Apache、php、Mysql項目,可能要用到下面的命令
# rpm -e xxx
# rpm -e xxx nodeps #不考慮依賴關系而刪除xxx包
# rpm -e xxx yyy zzz #刪除xxx,yyy,zzz包
如果無法刪除一個RPM包,可以使用以下兩步:
#rpm -f /var/lib/rpm
#rpm --rebuilddb
或:
#rpm -ivh --justdb xxx
#rpm -e xxx
1. 安裝Apache(httpd-2.2.8)
# ./configure --enable-so
# make
# make install
# /usr/local/apache2/bin/apachectl start
2. 安裝Mysql(Mysql-5.0.22)
1) 建立用戶及組,如果在/etc/passwd中已有該用戶,則下列操作可以省略
shell> groupadd mysql
shell> useradd -g mysql mysql
2) 解壓、配置編譯安裝
shell> gunzip < mysql-VERSION.tar.gz | tar -xvf -
shell> cd mysql-VERSION
shell> ./configure --prefix=/usr/local/mysql #配置(指定mysql安裝路徑)
shell> make #編譯
shell> make install #安裝
3) 配置mysql
shell> cp support-files/my-medium.cnf /etc/my.cnf #建立mysql配置文件
shell> cp support-files/mysql.server /etc/init.d/ #建立mysql控制腳本
shell> cd /usr/local/mysql
shell> bin/mysql_install_db --user=mysql #建立mysql系統資料庫
shell> chown -R root . #更改當前目錄及子目錄所有者
shell> chown -R mysql var #更改var目錄及子目錄所有者
shell> chgrp -R mysql . #更改當前目錄及子目錄所屬組
4) 啟動mysql
shell> bin/mysqld_safe --user=mysql & #以後台模式運行mysqld服務
shell> chkconfig --list | less #查看服務列表
shell> chkconfig --add mysql.server #將mysql.server添加到服務列表
shell> chkconfig --list | less #查看服務列表
shell> service mysql.server restart
shell> /usr/local/mysql/bin/mysqladmin -u root -p password '888888' #更改mysql管理用戶root的密碼
3. 安裝php(php5 on Apache 2 Shared Mole Version)
1) tar -zxvf php-NN.tar
2) cd php-NN
3) ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql
4) make
5) make install
6) 建立php配置文件php.ini
# cp php.ini-dist /usr/local/lib/php.ini
7) 編輯http配置文件 httpd.conf 使之載入PHP模塊
對於 PHP 4,添加下句:
LoadMole php4_mole moles/libphp4.so
對於 PHP 5,添加下句:
LoadMole php5_mole moles/libphp5.so
8) 編輯http配置文件 httpd.conf,使之能解析擴展名為php的文件
AddType application/x-httpd-php .php .phtml
9) 編輯http配置文件 httpd.conf,修改主頁文件
DirectoryIndex index.php index.htm index.html
10) 重啟httpd服務
# /usr/local/apache2/bin/apachectl start
或
# /usr/local/apache/bin/apachectl -k start
11) 編輯index.php文件,並在瀏覽器中訪問該站點,如果出現關於php的當前配置信息(其中有mysql的配置項),表示LAMP安裝成功。
$vi index.php
<?php
phpinfo()
?>
D. LAMP:Linux+Apache+Mysql/MariaDB+Perl/PHP/Python
一組常用來搭建動態網站或者伺服器的開源軟體,本身都是各自獨立的程序
一.部署Apache Web伺服器
(root下操作su root)1.部署Apache Web伺服器運行如下
2.測試所安裝Apache Web伺服器
3.檢測Apache是否運行
4.瀏覽器查看Apache測試頁面內容
安裝php7 sudo apt-get install php7.0
安裝apache2 php7 mole sudo apt-get install libapache2-mod-php7.0
安裝php-mysqli模塊:
apt-get install php-mysql
修改php.ini設置文件 :
/etc/php/7.0/apache2/php.ini(vim php.ini)
extension=php_mysqli.dll 去掉注釋;
(命令::/php_mysqli.dll,查找到上面的命令去掉前面的符號:)
systemctl start apache2 #生效
/var/www/html #下建立一個phpinfo.php文件 <?php phpinfo(); ?>
(touch phpinfo.php)
vim <?php phpinfo(); ?>
實戰:安裝基於PHPMySQL的博客及CMS建站系統
找到emlog_6.0.0下src文件夾拷貝到 /home/sgxz/下
在root 下cp -r /home/sgxz/src /var/www/html
創建資料庫
mysql -u root -p
MariaDB [(none)]> CREATE DATABASE emg;
在/var/www/html# 下
chmod -R 777 src #src為博客網站目錄
回到瀏覽器
出現 連接資料庫失敗,請檢查資料庫信息。錯誤編號:1698
進入mysql資料庫 修改root密碼
MariaDB [(none)]> update mysql.user set authentication_string=PASSWORD('root'), plugin='mysql_native_password' where user='root'
回到瀏覽器輸入http://127.0.0.1/src/
E. html表單提交數據給php,然後php文件不被執行,而是提示下載問題,linux下apache和php配置問題
導致錯誤原因多種,需要具體問題具體分析
1.使用mmcache模塊在linux x86-64上有問題
2.由於php編譯安裝過程有問題,或者apache+php安裝完成後,PHP又重新編譯安裝過,同時apache也重新編譯就會產生這種現象.建議保留 httpd.conf和相關配置文件後,重新安裝一遍apache+PHP,注意先後順序,如果還是會有這個提示,請更換php版本重裝.
3.php的模塊zend_extension和extension沖突
4.由於使用了APC造成的,這是這類op-code緩存優化軟體共同的問題.建議用最新版本試試(http://pecl.php.net/package/APC).一旦出現,只能重起apache.
5. /tmp目錄文件太多,刪除後正常
6. 配置模式為worker, 改為prefork
7. ZendOptimizer-3.3.0與jdk1.7.0沖突
8. web訪問的某些特殊文件造成的,檢查access_log可以看到,刪除文件
轉的。說明一個問題,就是 你的 apache 和 php 有問題。 或者你的php有問題。
試著提交到空php文件,看出錯不。
就是 php文件里只寫一個
<?php
phpinfo();
?>