我的网站已经建成了:http://example.com
我的目录结构是:
root/
|
-- htdocs/ ---> This is the document root. All the front end scripts are located here.
| |
| - css/
| - ...
|
-- cms/ --> This is the backend. This site is like a cms Driven Site.
现在我想在后端安装laravel。我想用laravel构建我的CMS。但我不希望网址如下:http://example.com/cms/public/
我希望它只是:http://example.com/cms/
我知道,我可以将所有文件夹放在文档根目录之外,并重命名public
文件夹并更改一些设置以实现我想要的效果。但我不希望我的文档根目录中包含所有这些文件。文件夹和文件与我的前端相关文件和&文件夹。我希望整个事情能够在其他网站后端分离并易于使用。
为了达到这个目的,我使用了2个.htaccess
文件。
在文档根目录中,我有:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^cms/$ cms/public/ [L]
RewriteRule ^cms/(.*)$ cms/public/$1 [L]
</IfModule>
在cms文件夹中我有:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ public/ [L]
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
我不擅长写.htaccess
或做mod_rewrite
。
任何人都可以帮助我
答案 0 :(得分:0)
你可以用这种方式实现你想要的目标:
从public
到后端目标文件夹的laravel
文件夹创建目录联结:
mklink /J C:\www\htdocs\app-frontend\cms C:\www\htdocs\app-backend\public
第一个路径用于别名,第二个路径用于 real 文件夹。此处app-backend
将是安装laravel
的文件夹。
这就是我在共享托管中处理Laravel的方式。
如果您选择采用mod_rewrite
方法,则会显示.env
文件。