導航:首頁 > 編程語言 > nginxphplaravel

nginxphplaravel

發布時間:2022-07-16 14:19:07

1. php的Laravel如何設置一進去就直接跳轉到主頁,並且使其路由可用

public是官方給出的默認路徑,為什麼要改,php artisan serve是一個PHP+5.4以上的內置開發伺服器,你可以使用Apache或是Nginx作為你自己的伺服器,建議使用laravel官方推出的虛擬盒子homestead,非常好用。
可以參考這篇文章http://blog.csdn.net/leijun19930412/article/details/43374349

2. centos7.2+nginx1.6+php5.7 laravel框架。loadrunner測試注冊介面時。php-fpm佔用過高的cpu,內存無影響

安裝 Composer
Laravel 框架使用 Composer 來管理其依賴性。所以,在你使用 Laravel 之前,你必須確認在你電腦上是否安裝了 Composer。
安裝 Laravel
通過 Laravel 安裝工具
首先,使用 Composer 下載 Laravel 安裝包:
composer global require 「laravel/installer=——1.1」
請確定把 ——/.composer/vendor/bin 路徑放置於您的 PATH 里, 這樣 laravel 執行文件就會存在你的系統。
一旦安裝完成後,就可以使用 laravel new 命令建立一份全新安裝的 Laravel 應用,例如: laravel new blog 將會在當前目錄下建立一個名為 blog 的目錄, 此目錄裡面存放著全新安裝的 Laravel 相關代碼,此方法跟其他方法不一樣的地方在於會提前安裝好所有相關代碼,不需要再通過 composer install 安裝相關依賴,速度會快許多。
laravel new blog
通過 Composer Create-Project
你一樣可以通過 Composer 在命令行執行 create-project 來安裝 Laravel:
composer create-project laravel/laravel --prefer-dist
腳手架
Laravel 自帶了用戶注冊和認證的腳手架。如果你想要移除這個腳手架,使用 fresh 命令即可:
php artisan fresh
環境需求
Laravel 框架有一些系統上的需求:
PHP 版本 >= 5.4
Mcrypt PHP 擴展
OpenSSL PHP 擴展
Mbstring PHP 擴展
Tokenizer PHP 擴展
在 PHP 5.5 之後, 有些操作系統需要手動安裝 PHP JSON 擴展包。如果你是使用 Ubuntu,可以通過 apt-get install php5-json 來進行安裝。
配置
在你安裝完 Laravel 後,首先需要做的事情是配置一個隨機字串作為應用程序密鑰。假設你是通過 comoser 安裝 Laravel ,這個密鑰會自動通過 key:generate 命令幫你配置完成。
通常這個密鑰應該有 32 字元長。這個密鑰可以被配置在 .env 環境文件中。 如果這密鑰沒有被配置的話,你的用戶 sessions 和其他的加密數據都是不安全的!
Laravel 幾乎不需配置就可以馬上使用。你可以自由的開始開發!然而,你可以查看config/app.php 文件和其他的文檔。你可能希望根據你的應用程序而做更改,文件包含數個選項如 時區 和 語言環境。
一旦 Laravel 安裝完成,你應該同時 配置本地環境。
注意: 你不應該在正式環境中將 app.debug 配置為 true。絕對!千萬不要!
許可權
Laravel 框架有一個目錄需要額外配置許可權:storage 和 vendor 目錄要讓伺服器有寫入的許可權。
優雅鏈接
Apache
Laravel 框架通過 public/.htaccess 文件來讓網址中不需要 index.php。如果你的網頁伺服器是使用 Apache 的話,請確認是否有開啟 mod_rewrite 模塊。
假設 Laravel 附帶的 .htaccess 文件在 Apache 無法生效的話,請嘗試下面的方法:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
Nginx
在 Nginx,在你的網站配置中增加下面的配置,可以使用「優雅鏈接」:
location / {
try_files $uri $uri/ /index.php?$query_string;

3. laravel5.4下nginx怎麼把public/index.php隱藏

nginx上配上try_files就好了啊

location/{
try_files$uri$uri//index.php?$args;
}

4. 為什麼nginx無法使用laravel的get請求非php頁面報錯no input file specified

打開一個頁面<?php phpinfo(); ?> 然後在游覽器下運行:頁面提示 No input file specified. FastCGI模式下訪問php文件時,出現No input file specified.錯誤 查看access.log 發現是 404
打開一個頁面<?php phpinfo(); ?> 然後在游覽器下運行:頁面提示
No input file specified.
FastCGI模式下訪問php文件時,出現No input file specified.錯誤
查看access.log 發現是 404
原因分析:
1、任何對.php文件的請求,都簡單地交給php-cgi去處理,但沒有驗證該php文件是否存在。PHP文件不存在,沒辦法返回普通的404錯誤,它返回 一個404,並帶上一句」No input file specified」
2、還可能跟 路徑或者 許可權有關系,或者SCRIPT_FILENAME 變數沒有被正確的設置(這在nginx是最常見的原因)
1)如果html也出現404錯誤,那麼就是document root 設置的有問題
2)檢查腳本文件的許可權, 可能PHP或者web server不能讀取它
3)SCRIPT_FILENAME設置錯誤
網上的解決方法:
步驟一:修改nginx主配置文件nginx.conf
默認安裝的nginx配置文件中定義fastcgi處是:fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
可以將它改成:
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
必須保證 $document_root 在配置文件中,在astcgi_param SCRIPT_FILENAME前面被用到過一次, 後面有解釋為什麼。
步驟二:修改PHP的住配置文件php.ini
修改/etc/php5/cgi/php.ini中cgi.fix_pathinfo=1
這樣也可讓php-cgi正常使用SCRIPT_FILENAME這個變數
有人說,這樣改也行
fastcgi_param SCRIPT_NAME /home/gavin/nginx/$fastcgi_script_name;
讓我們看看PHP對這兩個變數是怎麼解釋的吧
SCRIPT_NAME
SCRIPT_FILENAME
據說,必須指定正確的SCRIPT_FILENAME, PHP-CGI會忽略SCRIPT_NAME(即使它的值設置的是正確的)
或者指定特殊的php.ini, 設置doc_root, discard path, fix pathinfo等等
script_filename 只是被用做一種快捷方式。 如果fix_pathinfo設置打開,init函數將它用來決定真實的路徑
因為配置文件會改變 nginx的變數$fastcgi_script_name
fastcgi_param SCRIPT_NAME /home/gavin/nginx/$fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;

fastcgi_param SCRIPT_FILENAME /home/gavin/nginx/$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
這兩種配置都是可以的

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
也是可以的,但必須保證 $document_root 被正確設置過
『SCRIPT_FILENAME』
當前執行腳本的絕對路徑名(pathname)
『SCRIPT_NAME』
含有當前腳本的路徑。當頁面需要指向他們自己時,有用. __FILE__ 常量包含路徑和文件名
; cgi.fix_pathinfo provides *real* PATH_INFO/PATH_TRANSLATED support for CGI. PHP』s
; previous behaviour was to set PATH_TRANSLATED to SCRIPT_FILENAME, and to not grok
; what PATH_INFO is. For more information on PATH_INFO, see the cgi specs. Setting
; this to 1 will cause PHP CGI to fix it』s paths to conform to the spec. A setting
; of zero causes PHP to behave as before. Default is 1. You should fix your scripts
; to use SCRIPT_FILENAME rather than PATH_TRANSLATED.
; cgi.fix_pathinfo=0
主要跟CGI標準的
PATH_INFO
PATH_TRANSLATED
SCRIPT_NAME
有關系
修修改了好多
我的解決方法:
把 NGINX DEFAULT 那個文件中的
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
改成實際的路徑
我的是fastcgi_param SCRIPT_NAME /var/www/nginx-default/$fastcgi_script_name;
然後就好了
以上是轉載,下面是個人的解決辦法:
1. 更改php.ini
首先php.ini的配置中把
;cgi.fix_pathinfo=0 改為
cgi.fix_pathinfo=1
重啟PHP或PHP-FPM
2. 在nginx/conf/nginx.conf 找到:
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; 改為:
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
然後重啟nginx【killall -9 nginx ,./sbin/nginx】
3、如果還不行,還有一種可能是php的測試頁面代碼格式有問題,我當初做的時候,phpinfo寫成了:<? php phpinfo(); ?> 所以錯了,應該是<?phpphpinfo(); ?>

5. 有人部署過 Laravel 嗎

我的部署方式:
本地和線上都是nginx,先配好rewrite規則(就是把.htaccess裡面的規則原樣翻譯到nginx.conf裡面去)
伺服器上,我是直接導SQL, 畢竟我還不習慣用php命令去創建資料庫,當然了,這個見仁見智了,laravel的遷移功能是很強大的,在同步本地和線上資料庫方面,實在是簡單之至,若你用它的遷移功能操作的話,畢竟只是寫個php腳本,傳到伺服器再執行一下就行了,都不用在伺服器登錄mysql客戶端去操作了.
vender 的是在伺服器上當然要用 composer 安裝了, 一來vendor太大,用直接上傳或者ftp都太慢,二來,用composer的話,可以獲得laravel本身以及vendor裡面各組件的最新穩定版本.

我是目前還沒在伺服器上用 artisan, 只用 composer 進行整個框架的安裝,php composer install laravel/laravel 之後, 再把本地的app和public上傳覆蓋, 就可以運行了(記得配置根目錄指向public目錄,不然還得自己配置路徑)
1. 記得 chmod -R 777 app/storage , 不給這個目錄寫許可權, 是運行不了的
2. 記得在線上版的app/config/app.php 裡面, 使用一個32位隨機的 KEY, 然後將 debug 改為false, 不然任何錯誤都會直接顯示出來, 太不安全了。

6. 如何安裝 Laravel 5.x Nginx 與 PHP FPM 7.1 在 CentOS 7

Nextcloud 是一款自由 (開源) 的類 Dropbox 軟體,由 ownCloud 分支演化形成。它使用 PHP 和 Javascript 編寫,支持多種資料庫系統,比如 MySQL/MariaDB、PostgreSQL、Oracle 資料庫和 SQLite。它可以使你的桌面系統和雲伺服器中的文件保持同步,Nextcloud 為 Windows、Linux、Mac、安卓以及蘋果手機都提供了客戶端支持。Nextcloud 並非只是 Dropbox 的克隆,它還提供了很多附加特性,如日歷、聯系人、計劃任務以及流媒體 Ampache。

在這篇文章中,我將向你展示如何在 CentOS 7 伺服器中安裝和配置最新版本的 Nextcloud 10。我會通過 Nginx 和 PHP7-FPM 來運行 Nextcloud,同時使用 MariaDB 做為資料庫系統。

先決條件64 位的 CentOS 7伺服器的 Root 許可權

步驟 1 - 在 CentOS 7 中安裝 Nginx 和 PHP7-FPM

在開始安裝 Nginx 和 php7-fpm 之前,我們還學要先添加 EPEL 包的倉庫源。使用如下命令:

-------------------------------------

yum -y install epel-release

現在開始從 EPEL 倉庫來安裝 Nginx:

-------------------------------------

yum -y install nginx

然後我們還需要為 php7-fpm 添加另外一個倉庫。互聯網中有很個遠程倉庫提供了 PHP 7 系列包,我在這里使用的是 webtatic。

添加 PHP7-FPM webtatic 倉庫:

-------------------------------------

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

然後就是安裝 PHP7-FPM 以及 Nextcloud 需要的一些包。

復制代碼 代碼如下:

yum -y install php70w-fpm php70w-cli php70w-gd php70w-mcrypt php70w-mysql php70w-pear php70w-xml php70w-mbstring php70w-pdo php70w-json php70w-pecl-apcu php70w-pecl-apcu-devel

最後,從伺服器終端里查看 PHP 的版本號,以便驗證 PHP 是否正確安裝。

-------------------------------------

php -v

7. centos7 nginx php7 laravel 環境下的php項目中css和js緩存去不掉

這個緩存問題我這邊也有。
可以考慮用前端管理工具。

8. windows php5.6 nginx (phpstudy) ,他人的laravel框架,訪問到public目錄 ,顯示一片空白。

你直接訪問public,其實是訪問的public下的Index/index.php。
如果是空白頁的話,你可以換個文件夾public內的文件夾,即換一個方法訪問以下,可能這個項目並沒有在Index/index.php寫東西。

9. php框架yaf好還是Laravel好

yaf很少有公司用吧
做這個的也很少
不推薦
適用場景太窄,而且會帶來額外的運維麻煩。
類似yaf,Phalcon 這些 C 擴展的框架,除了帶來性能的提升外,幾乎沒有別的優勢,所以它的場景非常明確,就是犧牲運維和開發舒適度,追求 PHP 極限性能的場景。
1. 它並不是唯一的提升性能的辦法,比起 db 端,web 端水平擴展非常容易,nginx 負載均衡,或者弄個 haproxy,把機器堆起來,基本也就解決問題了。追求單機性能,上 HHVM 難度也並不大。
2. 網站在訪問量變大的過程中,往往最先頂不住的是 db,除非你的需求特殊,或者你的網站已經大到某種程度,你花在 db 端優化的時間絕對超過你花在 web 端的時間。
3. 因為是pecl擴展,運維 部署 開發都帶來了一定的麻煩。不想展開了,稍微想想應該就能明白。
總而言之,除非需求特殊,都不建議項目上 yaf,人生苦短,請用 Laravel。

10. 請問Laravel5.3在Nginx1.8.1中只能顯示首頁,其它所有頁面都顯示403 Forbidden是什麼原因

server{
listen80;
server_namexxx;
root/xxx/public;
indexindex.phpindex.htmlindex.htm;

location/{
add_headerAccess-Control-Allow-Origin*;
try_files$uri$uri//index.php?$args;
}

location~.*.(php|php5)?${
add_headerAccess-Control-Allow-Origin*;
#fastcgi_passunix:/var/run/php-fpm/php-fpm.sock;
fastcgi_pass127.0.0.1:9000;
fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name;
includefastcgi_params;

}

location~*^.+.(gif|jpg|jpeg|png|ico|swf|flv)${
expires30d;
}
}

你把xxx換成你自己的路徑和域名,試試看

閱讀全文

與nginxphplaravel相關的資料

熱點內容
諾貝爾pdf 瀏覽:967
雲伺服器快速安裝系統原理 瀏覽:788
蘋果騰訊管家如何恢復加密相冊 瀏覽:115
手機軟體反編譯教程 瀏覽:858
sqlserver編程語言 瀏覽:650
gpa國際標准演算法 瀏覽:238
伺服器編程語言排行 瀏覽:947
怎麼下載快跑app 瀏覽:966
小紅書app如何保存視頻 瀏覽:170
如何解開系統加密文件 瀏覽:809
linux切換root命令 瀏覽:283
c編譯之後界面一閃而過怎麼辦 瀏覽:880
怎麼看ic卡是否加密 瀏覽:725
lgplc編程講座 瀏覽:809
cnc手動編程銑圓 瀏覽:723
cad中幾種命令的意思 瀏覽:327
oraclelinux安裝目錄 瀏覽:134
安卓系統可以安裝編譯器嗎 瀏覽:571
javajson實體類 瀏覽:691
板加密鋼筋是否取代原鋼筋 瀏覽:68