适用于Laravel的Apache Mod Rewrite

我在Wampserver上安装了Laravel。目录如下:

C:\ wamp \ www \ laravel

现在的网址是这样的:

http://localhost/laravel/public/index.php/home/index

所以我用下面的htaccess代码

Options +FollowSymLinks

Options -indexes

DirectoryIndex index.PHP

RewriteEngine on

RewriteCond $1 !^(index\.PHP|images|robots.txt)

RewriteCond %{REQUEST_ FILENAME} !-f

RewriteCond %{REQUEST_ FILENAME} !-d

RewriteRule ^(.*)$ index.php/$1 [L, QSA]

减少URL到

http://localhost/laravel/public/home/index

但是laravel框架坚持认为所有应用程序文件都位于公用文件夹中。

所以我想知道我需要添加到htaccess文件中(或从中减去),以便使URL看起来像

http://localhost/laravel/home/index

谢谢

回答:

在本地测试时,我要做两件事之一。

  1. 使用以下命令在公共目录下创建一个新的.htaccess。

    <IfModule mod_rewrite.c>

    RewriteEngine on

    RewriteRule ^(.*)$ public/$1 [L]

  2. 创建一个新的虚拟主机。使用WAMP,您可以导航到C:\wamp\bin\apache\YOUR APACHE VERSION\conf\extra并找到您的httpd-vhosts.conf文件,在这里您可以看到示例虚拟主机。这是我的一个:

    <VirtualHost *:80>

    DocumentRoot "c:/wamp/www/laravel/public"

    ServerName laravel.dev

    ServerAlias www.laravel.dev

确保已包含您的vhosts配置文件。打开httpd.conf文件并搜索vhosts文件,如果注释掉了,请取消注释包含行。然后,我打开CLI,然后输入notepad

"C:\windows\system32\drivers\etc\hosts"要打开的主机文件。在提及的项目下方localhost放置新主机。这是一个例子。

    127.0.0.1  laravel.dev

确保重新启动Apache和Bingo,您应该能够导航到,http://laravel.dev并且没有任何烦人的公共目录。这就是我实现它的方法,因为我更喜欢外观更好的虚拟主机,而不是冗长的localhostURL。

希望这可以帮助。

以上是 适用于Laravel的Apache Mod Rewrite 的全部内容, 来源链接: utcz.com/qa/401472.html

回到顶部