gpt4 book ai didi

php - Laravel 5.2 漂亮的 URL

转载 作者:行者123 更新时间:2023-12-03 22:55:54 25 4
gpt4 key购买 nike

如何更改 http://domain.com/public/index.phphttp://domain.com并且可以让除 ('/') 之外的其他路由工作?

解决方法 1:

虚拟主机文件:

<VirtualHost *:80>   
DocumentRoot "/var/www/html/domain/public"
ServerName domain.com
<Directory "/var/www/html/domain/public">
AllowOverride All
Allow from All
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

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]
</IfModule>

有了这个设置,是的,我可以设置 http://domain.com但是当我尝试调用另一条路线时,出现 404。这背后的原因如您所见,我已将我的根文件夹设置为公开。所以我的路线无法到达它们的目的地(比如那些被定向到我的 Controller 的路线,因为我的 Controller 不在公共(public)文件夹中)。

解决方法 2:
如果这次我将文档根目录和目录更改为 /var/www/html/domain/,我将丢失漂亮的 url,并且我只能通过输入 http://来请求主页domain.com/public/index.php.

请注意,我使用的是 ubuntu 14.04。

你有什么建议?

---更新---
路由示例:

Route::get('myroute', array(
'uses' => 'MyController@myMethod',
'as' => 'myroute'
));

---更新2---php artisan route:list 结果是

+--------+----------+---------+------+---------+------------+
| Domain | Method | URI | Name | Action | Middleware |
+--------+----------+---------+------+---------+------------+
| | GET|HEAD | / | | Closure | web |
| | GET|HEAD | myroute | | Closure | web |
+--------+----------+---------+------+---------+------------+

最佳答案

您需要在 Web 服务器的配置文件中正确设置虚拟主机。设置public directory as root directory for Laravel VH and restart web server .

For Apache you can use these directives:

DocumentRoot "/path_to_aravel_project/public"
<Directory "/path_to_aravel_project/public">

For nginx, you should change this line:

root /path_to_aravel_project/public;

关于php - Laravel 5.2 漂亮的 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37718237/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com