Apache 如果没有文件,请重写URL
我有两个.htaccess文件需要合并成一个 第一个是一个简单的文件扩展名删除程序 第二个重写所有请求,以转到第三方应用程序,保留我们的URL 我需要的是让规则足够智能,如果文件存在于第一台服务器上,就不会查看第二台服务器 规则1:Apache 如果没有文件,请重写URL,apache,.htaccess,url-rewriting,Apache,.htaccess,Url Rewriting,我有两个.htaccess文件需要合并成一个 第一个是一个简单的文件扩展名删除程序 第二个重写所有请求,以转到第三方应用程序,保留我们的URL 我需要的是让规则足够智能,如果文件存在于第一台服务器上,就不会查看第二台服务器 规则1: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}\.php -f RewriteRule ^(.*)$ $1.php 规则2: Options
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
规则2:
Options +FollowSymLinks +Indexes
RewriteEngine on
RewriteRule ^(.*)$ http://third.party.com/$1 [P]
# RewriteCond %{THE_REQUEST}([^?\ ]+)
# RewriteRule ^.*$ index.php/%1
我远离.htaccess向导,所以我会全神贯注地听取建议。您可以添加L标志以停止在给定规则下重写。例如:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php [L]
RewriteRule ^(.*)$ http://third.party.com/$1 [P]
# RewriteCond %{THE_REQUEST}([^?\ ]+)
# RewriteRule ^.*$ index.php/%1
请参阅(搜索“停止重写过程”)。那么您希望一个规则适用于一个站点,另一个适用于另一个站点吗?如果是,您可以使用RewriteCond%{HTTP_HOST}指令来限制其范围