McGregor left Rangers after he refused to transfer his contract over to the Rangers newco headed up by Charles Green.
Besiktas, finished fourth in the Turkish top league last season, are banned from European competition for the coming season after the club lost their appeal to the Court of Arbitration for Sport after they were deemed by UEFA to have breached club licensing regulations for failing to meet payments due for transfer fees, wages and taxes by March 2011.
McGregor’s move will be subject to international clearance to complete the signing, with FIFA set to rule on the issue. The Scottish FA have so far refused to approve the transfers of the other former Rangers players as Charles Green has challenged their right to walk away from the club.
McGregor has made 275 appearances for Rangers since joining the club as a youth player in 1998 and has been capped 21 times by Scotland.