导航:首页 > 编程语言 > 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相关的资料

热点内容
cnc手动编程铣圆 浏览:720
cad中几种命令的意思 浏览:324
oraclelinux安装目录 浏览:133
安卓系统可以安装编译器吗 浏览:570
javajson实体类 浏览:690
板加密钢筋是否取代原钢筋 浏览:66
学习编程的思路 浏览:230
app易语言post怎么学 浏览:965
地梁的箍筋加密区位置 浏览:302
二分法排序程序及编译结果 浏览:679
日语命令形和禁止型 浏览:285
安装软件用管理员解压 浏览:505
编译原理代码块 浏览:400
小孩可以用压缩面膜吗 浏览:14
锥形倒角怎么计算法 浏览:883
java合并链表 浏览:508
pic单片机编译器 浏览:806
丽水四轴加工中心编程 浏览:691
国产系统怎么解压 浏览:554
战双程序员 浏览:485