私はこの壁で頭を叩いています。私はhtaccessファイル内に、すべてのURLで動作する書き換えルールを持っています。ここでラインRewriteRuleが特定のケースで動作しない
RewriteRule ^([a-zA-Z0-9_-]+)$ content.php?linkid=$1 [L]
そしてdomain.com/content.php?linkid=privacy-policy
に行くdomain.com/privacy-policy
ため
<IfModule mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine On
#RewriteRule ^contact-us content.php?linkid=contact-us [L,R]
RewriteRule ^([a-zA-Z0-9_-]+)$ content.php?linkid=$1 [L]
RewriteRule ^news/([a-zA-Z0-9_-]+)/([0-9]+)$ media.php?news=$1&pgNo=$2 [L]
RewriteRule ^news-details/([a-zA-Z0-9_-]+)$ media-detail.php?news_short=$1 [L]
RewriteRule ^services-list/([a-zA-Z0-9_-]+)$ services-list-new.php?services_list=$1 [L]
RewriteRule ^specialities/([a-zA-Z0-9_-]+)/([0-9]+)$ speciality-listing.php?speciality=$1&pgNo=$2 [L]
RewriteRule ^services-details/([a-zA-Z0-9_-]+)$ services.php?speciality_short=$1 [L]
RewriteRule ^treatment-detail/([a-zA-Z0-9_-]+)$ treatment-detail.php?treatment_short=$1 [L]
RewriteRule ^testimonial/([a-zA-Z0-9_-]+)/([0-9]+)$ testimonials.php?testimonial=$1&pgNo=$2 [L]
RewriteRule ^testimonial-detail/([a-zA-Z0-9_-]+)$ testimonial-detail.php?test_short=$1 [L]
RewriteRule ^photo-gallery-detail/([a-zA-Z0-9_-]+)$ photo-gallery-detail.php?photo_short=$1 [L]
RewriteRule ^media/([a-zA-Z0-9_-]+)/([0-9]+)$ media.php?media=$1&pgNo=$2 [L]
RewriteRule ^media-detail/([a-zA-Z0-9_-]+)$ media-detail.php?media_detail=$1 [L]
RewriteRule ^doctor-profile/([a-zA-Z0-9_-]+)$ doctor.php?doc_short=$1 [L]
RewriteRule ^make-an-appointment/([a-zA-Z0-9_-]+)$ make-an-appointmen.php?appointment_id=$1 [L]
RewriteRule ^current-openings/([a-zA-Z0-9_-]+)/([0-9]+)$ current-openings.php?current_opening=$1&pgNo=$2 [L]
</IfModule>
だから、この作品の完全htacessと証言、サービス、キャリアなど
をのようないくつかの他のだが、それはdoesnのcontact-usの仕事、つまりdomain.com/contact-us
私はさらにハードコードされたバージョンを試しました上のコメント行。どんなアイディアですか?
EDIT: 私は正常に動作しますが、domain.com/contact-us
は私にエラーを与える要求されたURL /コンタクト私たちは、このサーバー上に見つかりませんでしたURL domain.com/content.php?linkid=contact-us
を使用してみました。。
私はまた、動作していない別のURLを発見しました。これはと書かれています。要求されたURL /media.html/list/1はこのサーバ上に見つかりませんでした。 media.htmlの入手先はわかりません。ファイル構造にmedia.htmlという名前のファイルがありましたので、削除してリンクが機能し始めました。それは連絡先の場合には当てはまりません。
実際のディレクトリではありません。このウェブサイトはすべてのページを 'linkid'という一意の値でcontent.phpにリダイレクトして読み込みます。私はApacheの設定で何かを持っているとは思わないが、私はちょうどcpanelから知る方法がない、そう?私はまた、ページをロードするurl 'domain.com/linkid = contact-us'を入力しました。それはうまくいきません。 – VeeK
これは変ですが、あなたのコードを見ると、これらのルールは '/ contact-us'が動作しない理由ではありません。あなたは '/ contact-us'に対して404を取得していますか? – anubhava
'Options'行を' Options + FollowSymlinks -MultiViews'に変更してみてください – anubhava