2

我正在尝试使用 htaccess 进行一些 URL 重写,但有点挣扎。基本上我正在尝试使用以下 URL:

http://www.example.com/[页面名称]

并显示位于以下位置的文件的内容:

http://www.example.com/site/[页面名称].php

我在网上搜索过,但找不到有效的东西。

我的 htaccess 文件如下所示:

Redirect 301 /page http://www.example.com
Redirect 301 /privacy http://www.example.com/site/privacy.php
Redirect 301 /EULA http://www.example.com/site/EULA.php
Redirect 301 /etiquette http://www.example.com/site/etiquette.php

ErrorDocument 404 /site/404.php
# Rewrite non-www to www
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]

一旦我弄清楚我的问题,就不需要顶部的重定向。

有什么帮助吗?

4

1 回答 1

2

This should be your complete .htaccess:

Options +FollowSymLinks -MultiViews

ErrorDocument 404 /site/404.php

Redirect 301 /page http://www.example.com
Redirect 301 /privacy http://www.example.com/site/privacy.php
Redirect 301 /EULA http://www.example.com/site/EULA.php
Redirect 301 /etiquette http://www.example.com/site/etiquette.php

# Rewrite non-www to www
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{DOCUMENT_ROOT}/site/$1.php -f
RewriteRule ^(.*)$ /site/$1.php [L]
于 2013-08-01T10:35:39.227 回答