.htaccess 在htaccess文件中使用公用文件夹时使用多种语言

.htaccess 在htaccess文件中使用公用文件夹时使用多种语言,.htaccess,multiple-languages,public-folders,.htaccess,Multiple Languages,Public Folders,我有这个.htacces文件,我非常喜欢它,但是我如何向它添加多语言?因此它理解localhost/en/不是一个文件或文件夹。现在它使用一个公用文件夹作为“根目录”,因此localhost=public/ 很好,如果我想这样做,我仍然使用公用文件夹作为根目录,但是url中的第一个//是语言 示例:localhost/en/=链接到公用文件夹,localhost/it/也链接到公用文件夹 示例2:localhost/en/admin链接到public/admin/ PS:公众/不应该出现在URL

我有这个.htacces文件,我非常喜欢它,但是我如何向它添加多语言?因此它理解
localhost/en/
不是一个文件或文件夹。现在它使用一个公用文件夹作为“根目录”,因此
localhost
=
public/

很好,如果我想这样做,我仍然使用公用文件夹作为根目录,但是url中的第一个//是语言

示例:
localhost/en/
=链接到公用文件夹,
localhost/it/
也链接到公用文件夹

示例2:
localhost/en/admin
链接到
public/admin/

PS:公众/不应该出现在URL中

这段代码做的正是我不想做的,除了语言部分

RewriteEngine on
RewriteCond %{REQUEST_URI} !^/(public)/
RewriteRule (.*) /public/$1

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME}.php -f
RewriteCond %{REQUEST_URI} !/$
RewriteRule (.*) $1\.php [L]


ErrorDocument 401 /errors/errors.php
ErrorDocument 404 /errors/errors.php
ErrorDocument 500 /errors/errors.php

你到底有什么问题?@starkeen year我的英语很差。。。我的问题是我需要它忽略第一个/en/以便它不要求文件或folder@starkeen无论如何,它需要将公用文件夹作为根目录,即使在/en/isset时也是如此。因此,如果我们以localhost/en/admin it go to public/adminOk为例,尝试将第一条规则的模式替换为^(?:en | it)/?(.*)$。@starkeen sweeet!!如何做到这一点,它可以处理的不仅仅是en和it?