Laravel总结一:
路径重写引擎
在安装完Laravel之后,运行初始界面的时候,出现下面这图时
可能大家会发现一个问题,在浏览器的URL框中,为localhost/index.php/about
按照一般思路,这个index.php是不应该出现该URL中的,不符合一般的逻辑
这里给大家解释一下。
在Laravel中,处理请求的第一个步骤就是,web server服务器首先将请求直接发送给public文件夹下的index.php页面,由该文件进行处理请求,所以Laravel的默认URL的路径是这样子的。那么问题来了,我们如何将它修改成我们逻辑大脑所能接受的呢?
这就使用到路径重写引擎(步骤如下)
Step 1.将httpd.conf配置文件中的将C:\Apache24\htdocs\laravel4\public 作为网站的根路径
(这里我的appache的路径为C:\Apache24大家根据实际情况进行替换)
确保网站根目录下包含.htaccess文件,而该文件默认存放在Laravel文件夹下的public路径下
DocumentRoot "${SRVROOT}/htdocs/pure/public"
<Directory "${SRVROOT}/htdocs/pure/public">
Step 2.修改该文件.htaccess
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
#Options -MultiViews
Options +FollowSymLinks
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
Step 3.继续修改httpd.conf文件,将原先的none改成all
<span style="font-size:12px;">Line 229
<Directory />
AllowOverride <strong style="background-color: rgb(255, 255, 0);">all</strong>
Require all denied
</Directory>
Line 266
AllowOverride <strong style="background-color: rgb(255, 255, 0);">all</strong>
Line 378
<Directory "${SRVROOT}/cgi-bin">
AllowOverride <strong style="background-color: rgb(255, 255, 0);">all</strong>
Options None
Require all granted
</Directory></span><strong style="font-size: 14pt;">
</strong>
Step 4.修改httpd.conf文件的第157行
将LoadModule rewrite_modulemodules/mod_rewrite.so这句话前的#去掉,表示启动重写模块!!重要!
生成项目KEY
在项目编写的初期,首个问题就是如何生成KEY。
打开cmd命令行。输入以下命令
phpartisan key:generate
另外,该命令必须在项目的根目录(项目的根目录在我的例子中为C:\Apache24\htdocs\laravel4,与网站根目录进行区别)下进行键入
这里偷偷告诉大家,可以直接在窗口模式的目录下,按住SHIRT+鼠标右击,选择在此处打开cmd就可以直接打开。不用cd xxx一大串的路径了。