私はドメインとウェブページを持っています。私は動的なウェブサイトを作成しようとしています。完了しましたが、自分のサーバー上で自分のSEOに優しいソリューションをローカルサーバー上で構成することはできません。これは私のPHPコードです:.htaccess mod_rewriteをlocalhostに設定する方法はありますか?
$host = '';
$base = '/something/';
$baselength = strlen($base);
$url = substr($_SERVER['REQUEST_URI'],$baselength);
$url = array_merge(array('path'=>''),parse_url($url));
$get = explode('/',$url['path']);
$_GET['oldalak'] = ($get) ? array_shift($get) : '';
$_GET['aloldal'] = ($get) ? array_shift($get) : '';
$oldal = isset($_GET['pages']) ? $_GET['pages'] : '';
$oldal = 'pages/'.basename($oldal).'.php';
$oldal = (file_exists($oldal)) ? $oldal : 'pages/kezdolap.php';
$aloldal = isset($_GET['services']) ? $_GET['services'] : '';
$aloldal = 'pages/services/'.basename($aloldal).'.php';
これは私の.htaccessコードです:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /something
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)(/([^/]+))? index.php?pages=$1&services=$3&%{QUERY_STRING}
</IfModule>
それは働きます!しかし、私は本当にこのコードが自分のサーバー上で動作するのか、私は何をすればよいのか分かりません。
私はすべてを試みました。私は自分のコードに変更しました。これは私の新しいコードです。
$host = 'http://something.hu';
$base = '';
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)(/([^/]+))? index.php?pages=$1&services=$3&%{QUERY_STRING}
</IfModule>
私のウェブページはサブディレクトリにないため、再書き込みの基本条件は問題ありません。 $base variable
と同じです。か否か? は、私がこれに変更しようとした:
$host = 'http://something.hu';
$base = 'http://something.hu';
私はそれが私のサービスプロバイダに取り組んできていない、何か他のものに変更してみました。これはなぜですか? ありがとう!
です。解決策が見つかりました。 $ host = "http://something.hu"; $ base = "/"; のみ/ !!!! このコードを使用すると、動作します! しかし、この間違った!!!! $ _GET ['aloldal'] =($ get)? array_shift($ get): '';いいえ! これは正しいです:$ _GET ['** services **'] =($ get)? array_shift($ get): '';この場合の ... –