.htaccess RewriteMod 在 XAMPP 中无法正常工作
.htaccess RewriteMod not working correctly in XAMPP
我刚刚在 XAMPP“3.2.4”的本地主机中为 make prubes 设置了一个 .htaccess 文件。
此 .htaccess 设置在我的网站上运行良好,但在本地主机上不起作用。
httpd.conf:
LoadModule rewrite_module modules/mod_rewrite.so
# Is activated
所有“AllowOverride”设置为全部
.htaccess:
Options -MultiViews
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ .php
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule ^(.*)$ .html
RewriteCond %{REQUEST_FILENAME}\.css -f
RewriteRule ^(.*)$ .css
RewriteCond %{REQUEST_FILENAME}\.js -f
RewriteRule ^(.*)$ .js
RewriteCond %{REQUEST_FILENAME}\.jpg -f
RewriteRule ^(.*)$ .jpg
RewriteCond %{REQUEST_FILENAME}\.png -f
RewriteRule ^(.*)$ .png
RewriteCond %{REQUEST_FILENAME}\.gif -f
RewriteRule ^(.*)$ .gif
RewriteRule ^item/([\w-]+)/?$ product.php?id= [L,QSA,NC]
RewriteRule ^error/([\d-]+)/?$ error.php?code= [L,QSA,NC]
RewriteRule ^sitemap.xml sitemap.php [QSA,L,NC]
ErrorDocument 400 http://localhost/shop/error/400
ErrorDocument 401 http://localhost/shop/error/401
ErrorDocument 403 http://localhost/shop/error/403
ErrorDocument 404 http://localhost/shop/error/404
ErrorDocument 410 http://localhost/shop/error/410
ErrorDocument 500 http://localhost/shop/error/500
我觉得一切都设置好了,但我不知道为什么在本地不起作用
我的 .htaccess 位于项目的根目录中,如果我写类似“sdlkfjlkdsjflksdjf”的内容,它会显示 500 内部错误,这意味着 .htaccess 已被读取。
好的,抱歉,算了,问题出在 RewriteBase 位置
我刚刚在 XAMPP“3.2.4”的本地主机中为 make prubes 设置了一个 .htaccess 文件。 此 .htaccess 设置在我的网站上运行良好,但在本地主机上不起作用。
httpd.conf:
LoadModule rewrite_module modules/mod_rewrite.so
# Is activated
所有“AllowOverride”设置为全部
.htaccess:
Options -MultiViews
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ .php
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule ^(.*)$ .html
RewriteCond %{REQUEST_FILENAME}\.css -f
RewriteRule ^(.*)$ .css
RewriteCond %{REQUEST_FILENAME}\.js -f
RewriteRule ^(.*)$ .js
RewriteCond %{REQUEST_FILENAME}\.jpg -f
RewriteRule ^(.*)$ .jpg
RewriteCond %{REQUEST_FILENAME}\.png -f
RewriteRule ^(.*)$ .png
RewriteCond %{REQUEST_FILENAME}\.gif -f
RewriteRule ^(.*)$ .gif
RewriteRule ^item/([\w-]+)/?$ product.php?id= [L,QSA,NC]
RewriteRule ^error/([\d-]+)/?$ error.php?code= [L,QSA,NC]
RewriteRule ^sitemap.xml sitemap.php [QSA,L,NC]
ErrorDocument 400 http://localhost/shop/error/400
ErrorDocument 401 http://localhost/shop/error/401
ErrorDocument 403 http://localhost/shop/error/403
ErrorDocument 404 http://localhost/shop/error/404
ErrorDocument 410 http://localhost/shop/error/410
ErrorDocument 500 http://localhost/shop/error/500
我觉得一切都设置好了,但我不知道为什么在本地不起作用
我的 .htaccess 位于项目的根目录中,如果我写类似“sdlkfjlkdsjflksdjf”的内容,它会显示 500 内部错误,这意味着 .htaccess 已被读取。
好的,抱歉,算了,问题出在 RewriteBase 位置