之前在 Stack Over flow 上发布了一个问题,很幸运地在我最初的问题上得到了一些帮助,这有助于我更好地理解我想要实现的目标。
上一个问题在这里: 访问 php url 缩短
我正在构建一个系统,用户可以在其他网站上共享他们的个人资料,所以我想知道是否可以缩短实际的 url,这将提供指向他们个人资料的链接,如下所示,www.somedomain.com/users/profile.php?user=myusername 简单地剪切用户文件夹和个人资料页面,如下所示: www.somedomain.com/myusername
我的代码是:
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule /(.*) /users/profile.php?user=$1
可悲的是发生了两件事,首先代码不起作用,其次当我添加此代码时,原始长域上的 css 停止工作。
任何建议将不胜感激
code doesn't work
:当然不会,因为它不正确。真的很想知道你是如何在没有正确测试的情况下接受其他问题的。无论如何,请获取此代码并替换您现有的 .htaccess 代码:
RewriteEngine On
RewriteBase /
RewriteRule ^index.php/?$ - [NC,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.*)$ users/profile.php?user=$1 [L,QSA,NC]
这是服务器故障问题。
- 您正在运行的阿帕奇吗?
-
是否启用了 Apache mod_rewrite模块?
Debian: a2enmod rewrite;/etc/init.d/apache2 restart
-
是否为此目录启用了覆盖?如果使用默认虚拟主机:
<Directory /var/www/> #AllowOverride None AllowOverride FileInfo </Directory>
-
什么显示错误.log?tail/var/log/apache2/error.log
-
尝试简单版本:
法典:
RewriteEngine On
RewriteBase /
RewriteRule ^profile.php profile.php [QSA,L]
RewriteRule ^(.*)$ profile.php?user=$1 [QSA,L]