1

我正在尝试为我的日历网站创建一个漂亮的 url。但我无法让它正常工作。

这是我的网址:

http://mydomain.com/admin/calendar?year=2013&month=november

...我希望它看起来像这样:

http://mydomain.com/admin/calendar/2013/november

“日历”文件夹不是真正的文件夹,.htaccess 文件位于 admin 文件夹中,而不是我网站的根目录中。

我目前正在使用此代码:

RewriteEngine On

# Make sure not to rewrite real files
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule .+ - [L]

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

# Make new URL
RewriteBase /admin/
RewriteRule ^([^/]*)/([^/]*)$ /admin/calendar/calendar?year=$1&month=$2 [L]

知道为什么这不起作用,以及如何使它起作用吗?:D

谢谢 :) TheYaXxE

4

2 回答 2

1

在您的文件中尝试以下代码admin/.htaccess

RewriteEngine On
RewriteBase /admin/

# Make sure not to rewrite real files
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]

# Make new URL
RewriteRule ^calendar/([^/]+)/([^/]*)/?$ calendar.php?year=$1&month=$2 [NC,L,QSA]

# Removes PHP extension
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteCond %{REQUEST_URI} !/$
RewriteRule ^(.+?)/?$ $1.php [L]
于 2013-11-11T13:56:56.517 回答
0

尝试这个:

RewriteRule ^([^/]+)/([^/]+)/$ /admin/calendar/calendar?year=$1&month=$2
于 2013-11-11T13:40:18.003 回答