thinkphp5.1部署在百度云主机的注意事项
thinkphp5.1部署在百度云主機(jī)的注意事項(xiàng)
網(wǎng)站建好了,找了一圈好點(diǎn)的云主機(jī)部署,首先看的是openshift,雖然有免費(fèi)的支持,但是限制很多,且部署相當(dāng)麻煩。正好看到最近百度云主機(jī)做活動(dòng),于是搞了一個(gè)bch玩一玩。但是也遇到很多坑,加上百度云主機(jī)對(duì)應(yīng)的支持文檔寫的簡(jiǎn)單隨意,也是遇到不少麻煩,整理出來(lái),供參考。
1、程序文件上傳位置
需要把你的程序根目錄文件下的文件和文件夾上傳到云主機(jī)對(duì)應(yīng)的/webroot目錄下,/webroot下此時(shí)已經(jīng)有一些系統(tǒng)自動(dòng)生成的文件,沒(méi)關(guān)系,直接把你的文件內(nèi)容(注意不是你的程序文件的根目錄這一個(gè)文件夾,而是根目錄下的所有內(nèi)容)上傳到這里就可以了。
2、首頁(yè)無(wú)法進(jìn)入的問(wèn)題
無(wú)法進(jìn)入自己的首頁(yè),主要因?yàn)閺氖莟hinkphp5開(kāi)始,入口頁(yè)面index.php被放在了public目錄下了,所以,nginx這時(shí)候找不到入口文件,所以進(jìn)步了主頁(yè)。這時(shí)候有兩種處理辦法:
第一,是將你的入口文件從public下copy到webroot下面,這里需要注意修改你入口文件中的配置,比如:
// 定義應(yīng)用目錄 define('APP_PATH', __DIR__ . '/../application/'); require __DIR__ . '/../thinkphp/start.php';改為
// 應(yīng)用目錄 define('APP_PATH', __DIR__.'/application/'); // 加載框架引導(dǎo)文件 require './thinkphp/start.php';由于這里涉及到修改框架結(jié)構(gòu),本著盡量少改動(dòng)的想法,我沒(méi)有選擇這種做法
第二,在webroot目錄下新建index.php文件,增加一句代碼即可
<?php require './public/index.php';這樣就實(shí)現(xiàn)了通過(guò)新添加引導(dǎo)文件引導(dǎo)到我們正確的入口文件的目的,OK,這個(gè)時(shí)候你再試下,程序正常進(jìn)入首頁(yè)
3、只有首頁(yè)能進(jìn)入,其他頁(yè)面404無(wú)法找到文件
主要是因?yàn)樵趖hinkphp中做了url的重寫PATHINFO,隱藏了入口文件,所以你在你的apache服務(wù)器中是沒(méi)有感知,http://localhost/index.php 與 http://localhost 是一樣的效果,但是在云虛擬機(jī)中,用的是nginx,這個(gè)時(shí)候,你的入口文件就隱藏不了了,如果要隱藏,就會(huì)報(bào)錯(cuò)404無(wú)法找到文件。要么你在處理時(shí)候注意加上入口文件,要么做url重寫。
在webroot下新建bcloud_nginx_user.conf文件,代碼如下:
4、可能你會(huì)遇到靜態(tài)文件js/css/images等文件找不到,缺少樣式等問(wèn)題
這個(gè)時(shí)候你可以看看加載web時(shí)候,靜態(tài)網(wǎng)頁(yè)的地址是否正確,三種辦法處理,一是在你的php的template.conf文件中做replace配置修改,把相應(yīng)的文件做好別名;一種是重定向,在webroot下添加文件bcloud_nginx_user.conf,添加代碼
location ~ ^/(images|javascript|js|css|flash|media|static)/ {root /home/bae/app/htdocs;#過(guò)期30天,靜態(tài)文件不怎么更新,過(guò)期可以設(shè)大一點(diǎn),如果頻繁更新,則可以設(shè)置得小一點(diǎn)。expires 30d;}或者第三種辦法,bcloud_nginx_user.conf種添加代碼如下
location / { root /home/bae/app/public; index index.php index.html index.htm; }總結(jié)
以上是生活随笔為你收集整理的thinkphp5.1部署在百度云主机的注意事项的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 白话机器学习算法理论+实战番外篇之Lig
- 下一篇: PHP中国际化地数字格式处理