我试图在我的服务器上的这个目录中安装laravel 5应用程序:
public_html/myapp/
我希望通过以下URL访问:
http://www.example.com/myapp/
我创建了此.htaccess规则并将其放置在myapp
文件夹中,以便重定向请求:
RewriteEngine on
RewriteRule ^(.*)$ public/$1 [L]
在我的浏览器中,当我尝试访问应用程序时,会收到重定向的URL,如:
http://www.example.com/myapp/public/index.php
而不是漂亮的URL,比如:
http://www.example.com/myapp/
http://www.example.com/myapp/dashboard
我需要在.htaccess文件中更改什么才能使正确的URL正常工作?
更新:laravel应用程序可以移动到其他地方,如果需要,只要所需的URL结构上面(与应用程序在example.com/myapp/访问)可以实现。
更新:当我尝试访问example.com/myapp/dashboard
时,我在浏览器中收到以下错误消息:NotFoundHttpException in compiled.php第7793行:
带有以开头的堆栈跟踪:
in compiled.php line 7793
at RouteCollection->match(object(Request)) in compiled.php line 7066
at Router->findRoute(object(Request)) in compiled.php line 7038
at Router->dispatchToRoute(object(Request)) in compiled.php line 7030
at Router->dispatch(object(Request)) in compiled.php line 1989
at Kernel->Illuminate\Foundation\Http\{closure}(object(Request))
更新:以下.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>
我也遇到了同样的问题,但是通过RewriteBase参数可以解决它。
这是我的. htaccess:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
RewriteBase /my_app/
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
您可以通过在myapp
文件夹中添加额外的. htaccess
文件轻松实现这一点(这将重定向您在myapp
文件夹中的所有请求到Public
,因为它应该):
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
您还应该修改myapp/public
目录中的.htaccess
,如下所示:
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteBase /myapp/
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . index.php [L]
</IfModule>
这里的变化是你重写了基本路径重写 /myapp/
你能做的是使用符号链接。
>
在public_html文件夹中创建应用程序公用文件夹的符号链接
CD /path/to/your/public_html
sudo ln-s /path/to/your/laravel_app/publicmyapp
你可以在这里阅读更多关于符号链接的信息。
我是WebSphere的新手。已经安装了带有单个配置文件的WebSphere8.5服务器。并且安装并启用了JDK7(因为WebSphere8.5默认附带JDK6)。最后,安装了应用程序。但是已安装的应用程序在“已安装的应用程序”目录中没有得到更新。 但是,应用程序安装在C:\websphere85\appserver\profiles\appsrv01中 不知道它在哪里覆盖了这条路径。请帮帮忙。提
问题内容: 我正在建立一个允许人们上传文件,html页面等的网站…现在我遇到了问题。我有这样的目录结构: 现在,我想禁用PHP,但是要在/ USERS的目录和子目录中启用服务器端包含 可以做到这一点(以及如何:))?提前致谢。 顺便说一句,我使用WAMP服务器 问题答案: 尝试禁用.htaccess文件中的选项:
我想禁用对目录的访问,但不想使用.htaccess禁用子目录 我已经写了一个重写规则重定向一切到一个子目录(public_html),但它的父仍然是可访问的,如果用户知道网址,我想禁用当前目录的访问,而不是子目录
我使用jpack打包了我的java应用程序。当我使用打包的安装程序安装它时,安装后的目录始终是
我无法显示android中已安装应用的play store类别。 最终意图maintent=新意图(Intent.ACTION_MAIN,空);主旨。addCategory(意图。CATEGORY_启动器);最终列表pkgAppsList=上下文。getPackageManager()。查询活动(mainIntent,0);
我有一个子目录()我想访问的是在我的站点的根文件夹。我看了这里: https://wordpress.stackexchange.com/questions/20152/cannot-access-non-wordpress-subdirectories-as-wordpress-overrides-them-with-a-40 我已经尝试了解决方案,但没有任何效果。 我还尝试将一个单独的文件添加