Php .htaccess加载项域的url重写

Php .htaccess加载项域的url重写,php,.htaccess,web-hosting,addon-domain,Php,.htaccess,Web Hosting,Addon Domain,我有一个运行多个网站的网络主机。假设我有一个xyz.com,它是这个网站下的主网站,其他网站都作为附加域运行 就像我有另一个网站是xyz2.com,它是一个附加域。已创建与域xyz2.com对应的文件夹 现在的问题是我想添加一些。htaccess规则没有为根网站定义规则。我只想为xyz2.com添加属于加载域的规则 我已将.htaccess放入文件夹xyz2.com。这是我写的 RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} !^

我有一个运行多个网站的网络主机。假设我有一个xyz.com,它是这个网站下的主网站,其他网站都作为附加域运行

就像我有另一个网站是xyz2.com,它是一个附加域。已创建与域xyz2.com对应的文件夹

现在的问题是我想添加一些。htaccess规则没有为根网站定义规则。我只想为xyz2.com添加属于加载域的规则

我已将.htaccess放入文件夹xyz2.com。这是我写的

RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} !^(www\.)?xyz2.com\.com$ [NC]

RewriteCond %{THE_REQUEST} /find\.php\?source=([^\s&]+)&destination=([^\s&]+) [NC]
RewriteRule ^ %1-%2.html? [R=302,L,NE]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\s]+)-([^\s]+)?.html$ find.php?source=$1&destination=$2 [L,QSA]

这不起作用,我在谷歌上搜索了很多关于这个问题的信息,但没有任何建议起作用。请帮我把这个问题简短地说出来。

你可以试试这个规则

RewriteEngine On
RewriteBase /xyz2.com/

RewriteCond %{HTTP_HOST} !^(www\.)?xyz2\.com$ [NC]
RewriteRule ^ - [L,R=404]

RewriteCond %{THE_REQUEST} /find\.php\?source=([^\s&]+)&destination=([^\s&]+) [NC]
RewriteRule ^ %1/%2? [R=302,L,NE]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/([^/]+)/?$ find.php?source=$1&destination=$2 [L,QSA]

,我正在为此url编写规则。不,它工作正常,但它保持不变,没有应用重写规则未找到请求的url/未在此服务器上找到。此外,尝试使用ErrorDocument处理请求时遇到500内部服务器错误。您能检查anubhava出了什么问题吗。我已经对您的htaccess进行了一些更改,现在它正在工作,但现在的形式是这样的,请查看我的实际帖子,了解我所做的更改。我想删除%2C+到-,我该怎么做?是的,因为数据包含逗号,并且这些是动态URL。我不允许使用注释部分提供长时间的支持,但如果数据库中的数据包含逗号,则必须保持其原样。