0

更新 - mod_rewrite の失敗がより明確になりました。Apache では、構成ファイルに次の設定があります。

  LoadModule rewrite_module modules/mod_rewrite.so

  DocumentRoot "C:/mywebdev/apache/www"
  RewriteEngine On
  Include conf/extra/httpd-vhosts.conf

  <Directory "C:/mywebdev/apache/www">
  Options Indexes FollowSymLinks
  AllowOverride None
  Order allow,deny
  Allow from All
  </Directory>

vhosts構成に次のものがあります

  <Directory "C:/mywebdev/apache/www/test">
  Options Indexes FollowSymLinks
  AllowOverride None
  Order allow,deny
  Allow from All
  </Directory>

 <Directory "C:/mywebdev/apache/www/test/.htaccess">
  Options Indexes FollowSymLinks
  AllowOverride None
  Order allow,deny
  Allow from All
  </Directory>

  NameVirtualHost *:80

  <VirtualHost *:80>
  DocumentRoot C:/mywebdev/apache/www/test
  ServerName www.test.me
  ServerAlias test.me *.test.me
  LoadModule rewrite_module modules/mod_rewrite.so
  <IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteCond %{REQUEST_URI} !^/library/
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule . /index.php [L]
  </IfModule>
  </VirtualHost>

.htaccess ファイルには、次のものがあります。

  <IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteCond %{REQUEST_URI} !^/library/
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule . /index.php [L]
  </IfModule>

私はそれがやり過ぎであることを知っていますが、それは私が何をしてもうまくいかないことを示すためです. mod_rewrite.so が modules フォルダーにあるかどうかを確認しましたが、そこにあります。モジュールは、これまたは私が使用しようとした他の mod_rewrite ルールでは機能しません。私が読んだことから、これはうまくいくはずです。ご協力いただきありがとうございます。

4

2 に答える 2

1

よくわかりませんが、内容は次のとおりです。

  RewriteEngine On
  RewriteCond %{REQUEST_URI} !^/library/
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule . /index.php [L]

.htaccessそのフォルダー内のファイルに移動する必要があります。私が間違っている場合は修正してください。

于 2012-09-30T17:38:46.593 に答える
1

この間に書き換えコードを挿入します

<IfModule mod_rewrite.c>CODE</IfModule>
于 2012-09-30T17:42:47.993 に答える