首页 > 解决方案 > 有没有办法通过使用重写规则来隐藏和重定向 url?

问题描述

[编辑]嗨,有很多例子可以做类似我想要达到的目标,但似乎我没有正确理解它们,所以寻求帮助。请不要将此作为重复项关闭,

我安装了 wordpess 作为主要网站,例如 https://www.example.com/

apache配置是这样的

    #ServerName www.example.com
    ServerName example.com
    ServerAdmin example.com
    ServerAlias www.example.com
    DocumentRoot /var/www/html/example/web
    Header set Access-Control-Allow-Origin "*"
    SSLEngine on

    SSLCertificateFile /etc/ssl/certificate/example.com/mydomain.crt
    SSLCertificateKeyFile /etc/ssl/certificate/example.com/mydomain.key
    SSLCertificateChainFile /etc/ssl/certificate/example.com/mydomain.ca-bundle
    <Directory /var/www/html/example/web>
            AllowOverride All
            Order allow,deny
            allow from all
            #AuthType Basic
            #AuthName "Restricted Content"
            #AuthUserFile /etc/apache2/.htpasswd
            # Require valid-user </Directory>

现在我需要在 web 目录中放置 3 个 laravel 项目

> mydomain
>  - web (wordpress)
>    - en  ( Laravel project)
>    - bn  (laravel project)
>    - demo (laravel project)

现在当我这样输入时,它会打开。作为它的 php laravel 项目。

https://example.com/demo/public/
https://example.com/demo/public/home
https://example.com/demo/public/login

https://example.com/en/public/ 
https://example.com/bn/public/

但是,我想重写规则,这样当某种类型

https://example.com/demo/ -> it will provide data from   https://example.com/demo/public/    but url will be https://example.come/demo
https://example.com/bn/ -> it will provide data from  https://example.com/bn/public/ but url will be https://example.com/bn

https://example.com/en/ -> it will provide data from  https://example.com/en/public/ but url will be https://example.com/en

所以 /public/* 之后的所有页面都将是 /demo/* 或 /bn/* 或 /en/*

我已经在 /web/demo/ 下编辑了 .httaccess 并带有以下参考: https ://laracasts.com/discuss/channels/laravel/wordpress-and-laravel-on-subfolder?page=1

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_URI} !^public
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>

但是当我输入 https://example.com/demo/

它给出了来自 laravel 的 404。

任何帮助将不胜感激。

标签: laravelapachemod-rewrite

解决方案


推荐阅读