Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache 使用.htaccess重定向_Apache_.htaccess - Fatal编程技术网

Apache 使用.htaccess重定向

Apache 使用.htaccess重定向,apache,.htaccess,Apache,.htaccess,在我的服务器根目录中有一个名为“repos”的目录。 我想请求“server name/repos/identifier”来调用“repos/index.php?id=identifier”,其中identifier是用户可以选择的 如何使用.htaccess实现这一点?您可以将以下规则放在文档根目录中: RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d Rewrite

在我的服务器根目录中有一个名为“repos”的目录。 我想请求“server name/repos/identifier”来调用“repos/index.php?id=identifier”,其中identifier是用户可以选择的


如何使用.htaccess实现这一点?

您可以将以下规则放在文档根目录中:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/?repos/(.*)$ /repos/index.php?id=$1 [L,QSA]
或者,如果您希望将规则放入
/repos
目录中的htaccess文件中:

RewriteEngine On
RewriteBase /repos/
RewriteRule ^(.*)$ index.php?id=$1 [L,QSA]
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^repos/(.+) /repos/index.php?id=$1

您可以将这些规则放入根目录中的
.htaccess
文件中:

RewriteEngine On
RewriteBase /repos/
RewriteRule ^(.*)$ index.php?id=$1 [L,QSA]
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^repos/(.+) /repos/index.php?id=$1

QSA带来了所有的不同。