url重定向简单方法

您有三个选择

选择A:只修改HTML + 简化的Apache配置(推荐)

修改HTML

 

 

html

<!-- 从 -->
<form action="/cgi-bin/Artocarpus/searchGenome.cgi" method="post">
<!-- 改为 -->
<form action="/Artocarpus/searchGenome" method="post">

简化的Apache配置(只需要内部重写,不需要重定向):

 

 

apache

<VirtualHost *:80>
ServerName morac.ficusgd.com
DocumentRoot /var/www/html

ScriptAlias /cgi-bin/ /var/www/cgi-bin/

RewriteEngine On

# 只需要这一条规则:简洁URL执行CGI
RewriteCond %{REQUEST_URI} !\.htm$
RewriteCond %{REQUEST_URI} !\.html$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/Artocarpus/([^/]+)$ /var/www/cgi-bin/Artocarpus/$1.cgi [L,QSA]

<Directory "/var/www/html/Artocarpus">
Options Indexes FollowSymLinks
Require all granted
</Directory>

<Directory "/var/www/cgi-bin/Artocarpus">
Options +ExecCGI
SetHandler cgi-script
Require all granted
</Directory>
</VirtualHost>

优点

  • ✅ 没有重定向,零性能损失
  • ✅ 配置简单
  • ✅ 浏览器地址栏显示简洁URL