【发布时间】:2020-04-21 14:31:16
【问题描述】:
我上传到网络服务器的 .htaccess 文件在 localhost(wamp 服务器)上运行良好,但没有像我希望的那样工作。
这是我的代码:
RewriteEngine On
RewriteRule ^IMPRESSUM about.php [NC,L]
RewriteRule ^HOME welcome.php [NC,L]
RewriteRule ^LOGIN login.php [NC,L]
RewriteRule ^LOGOUT logout.php [NC,L]
RewriteRule ^SIGNUP register.php [NC,L]
RewriteRule ^([a-zA-Z]*)$ /index.php?param1=$1 [NC,L]
RewriteRule ^user/(.*)$ /account.php?param2=$1 [NC,L]
代码的目的应该是不用输入文件扩展名(“/home”而不是“/home.php”)就可以访问php文件。但是,如果用户输入的不是文件名,例如“/something”,则它应该与“/index?param1=something”相同。
在它不起作用后,我尝试了许多我在互联网上找到的解决方案。例如我试过:
RewriteEngine On
RewriteBase /
RewriteRule ^IMPRESSUM about.php [NC,L]
RewriteRule ^HOME welcome.php [NC,L]
RewriteRule ^LOGIN login.php [NC,L]
RewriteRule ^LOGOUT logout.php [NC,L]
RewriteRule ^SIGNUP register.php [NC,L]
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} -f
RewriteRule ^(.+)$ /$1.php [NC,L]
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-f
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z]*)$ /index.php?param1=$1 [NC,L]
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-f
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-d
RewriteRule ^user/(.*)$ /account.php?param2=$1 [NC,L]
我希望有人知道我的问题的解决方案。 亲切的问候。
【问题讨论】:
标签: .htaccess mod-rewrite server url-rewriting localhost