.htaccess 使用htaccess重写子目录中的文件名会出现错误404

5cnsuln7  于 2022-11-25  发布在  其他
关注(0)|答案(1)|浏览(140)

我在Apache服务器上做一个简单的html/css网站
我用htaccess文件将主目录中所有文件的url从www.mydomain.com/about.html更改为www.mydomain.com/a-propos-de-nous

Options +FollowSymlinks 
RewriteEngine On 
RewriteRule a-propos-de-nous /about.html

它的工作完美!
但是当我尝试对子目录/en中的文件执行相同的操作时,它会显示错误404:我在子目录/en中创建了一个新文件(en.htaccess),文件内容为:

Options +FollowSymlinks 
RewriteEngine On
RewriteBase /en/
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule about-us /en/about.html [L]

我期望www.mydomain.com/about-us工作,但它给了我错误404。
但我总是404错误,我错过了什么?
多谢帮忙

mepcadol

mepcadol1#

请尝试将您的htaccess规则文件更改为以下格式一次。请确保在测试URL之前清除浏览器缓存。

RewriteOptions InheritBefore

Options +FollowSymlinks 
RewriteEngine On
RewriteBase /en/
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule about-us en/about.html [L]

相关问题