91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux中PHP環境部署與項目上線的示例分析

發布時間:2021-06-07 10:03:28 來源:億速云 閱讀:180 作者:小新 欄目:編程語言

這篇文章主要為大家展示了“Linux中PHP環境部署與項目上線的示例分析”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“Linux中PHP環境部署與項目上線的示例分析”這篇文章吧。

一、項目上線部署

1、前言

要想部署環境上線項目,先具備以下條件:服務器(ip、帳號密碼、終端)、相應的軟件、域名(備案解析、代碼)等。

服務器、域名購買

首先登錄控制臺,獲取需要連接的主機ip地址:

Linux中PHP環境部署與項目上線的示例分析

獲取到用于連接的公網IP后,即可使用遠程終端工具連接上待操作上線的服務器。

遠程工具可以使用Putty、CMD等,無限制要求。

Linux中PHP環境部署與項目上線的示例分析

以CentOS7.6為例,在購買好服務器并產生實例后,首次登錄進系統請先執行“yum -y update”來更新整個系統,防止系統存在漏洞:

Linux中PHP環境部署與項目上線的示例分析

2、安裝PHP7

在當前系統默認的yum源中,PHP最新的版本為5.4.16[DY2] ,而需要上線的項目要求最低版本為PHP7.0,此時,EPEL[DY3] 恰恰可以解決這的問題。

a. 安裝CentOS7適用的epel

 rpm -Uvhhttps://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

b. 獲取PHP7的yum源

rpm -Uvhhttps://mirror.webtatic.com/yum/el7/webtatic-release.rpm

c. 安裝PHP7.2及其常用擴展

yum install php72w php72w-cli php72w-common php72w-develphp72w-embedded php72w-fpm php72w-gd php72w-mbstring php72w-mysqlndphp72w-opcache php72w-pdo php72w-xml

Linux中PHP環境部署與項目上線的示例分析


d. 測試PHP安裝情況

php -v

Linux中PHP環境部署與項目上線的示例分析

3、安裝Apache2

a. 執行安裝的yum指令:

yum -y install httpd

b. 設置Apache開機啟動并且啟動Apache:

systemctl enable httpd && systemctl start httpd[DY4]

c. 編寫一個靜態文件和一個php腳本測試Apache對于動、靜態文件是否解析正常

注意:Apache的默認站點位于“/var /www/html

創建index.html、index.php文件,內容隨意:

Linux中PHP環境部署與項目上線的示例分析

使用瀏覽器進行測試訪問:

Linux中PHP環境部署與項目上線的示例分析

4、安裝Mariadb[DY5]

此處安裝的Mariadb為MySQL的一大分支,在使用上與MySQL沒有太大的差別。

a. 執行安裝指令

yum -y install mariadb-server

Linux中PHP環境部署與項目上線的示例分析

b. 啟動Mariadb服務并且設置開機啟動項

systemctl enable mariadb && systemctlstart mariadb

c. 執行初始化Mariadb數據庫指令(設置初始密碼等操作)

mysql_secure_installation[DY6]

d. 嘗試使用命令行登錄到Mariadb

mysql -u root -p

Linux中PHP環境部署與項目上線的示例分析

5、域名解析

之前做修改hosts文件,其實就是域名解析的一種,當時只是局限于本地,現在要考慮是線上。

要做解析得登錄到域名控制面板中去,解析域名之前最好先確保域名已經備案,如果沒有備案的域名,則雖然解析會成功,但是會影響使用,在使用的時候會被服務商攔截。

Linux中PHP環境部署與項目上線的示例分析

點擊添加解析記錄按鈕:

Linux中PHP環境部署與項目上線的示例分析

在彈出的彈窗界面中填寫對應的記錄信息[DY7] :

Linux中PHP環境部署與項目上線的示例分析

使用ping測試:

Linux中PHP環境部署與項目上線的示例分析

6、解壓代碼導入數據庫

步驟1**:導入sql****文件到數據庫中去**

進入數據庫的命令行管理界面,創建出需要的數據庫edu16,使用source指令導入sql文件:

Linux中PHP環境部署與項目上線的示例分析

步驟2**:創建站點的運行目錄,將上傳好的代碼zip****壓縮包進行解壓,然后將代碼復制到站點運行目錄中去**

a. 約定站點目錄為“/var/www/html”。

創建站點目錄:

目錄已經存在,不需要創建

b. 復制先前上傳的代碼壓縮包到當前站點目錄下,解壓壓縮包,解壓完畢之后可以刪除

解壓語法:unzip 壓縮包路徑

Linux中PHP環境部署與項目上線的示例分析

此時由于站點入口文件在public目錄下,而當前項目的站點在/var/www/html中,缺少個public,所以此時需要修改apache的配置文件中的DocumentRoot一項。

# vim /etc/httpd/conf/httpd.conf
Linux中PHP環境部署與項目上線的示例分析

Linux中PHP環境部署與項目上線的示例分析

同時賦予臨時目錄寫權限:

Linux中PHP環境部署與項目上線的示例分析
解決偽靜態的問題(不解決只能訪問首頁,其他頁面都404):

Linux中PHP環境部署與項目上線的示例分析

思路:開啟當前站點根目錄下的AllowOverride配置項,設置為All即可,然后重啟apache。

7、創建虛擬主機

目標:要求上線能夠使用https協議進行訪問。【提高安全性,增強用戶對網站的信心】

a. 申請SSL證書

要想站點支持https協議,先得先去向CA申請服務器證書。目前有很多免費的證書可供申請,例如與阿里云合作的Sysmantec一年免費證書,一般免費的證書只能綁定一個域名。除了1年免費的,還有三個月免費的,但是不限次數,不限域名個數,甚至還支持通配符。

以阿里云為例:

https://common-buy.aliyun.com/?spm=5176.2020520163.cas.3.267d56a7EBRcYw&commodityCode=cas#/buy

Linux中PHP環境部署與項目上線的示例分析

付款完畢之后點擊“待申請證書”:
Linux中PHP環境部署與項目上線的示例分析
Linux中PHP環境部署與項目上線的示例分析

Linux中PHP環境部署與項目上線的示例分析
Linux中PHP環境部署與項目上線的示例分析

等待證書簽發完成,隨后下載證書:

Linux中PHP環境部署與項目上線的示例分析

解壓壓縮包之后得到的證書公私玥文件:

Linux中PHP環境部署與項目上線的示例分析

將三個文件上傳到服務器上去,并且固定保存路徑,盡量不要變化。

約定,將證書公私玥文件存儲在“/ssl/”
Linux中PHP環境部署與項目上線的示例分析

b. 安裝Apache的mod_ssl模塊

yum -y install mod_ssl

Linux中PHP環境部署與項目上線的示例分析

c. 虛擬主機的配置參考(80+443):

注意:yum方式安裝的apache的默認主配置文件位于/etc/httpd/conf/httpd.conf

Linux中PHP環境部署與項目上線的示例分析

根據主配置文件中的配置可以看出,其引入了conf.d目錄下的全部conf文件,那么可以在該目錄中創建一個vhosts.conf****文件,作為虛擬主機的配置文件:

80端口主機:

<VirtualHost *:80>
ServerAdmin cherish@cherish.pw
DocumentRoot"PATH"
ServerName “yourdomain.com”
<Directory “PATH”>
Allow from all
AllowOverride all
Options -indexes
Require all granted

443端口主機:

<VirtualHost *:443>
SSLEngine on
SSLCertificateFile “公鑰文件路徑”
SSLCertificateKeyFile “私鑰文件路徑”
SSLCertificateChainFile “證書鏈文件路徑”
SSLCipherSuite"ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4:!DH:!DHE"
SSLProtocol TLSv1.1 TLSv1.2
Headeralways set Strict-Transport-Security “max-age=63072000; includeSubdomains;preload”
DocumentRoot “PATH”
ServerName “yourdomain.com”
<Directory “PATH”>
Allowfrom all
AllowOverride all
Options -indexes
Require all granted

Linux中PHP環境部署與項目上線的示例分析

創建好之后,參考上述的框框中配置代碼,進行修改,其中443端口的虛擬主機配置含義如下:
Linux中PHP環境部署與項目上線的示例分析

修改完畢之后保存退出,然后重啟apache

systemctl restart httpd

d. 打開瀏覽器訪問項目,檢查https協議是否生效

Linux中PHP環境部署與項目上線的示例分析

問題,生效雖然生效了,但是https協議需要用戶手動去補充,在直接輸入域名訪問的時候默認還是80的http****協議,如何解決?

答:使用重寫的方法,強制用戶在訪問http的時候跳轉到https。操作步驟如下,在站點根目錄下的“.htaccess”文件中添加如下代碼,保存退出即可:
Linux中PHP環境部署與項目上線的示例分析

RewriteCond %{HTTPS} !=on

RewriteRule ^(.*) https://%{SERVER_NAME}/$1 [R,L]

舉手之勞:框架運行的時候報錯了,請解決。

錯誤1**:權限不足**
Linux中PHP環境部署與項目上線的示例分析

解決辦法:
Linux中PHP環境部署與項目上線的示例分析

錯誤2**:數據庫連接失敗**

Linux中PHP環境部署與項目上線的示例分析

解決辦法:修改項目目錄下的.env文件

Linux中PHP環境部署與項目上線的示例分析

處理完畢之后項目即可訪問您的項目了。


[DY1]如搭配使用的服務器在大陸境內,則需要域名先通過ICP備案。

[DY2]RHEL以及他的衍生發行版如CentOS、Scientific Linux為了穩定,官方的rpm repository提供的rpm包往往是很滯后的,當然了,這樣做這是無可厚非的,畢竟這是服務器版本,安全穩定才是重點。

[DY3]EPEL:Extra Packages of EnterpriseLinux

[DY4]“指令A && 指令B”語法表示當指令A執行成功之后再去執行指令B。

systemctl指令是CentOS7中特有的指令,含義如指令名稱:systemcontrol。

控制服務開關:

systemctl 開關服務名

啟動項管理:

  • systemctl enable/disable 服務名

  • [DY5]在CentOS7的yum源中,數據庫軟件沒有MySQL,取而代之的是Mariadb。

  • [DY6]執行該指令后依次有以下幾個輸入內容:

  • 輸入當前數據庫root帳號密碼,沒有密碼則直接按回車;

  • 是否設置密碼?輸入Y后,為root用戶設置密碼;

  • 是否移除匿名用戶?選擇Y;

  • 是否禁止root用戶遠程登錄?Y/n均可,不會生效;

  • 是否刪除測試的test數據庫?選擇Y/n均可;

  • 是否刷新權限?選擇Y;

[DY7]常見的幾個記錄類型:

A記錄:將域名指向一個IPv4地址;

CNAME記錄:域名的別名,將一個域名指向另一個域名;

MX記錄:一般用于做域名郵箱,將域名指向一個郵件服務器;

以上是“Linux中PHP環境部署與項目上線的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

密山市| 临高县| 乐东| 新余市| 昭平县| 湘潭县| 安吉县| 洛浦县| 漳平市| 原平市| 汽车| 祁门县| 灵台县| 吉水县| 华坪县| 神池县| 镶黄旗| 眉山市| 韩城市| 鄂托克旗| 建水县| 吕梁市| 文成县| 龙山县| 乐昌市| 广元市| 聂荣县| 巴中市| 花垣县| 南丰县| 环江| 谷城县| 岳阳市| 长岭县| 和田市| 罗定市| 青田县| 金平| 菏泽市| 凤庆县| 中阳县|