當前位置:首頁 » 編程語言 » php升級70

php升級70

發布時間: 2023-07-13 19:54:48

① 如何在CentOS 7.3上安裝Apache,php 7.1和M6767ysql

1初步說明

在本教程中,我使用IP地址為192.168.1.100的hostname server1.example.com 。 這些設置可能會有所不同,因此您必須在適當的情況下更換它們。

我會在這里添加EPEL repo來安裝最新的phpMyAdmin,如下所示:

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*
yum -y install epel-release

要在shell上編輯文件,我將安裝nano編輯器。 如果您喜歡vi進行文件編輯,請跳過此步驟。

yum -y install nano

2安裝MySQL / MariaDB

MariaDB是原始MySQL開發人員Monty Widenius的MySQL分支。 MariaDB與MySQL兼容,我選擇使用MariaDB而不是MySQL。 運行此命令以安裝MariaDB:

yum -y install mariadb-server mariadb

然後,我們為MySQL創建系統啟動鏈接(以便每當系統啟動時,MySQL自動啟動)並啟動MySQL伺服器:

systemctl start mariadb.service
systemctl enable mariadb.service

設置MySQL根帳戶的密碼:

mysql_secure_installation

[root@server1 ~]# mysql_secure_installation
/usr/bin/mysql_secure_installation: line 379: find_mysql_client: command not found

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none): <--ENTER
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n]
New password: <--yourmariadbpassword
Re-enter new password: <--yourmariadbpassword
Password updated successfully!
Reloading privilege tables..
... Success!


By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
proction environment.

Remove anonymous users? [Y/n] <--ENTER
... Success!

Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] <--ENTER
... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a proction environment.

Remove test database and access to it? [Y/n] <--ENTER
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] <--ENTER
... Success!

Cleaning up...

All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!
[root@server1 ~]#

3安裝Apache

CentOS 7附帶apache 2.4。 Apache可以直接作為CentOS 7軟體包使用,因此我們可以這樣安裝:

yum -y install httpd

這里是安裝過程的截圖。

現在配置您的系統啟動Apache啟動時...

systemctl start httpd.service

systemctl enable httpd.service

為了能夠從外部訪問Web伺服器,我們必須打開防火牆中的HTTP(80)和HTTPS(443)埠。 CentOS上的默認防火牆是firewalld,可以使用firewalld-cmd命令配置。

firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload

現在將您的瀏覽器指向伺服器的IP地址,在我的情況下為http://192.168.1.100 ,您應該看到Apache佔位符頁面:

4安裝PHP

CentOS附帶的PHP版本相當舊(PHP 5.4),因此,我將在此步驟中顯示一些選項,從Remi存儲庫安裝更新的PHP版本,如PHP 7.0或7.1。

添加Remi CentOS存儲庫。

rpm -Uvhhttp://rpms.remirepo.net/enterprise/remi-release-7.rpm

安裝yum-utils,因為我們需要yum-config-manager實用程序。

yum -y install yum-utils

並運行yum更新

yum update

現在您必須選擇要在伺服器上使用哪個PHP版本。 如果你喜歡使用PHP 5.4,那麼繼續下一個命令。 要安裝PHP 7.0,請遵循第4.1章和PHP 7.1中的命令,使用第4.2章。

要安裝PHP 5.4,請運行以下命令:

yum -y installphp

4.1安裝PHP 7.0(可選)

我們可以安裝PHP 7.0和Apache PHP 7.0模塊,如下所示:

yum-config-manager --enable remi-php70

yum -y installphp php-opcache

4.2安裝PHP 7.1(可選)

如果要使用PHP 7.1,請使用:

yum-config-manager --enable remi-php71

yum -y installphp php-opcache

在這個例子中,在可下載的虛擬機中,我將使用PHP 7.1。

我們必須重新啟動Apache來應用更改:

systemctl restart httpd.service

5測試PHP /獲取有關您的PHP安裝的詳細信息

默認網站的文檔根目錄是/ var / www / html。 我們將在該目錄中創建一個小型的PHP文件(info.php),並在瀏覽器中調用它來測試PHP安裝。 該文件將顯示有關我們的PHP安裝的許多有用的細節,例如安裝的PHP版本。

nano /var/www/html/info.php

<?php
phpinfo();?>

現在我們在瀏覽器中調用該文件(例如http://192.168.1.100/info.php ):

如您所見,PHP 7.1正在工作,它正在通過Apache 2.0處理程序,如Server API行所示。 如果您進一步向下滾動,您將看到在PHP中已啟用的所有模塊。 MySQL沒有列出,這意味著我們還沒有在PHP中支持MySQL。

6在PHP中獲取MySQL支持

要在PHP中獲得MySQL支持,我們可以安裝php71w-mysql包。 安裝一些其他PHP模塊是一個好主意,也可能需要它們用於應用程序。 您可以搜索可用的PHP5模塊,如下所示:

yum search php

選擇您需要的並安裝它們:

yum -y install php-mysql

在下一步中,我將安裝一些常見的PHP模塊,CMS系統如Wordpress,Joomla和Drupal所需:

yum -y install php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstringphp-soap curl curl-devel

現在重新啟動Apache Web伺服器:

systemctl restart httpd.service

現在在您的瀏覽器中重新載入http://192.168.1.100/info.php並再次向下滾動到模塊部分。 你現在應該找到很多新的模塊,如Curl等。

如果您不再需要php信息輸出,那麼為了安全起見,請刪除該文件。

rm/var/www/html/info.php

7 phpMyAdmin安裝

phpMyAdmin是一個Web界面,您可以通過它來管理MySQL資料庫
phpMyAdmin現在可以安裝如下:

yum -y install phpMyAdmin

現在我們配置phpMyAdmin。 我們更改Apache配置,以便phpMyAdmin不僅允許從localhost進行連接(通過注釋<RequireAny>節並添加「要求所有已授予」行):

nano /etc/httpd/conf.d/phpMyAdmin.conf

[...]
Alias /phpMyAdmin /usr/share/phpMyAdminAlias /phpmyadmin /usr/share/phpMyAdmin<Directory /usr/share/phpMyAdmin/>
AddDefaultCharset UTF-8

<IfMole mod_authz_core.c>
# Apache 2.4
# <RequireAny>
# Require ip 127.0.0.1
# Require ip ::1
# </RequireAny>
Require all granted
</IfMole>
<IfMole !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
</IfMole>
</Directory>
<Directory /usr/share/phpMyAdmin/>
Options none AllowOverride Limit
Require all granted</Directory>

[...]

接下來,我們將phpMyAdmin中的身份驗證從cookie更改為http :

nano /etc/phpMyAdmin/config.inc.php

[...]$cfg['Servers'][$i]['auth_type'] = 'http'; // Authentication method (config, http or cookie based)?[...]

重新啟動Apache:

systemctl restart httpd.service

之後,您可以訪問http://192.168.1.100/phpmyadmin/下的phpMyAdmin :

8作為虛擬機下載

此設置可用於以ova / ovf格式(與VMWare和Virtualbox兼容)的虛擬機下載,以了解用戶的身份。

VM的登錄詳細信息

  • Linux root密碼是:howtoing。

  • Rhe MySQL的root密碼是:howtoing

  • 請在第一次登錄時更改兩個密碼。

  • 虛擬機的IP地址為192.168.1.100

② PHP單獨添加擴展 無需重啟伺服器

問題
php自身提供了很多擴展,比如curl,gmp, mbstring等等。我們在編譯安裝php時未必安裝了所有擴展。那麼在安裝完php後,如果想單獨安裝某個php自身的擴展怎麼辦呢?

我們以curl擴展模塊的安裝為例說明如何單獨添加擴展。

步驟
1.進入php源碼的擴展目錄。本例中我的源碼對應目錄如下:

/search/src/php-7.0.14/ext
1
2.進入模塊目錄,我們安裝的是curl擴展,所以進入curl目錄。此時,我們所在的目錄是

/search/src/php-7.0.14/ext/curl
1
3.執行phpize。注意,如果你的機器上有多個php版本,一定要執行你准備安裝擴展的php版本對應的phpize。比如,我的機器上同時有php7和php5.3.3。我當前准備為php7安裝curl擴展。所以執行php7對應的phpize

1 /usr/local/php70/bin/phpize
2
3 結果類似:
4 Configuring for:
5 PHP Api Version: 20151012
6 Zend Mole Api No: 20151012
7 Zend Extension Api No: 320151012

4.執行

./configure --with-php-config=/usr/local/php70/bin/php-config
1
說明:如果你的機器上只有一個php版本,大多時候不需要特別使用–with-php-config指明相應的php-config所在位置。

5.執行make,之後會在./moles/目錄下生成curl.so文件

6.執行make install

結果類似:
Installing shared extensions: /usr/local/php70/lib/php/20151012/
1
2
執行結果告訴你將curl.so安裝到了哪個目錄。

一般情況,如果你正確的指定了php-config或者你的機器只有一個php版本,so都會被正確安裝到相應php的extension_dir。如果執行make install後,extension_dir目錄下沒有相應的so,可以手動將第5步中生成的so文件cp過去。

要查看具體extension_dir,可以執行如下命令。

php -i| grep extension_dir
結果類似
extension_dir => /usr/local/php70/lib/php/20151012/ => /usr/local/php70/lib/php/20151012/
1
2
3
7.在php.ini中增加

extension=curl.so
1
如果不知道php.ini的具體位置,可以通過如下命令查看

php --ini
1
8.執行如下命令,查看是否安裝成功

php -m | grep curl
1
如果你看到了curl, 恭喜你,安裝成功!

③ 群暉系統上如何切換PHP版本

親戚啊,你解決了沒,具體咋解決的,我遇到的問題和你一模一樣分毫不差啊。

樓上的'小子你欠虐'老弟,群暉的php56,php70,php72 php73的安裝位置下面找遍了也沒有bin這個目錄,所以這個環境變數折騰了好久也沒正確添加,即使刪掉php5.6也不行,php-v依舊顯示版本是php 5.6.11

④ php程序員怎麼達到不同等級

成為一名優秀的PHP程序員,該如何做呢?應該具有什麼樣的技能,才算得上PHP程序員?你的技術又是在什麼水平級別上?本文將列出一些作為一名PHP程序員應該了解的事情。

MySQL能力罩迅

在開發上的應用基於幾個能力體現:

(1)了解:知道用PHP連接資料庫;懂得寫一些簡單的SQL;建一些簡單的索引;懂得用工具簡單操作一下資料庫(增刪改庫表結構數據等等)。

(2)熟悉:懂得在開發應用上設計資料庫,建立一些有效的索引,用explain分析SQL性能,壓力測試等等。

(3)很熟悉:深入了解資料庫索引、存儲引擎原理以及運行機制,能有效地構建高性能可擴展的資料庫結構/架構,有效地優化資料庫性能配置並加以調試,分析資料庫運行狀態。

(4)精通:簡單地說具備以上所有能力的同時,有多年高負載分布式環境下的優化管理經驗。

據觀察以及交往經驗,70%的PHPer處在了解階段,25%處於熟悉階段,>4%很熟悉,精通的人基本就不是PHPer了。

◆70%這個群體最容易忽視MySQL,以為MySQL只是簡單的存儲媒介,沒有優化意識,認為加個內存、CPU就能解決問題。

典型事件:join、order by、group by等語句性能一塌糊塗,資料庫根本沒有設計(僅限於拆成一個主表,N個附表等),搞不清欄位類型及作用,碰到大表的復雜查詢就沒轍。

◆20%這個群體的人只是MySQL運行機制理解不透物態此徹,對影響MySQL性能的關健因素把握不明確,不熟練。

典型事件:熟讀手冊,但說不清索引原理,不知道二叉樹、HASH等演算法對於資料庫的作用

◆4%的群體已經基本可以勝任DBA的職能。

OOP能力

(1)了解:了解變數的作用域、類型,及其意義,了解繼承機制等,懂得復用、封裝概念。

(2)熟悉:熟練應用介面、抽象等技術混合開發程序,並理解其中含義,一般研究過Java。

(3)很熟悉:有過OOP架構設計經驗,熟悉設計模式、UML,熟悉PHP對象運行機制,內容管理等。

(4)精通:應該是架構師級別了,不限於PHP。

經常我們會碰到一些自稱熟悉OOP卻連public、private、protected、static都解釋不清的人,是肯定沒有經歷過正規的OOP項目。

大型網站經驗

(1)了解:熟悉閉辯PHP開發下的緩存應用(Memcache、APC等);接觸過LVS、SQUID應用;有一定的Session處理方案;熟悉負載均衡;熟悉PHP數據連接池應用;了解PHP編程性能優化。

(2)熟悉:掌握分布式緩存及緩存性能優化、熟悉存儲系統、文件系統、資料庫,開發可擴展平台。能結合負載均衡合理布置流量,對PHP運行性能進行監控與分析。

(3)非常熟悉:具備系統分析師能力,已經超出PHPer環節;

(4)精通。

DOM開發能力

熱點內容
java位與運算 發布:2025-02-08 18:48:22 瀏覽:214
sift演算法詳解 發布:2025-02-08 18:35:23 瀏覽:579
linux標准錯誤的是 發布:2025-02-08 18:32:07 瀏覽:915
蠻多小說怎麼緩存書架的小說 發布:2025-02-08 18:30:16 瀏覽:888
光遇花開腳本封號嗎 發布:2025-02-08 18:23:15 瀏覽:534
怎麼弄ld帳號和密碼 發布:2025-02-08 18:11:42 瀏覽:628
新逍客20發動機壓縮比 發布:2025-02-08 17:58:10 瀏覽:115
qq號和密碼我都知道為什麼登不上 發布:2025-02-08 17:52:21 瀏覽:872
寶塔伺服器ip進不去 發布:2025-02-08 17:52:18 瀏覽:382
擔保中介源碼 發布:2025-02-08 17:14:37 瀏覽:413