Php 如何通过自定义名称访问域而不在下一个操作中更改实际url
这是我的网站Php 如何通过自定义名称访问域而不在下一个操作中更改实际url,php,.htaccess,mod-rewrite,laravel,url-rewriting,Php,.htaccess,Mod Rewrite,Laravel,Url Rewriting,这是我的网站 www.mywebsite.com/project 但我想直呼它的名字 www.mywebsite.com/project/admin 及 内容位于项目文件夹中 我该怎么做 这是我已有的.htaccess <IfModule mod_rewrite.c> <IfModule mod_negotiation.c> Options -MultiViews </IfModule> RewriteEngine On # Redirect
www.mywebsite.com/project
但我想直呼它的名字
www.mywebsite.com/project/admin
及
内容位于项目
文件夹中
我该怎么做
这是我已有的.htaccess
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</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]
选项-多视图
重新启动发动机
#重定向尾部斜杠。。。
重写规则^(.*)/$/$1[L,R=301]
#处理前控制器。。。
重写cond%{REQUEST_FILENAME}-D
重写cond%{REQUEST_FILENAME}-F
重写规则^index.php[L]
注意:
我使用的是laravel框架,因为您使用的是laravel,所以不需要像上面Mike Anthony提到的那样使用.htaccess。您需要在路由中输入一个参数 我猜你想按用户列出所有项目,你已经有了项目控制器。如果这是正确的,您可以看到下面的示例 示例
//add this code in /app/Http/routes.php
Route::get('project/{username}', function($username)
{
$user = User::where('username', $username)->first();
$projects = $user->projects()->get();
});
注意:从示例中,您需要在用户模型和项目模型之间创建关系我认为这与htaccess无关。您的解决方案很可能涉及路由和控制器。所以,我应该只处理路由吗?上面示例中提到的管理员和用户必须是用户名。。必须作为参数传递,并且必须使用路由进行处理@但是我需要改变整个路线,对吗?
//add this code in /app/Http/routes.php
Route::get('project/{username}', function($username)
{
$user = User::where('username', $username)->first();
$projects = $user->projects()->get();
});