centos安裝php7
㈠ Centos7怎麼做安裝php7最新版
直接下載PHP7.0.2的安裝包解壓,編譯,安裝:
下載php7,並解壓
$ cd /usr/src/
$ wget
#解壓
$ tar -xzxvf php-7.0.2.tar.gz
$ cd php-7.0.2
解壓完後先不要編譯,請檢查是否安裝了gcc ,沒有的話執行yum install gcc
檢查是否安裝了libxml2 ,沒有的話執行yum install libxml2
檢查是否安裝了libxml2-devel,沒有的話執行yum install libxml2-devel
註:因為改為用nginx了,所以編譯參數中的--with-apxs2=/usr/bin/apxs去掉了,如果要配置apache用,安裝PHP前,請先安裝apache。
㈡ Centos如何通過yum安裝php7
隨著PHP的升級迭代,老的php版本陵擾在一些高並發,情況下越來越吃力,PHP7+順勢而生,隨著swoole的擴展協程在php中也變得得以實現,下面看下怎麼在centos下升級對應的php吧。
首先確定centos版本
1.通過cat/etc/redhat-release本機用到的是Centos6.2版本
2.由於是升級php,為了防止沖突我們使用rpm_qa|grepphp看看洞汪蠢系統中是否有PHP,然後我們remove掉他yumremove_yphp*,以免影響沖突。
3.接下來我們來安裝php7.2,我的安裝過程可謂一波三折啊,跟著我看看踩了的那些坑吧。
因為默認的yum源沒有php7.2,因此我們必須額外安裝yum源
配置安裝yum源EPELandRemirepository
Centos7系列:
Centos6系列:
然而悲催的是第一步都出錯了,竟然提示打不開納陪rpm,此處不要慌張,只需要yumupdate_ynss即可nss(linux名稱解析服務)
2)接下來安裝yum-utils
yuminstall-yyum-utils
執行完後我們通過以下命令
yum-config-manager--enableremi-php72
啟用php72這里注意只是啟用了,但是具體的還得通過以下命令來安裝
yuminstall-yphpphp-mcryptphp-cliphp-gdphp-curlphp-mysqlphp-ldapphp-zipphp-fileinfophp-fpmphp-develphp-mbstring
What?又報錯這又是什麼原因呢看著提示是yum找不到。不要怕此時應該是python版本問題導致的。我們只需要將python重新軟鏈下即可
rm-rf/usr/bin/python&&ln-s/usr/bin/python2.6/usr/bin/python
至此php7.2安裝完成。
㈢ centos7系統源碼編譯安裝PHP7.3.5版本
新增系統用戶組和用戶:
下載 PHP7.3.5
[root@localhost ~]# mkdir devdir
[root@localhost ~]# cd devdir/
[root@localhost devdir]# wget https://www.php.net/distributions/php-7.3.5.tar.gz
-bash: wget: 未找到命令
[root@localhost devdir]# rpm -qa|grep wget
[root@localhost devdir]# yum -y install wget
[root@localhost devdir]# rpm -qa|grep wget
wget-1.14-18.el7.x86_64
下載PHP7 解壓 編譯
wget -c https://downloads.php.net/~cmb/php-7.3.4.tar.gz
編譯參數解釋
--with-fpm-user=webu --with-fpm-group=webg 添加PHP運行用戶和用戶組
配置信息出錯:
下載gcc軟體編譯器 yum install -y gcc
configure: error: libxml2 not found. Please check your libxml2 installation.
下載libzip-1.5.2.tar.gz
https://libzip.org/download/libzip-1.5.2.tar.gz
解決libzip 和cmake版本問題
重新配置PHP7編譯環境參數
libzip-1.5.2 無法安裝,已經取消了。
提示off_t類型沒有定義 undefind,解決方法:
編譯安裝
測試PHP是否安裝成功
轉載自:https://my.oschina.net/u/4127346/blog/3047778
㈣ 如何在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
請在第一次登錄時更改兩個密碼。
㈤ CentOS安裝了PHP7.4後PHP編寫的網站還是不能打開
網站打不開有多種原因。
- 許可權不足,因為需要寫入緩存文件,如果許可權不足,程序無法運行。
- 資料庫未連接,基本上所有的網站都需要資料庫存儲信息,如果資料庫連接不對,也無法訪問網站。
- php版本不對,有些程序是特定版本下才能運行的,如果版本過高或者過低,都有可能導致程序出錯,網站無法打開。
對於無法打開的網站,最好是開啟伺服器的日誌和報錯信息,這樣有利於排查問題。
㈥ linux下centos 7 php7 gd庫 安裝後 這樣是成功的嗎
你這是打開php配置站點後顯示的頁面內容嗎?是的話,說明你已經成功安裝了gd庫了,接下來就可以使用gd庫編寫相應的程序網站了。
樓主如果對如何再Linux下配置使用gd庫還不是很熟悉,可以網路《Linux就該這么學》,裡面有講解如何操作Linux系統、配置資料庫、部署網站等教程。
㈦ 怎麼安裝PHP環境
LAMP/LNMP 環境搭建
一.檢查系統環境
1.確認centos版本
[root@localhost ~]# cat /etc/redhat-release
2.檢查是否安裝過apache
rpm -qa | grep httpd
或者:
apachectl -v
或者:
httpd -v
3.檢查是否安裝過Mysql
service mysqld start
如果未被識別則沒有安裝
如果系統安裝過,或者安裝失敗,清理一下系統
4.清理Mysql痕跡
yum remove mysql
rm -f /etc/my.cnf
5.卸載Apache包
rpm -qa|grep httpd
注意:如果是新的系統或者你從來沒有嘗試安裝過,則以上步驟省略
二.安裝Apache、PHP、Mysql
停止防火牆服務
[root@localhost ~]# systemctl stop firewalld.service
禁用防火牆開機啟動服務
[root@localhost ~]# systemctl disable firewalld.service
1.安裝apache
[root@localhost ~]# yum -y install httpd
2.安裝php
[root@localhost ~]# yum -y install php
3.安裝php-fpm
[root@localhost ~]# yum -y install php-fpm
4.安裝Mysql
[root@localhost ~]# yum -y install mysql
5.安裝 mysql-server
[root@localhost ~]# yum install mariadb-server
CentOS 7+ 版本將MySQL資料庫軟體從默認的程序列表中移除,用mariadb代替了,entos7配置教程上,大多都是安裝mariadb,因為centos7默認將mariadb視作mysql。
因為mysql被oracle收購後,原作者擔心mysql閉源,所以又寫了一個mariadb,這個資料庫可以理解為mysql的分支。如果需要安裝mariadb,只需通過yum就可。
6.安裝 php-mysql
[root@localhost ~]# yum -y install php-mysql
三.安裝基本常用擴展包
1.安裝Apache擴展包
yum -y install httpd-manual mod_ssl mod_perl mod_auth_mysql
2.安裝PHP擴展包
yum -y install php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc php-devel
3.安裝Mysql擴展包
yum -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql
四.配置Apache、mysql開機啟動
重啟Apache、mysql服務(注意這里和centos6有區別,Cenots7+不能使用6的方式)
systemctl start httpd.service #啟動apache
systemctl stop httpd.service #停止apache
systemctl restart httpd.service #重啟apache
systemctl enable httpd.service #設置apache開機啟動
重啟資料庫
#啟動MariaDB
[root@localhost ~]# systemctl start mariadb.service
#停止MariaDB
[root@localhost ~]# systemctl stop mariadb.service
#重啟MariaDB
[root@localhost ~]# systemctl restart mariadb.service
#設置開機啟動
[root@localhost ~]# systemctl enable mariadb.service
五.配置Mysql
初次安裝mysql是沒有密碼的,我們要設置密碼,mysql的默認賬戶為root
方式1:設置 MySQL 數據 root 賬戶的密碼:
[root@localhost ~]# mysql_secure_installation
當出現如下提示時候直接按回車:
Enter current password for root
出現如下再次回車:
Set root password? [Y/n]
出現如下提示輸入你需要設置的密碼,這里輸入了root,輸入密碼是不顯示的,回車後再輸入一次確認:
New password:
接下來還會有四個確認,分別是:
Remove anonymous users? [Y/n]
Disallow root login remotely? [Y/n]
Remove test database and access to it? [Y/n]
Reload privilege tables now? [Y/n]
直接回車即可。
方式2:進入mysql mysql -r
修改mysql密碼:set password for 'root'@'localhost'=password('root');
mysql授權遠程連接(navicat等): grant all on *.* to root identified by 'root';
六.測試環境
我們在瀏覽器地址欄輸入http://ip/,正常顯示,說明我們的lamp 環境搭建成功
七.安裝nginx
yum install yum-priorities -y
wget http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm
yum install nginx
Nginx 版本號可變更http://nginx.org/packages/centos/7/noarch/RPMS/$版本
八.配置nginx
1.nginx啟動,停止,重啟
systemctl start nginx.service #啟動nginx
systemctl stop nginx.service #停止
systemctl restart nginx.service #重啟
systemctl enable nginx.service #設置開機啟動
更改nginx埠號(根據自己需求)
cd /etc/nginx/conf.d/
vim default.conf
把listen 80改成listen 81
3.訪問http://ip:81即可看到nginx首頁
安裝完成訪問時候需要啟動php-fpm,不重啟訪問會出現下載文件,重啟命令如下
systemctl start php-fpm.service #啟動php-fpm
systemctl enable php-fpm.service #設置開機啟動
4.更改nginx配置文件識別php
vi /etc/nginx/conf.d/default.conf,把之前的#給去掉就可以了,順手改一下
location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html/$fastcgi_script_name;
include fastcgi_params;
}
方法二 安裝nginx
yum install nginx
啟動nginx,並設置為開機啟動
systemctl start nginx
systemctl enable nginx
5.在 /usr/share/nginx/html中新建一個test.php
訪問http://ip:81/test.php即可看到php頁面
修改完成配置記得啟動apache 和php-fpm 哦!
九.負載配置
upstream site{
server 172.16.170.138;
server 172.16.170.139;
}
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/log/host.access.log main;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
proxy_pass http://site;
}
apache 默認目錄 /var/www/html
nginx 默認目錄 /usr/share/nginx/html
升級php版本
centos7 默認安裝php是5.4
查看yum的可安裝的php版本列表
yum provides php
開始升級PHP更新源:
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum remove php-common -y #移除系統自帶的php-common
php72版本
yum install -y php72w php72w-opcache php72w-xml php72w-mcrypt php72w-gd php72w-devel php72w-mysql php72w-intl php72w-mbstring
php56版本
yum install -y php56w php56w-opcache php56w-xml php56w-mcrypt php56w-gd php56w-devel php56w-mysql php56w-intl php56w-mbstring #安裝依賴包
查看php版本
php -v
安裝php fpm:
yum install php72w-fpm
yum provides php-fpm #因為我是准備搭建lnmp,所以安裝php-fpm,這里會提示多個安裝源,選擇5.6版本的安裝就可以了
yum install php56w-fpm-5.6.31-1.w7.x86_64 -y
systemctl start php-fpm.service 【啟動】
systemctl enable php-fpm.service【開機自啟動】
CentOS yum有時出現「Could not retrieve mirrorlist 」的解決辦法——resolv.conf的配置
原因:沒有配置resolv.conf
解決方法:
到/etc目錄下配置resolv.conf加入nameserver IP,如:
nameserver 8.8.8.8
nameserver 8.8.4.4
search localdomain
保存再次運行上面的命令就可以。
https://blog.csdn.net/mao834099514/article/details/73470001
nginx目錄 : /usr/share/nginx/html
/etc/nginx/conf.d/default.conf nginx配置目錄
apache目錄 : /var/www/html
/etc/httpd/conf/httpd.conf apache配置文件
nginx 配置域名
cd /etc/nginx
cp default.conf imooc.conf
修改server_name imooc.test.com 以及項目目錄
配置虛擬域名 windows 訪問需要在host增加 linuxip
ServerName www.nine.com
DocumentRoot "/var/www/html/learnlaravel/public"
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
關閉防火牆
setenforce 0